Je bedrijfsvoorraad in één keer aanleveren

Alleen voor actieve zakelijke accounts met bevestigd e-mailadres. Laat de beheerder jouw voorraadkoppeling aanmaken en inschakelen. Daarna kun je XML, CSV of de voorraad-API gebruiken voor alle sub-subcategorieën en types.

Naar bedrijfsvoorraad

Zo begin je

  1. Zoek de juiste categorie in de importpagina. Gebruik het volledige pad, bijvoorbeeld de passende fietssoort of boekensoort.
  2. Download daar het CSV- of XML-voorbeeld: het juiste categoryId staat al ingevuld.
  3. Vervang de voorbeeldgegevens en fotolinks door je eigen producten. Gebruik UTF-8, maximaal 1.000 artikelen en 8 MB per bestand.
  4. Kies Bestand controleren. Bekijk welke advertenties nieuw worden, veranderen of verdwijnen. Een controle slaat niets op.
  5. Is het overzicht goed? Kies Bestand verwerken. Normale foto-eisen, looptijden en eventuele plaatsingskosten blijven gelden.

Velden per artikel

VeldAanleveren
externalIdEen vast, uniek eigen voorraadnummer, bijvoorbeeld FIETS-001. Letters, cijfers, punt, streepje en underscore. Hergebruik hetzelfde nummer bij wijzigingen.
categoryIdHet exacte ID van de sub-subcategorie of het type uit de zoekfunctie. Je mag verschillende categorieën in hetzelfde bestand gebruiken.
titleProducttitel, 3 tot 120 tekens.
descriptionOmschrijving in gewone tekst, 5 tot 5.000 tekens. Noem merk, model, maat, staat, werking, gebreken en meegeleverde onderdelen. Geen verzonnen eigenschappen. Gebruik websitevermeldingen via websiteUrl.
priceVraagprijs in euro, bijvoorbeeld 49.95 of 49,95. Geen euroteken of duizendtalscheiding.
photosMaximaal 20 openbare HTTPS-fotolinks. De eerste foto is de hoofdfoto. De categorie kan een minimumaantal foto's vereisen.
location / postcodePlaats en postcode. Als deze leeg zijn, worden de accountgegevens gebruikt waar beschikbaar.
deliverypickup (ophalen), shipping (verzenden) of both (beide). Standaard pickup.
statusavailable (aanbieden), sold (verkocht) of withdrawn (uit aanbod). Bij sold of withdrawn zijn externalId en status genoeg.
showPhone / offersAllowedOptionele keuzevelden: true/false of ja/nee.
websiteUrlOptionele bedrijfswebsite. Een betaalde websitevermelding wordt pas zichtbaar na betaling.
Auto'sKilometerstand (mileage) is verplicht voor auto's; bijvoorbeeld 120000. Optioneel: year, plate, brand, model, fuel, transmission, color en overige bestaande autovelden. Voor boeken of fietsen is geen kilometerstand nodig.

Foto's correct aanleveren

Gebruik directe links naar je eigen afbeeldingsbestanden, bijvoorbeeld https://jouw-bedrijf.nl/fotos/FIETS-001-1.jpg. De link moet zonder inloggen bereikbaar blijven; een link naar een productpagina, lokaal bestand of besloten deelmap werkt niet als foto. Gebruik eigen foto's waarvoor je publicatierechten hebt. Bewaar ze op je eigen website of voorraadplatform: de import kopieert de bestanden niet naar .

In CSV scheid je meerdere fotolinks met |. In XML gebruik je voor elke foto een <photo> binnen <photos>. Elke link mag maximaal 400 tekens bevatten. Gebruik HTTPS en een openbare domeinnaam. Als je foto's verhuist of verwijdert, pas je de feed aan.

CSV-voorbeeld

Vervang CATEGORIE-ID door het ID uit de importpagina en de fotolinks door werkende links. Download liever het categoriegebonden voorbeeld. CSV ondersteunt komma's of puntkomma's. Zet tekst met scheidingstekens of regelovergangen tussen dubbele aanhalingstekens. Een aanhalingsteken in de tekst schrijf je dubbel.

externalId;categoryId;title;description;price;photos;delivery;status
FIETS-001;CATEGORIE-ID;Stadsfiets dames 54 cm;"Gebruikte stadsfiets. Remmen en verlichting werken. Kras op spatbord. Inclusief slot.";175.00;https://jouw-bedrijf.nl/fotos/fiets-1.jpg|https://jouw-bedrijf.nl/fotos/fiets-2.jpg;pickup;available

XML-voorbeeld

Gebruik <stock> met per artikel een <item>. De bestaande <vehicle>-vorm voor auto's blijft ondersteund. Schrijf bijzondere XML-tekens correct, bijvoorbeeld &amp; voor een & in een omschrijving of fotolink. Een CDATA-blok kan voor omschrijvingen worden gebruikt. DTD en externe entiteiten zijn niet toegestaan.

<?xml version="1.0" encoding="UTF-8"?>
<stock>
  <item>
    <externalId>BOEK-001</externalId>
    <categoryId>CATEGORIE-ID</categoryId>
    <title>Vervang door boektitel en auteur</title>
    <description>Paperback, gebruikt. Lichte slijtage aan de kaft, alle pagina's aanwezig.</description>
    <price>12.50</price>
    <photos>
      <photo>https://jouw-bedrijf.nl/fotos/boek-1.jpg</photo>
      <photo>https://jouw-bedrijf.nl/fotos/boek-2.jpg</photo>
    </photos>
    <delivery>both</delivery>
    <status>available</status>
  </item>
</stock>

Bijwerken en automatische feeds

Een gelijk externalId binnen jouw koppeling werkt de bestaande advertentie bij. Gewijzigde prijzen, omschrijvingen en foto's worden verwerkt zonder een extra advertentie te maken. Gebruik de optie volledige voorraad alleen wanneer het bestand echt je hele gekoppelde voorraad bevat: ontbrekende voorraadnummers worden dan verborgen. Laat deze optie uit bij losse aanvullingen. Een lege volledige voorraad verbergen vereist apart toestemming. Handmatig gepauzeerde advertenties blijven beschermd.

Voor automatisch ophalen geef je een directe openbare HTTPS-link naar je XML/CSV-feed op. De hostingtaak moet actief zijn om ieder uur te kunnen ophalen. Een openbare feed kan door anderen gelezen worden: zet er geen geheime klantgegevens in.

Voor je voorraadsoftware of webbouwer

Gebruik POST /api/dealer-stock/preview om te controleren en POST /api/dealer-stock/import om te verwerken. Authenticatie: Authorization: Bearer JOUW-VOORRAADSLEUTEL. Content-Type: application/json. De sleutel geldt alleen voor jouw zakelijke voorraadkoppeling; deel hem niet openbaar.

{
  "items": [{
    "externalId": "ART-001",
    "categoryId": "CATEGORIE-ID",
    "title": "Vervang door producttitel",
    "description": "Vervang door volledige omschrijving en staat.",
    "price": 49.95,
    "photos": ["https://jouw-bedrijf.nl/fotos/art-001.jpg"],
    "delivery": "pickup",
    "status": "available"
  }],
  "complete": false,
  "allowEmpty": false
}

De bestaande vehicles-lijst blijft werken. Je kunt ook format (xml/csv) en content aanleveren. Stuur na de controle de teruggegeven stateHash mee als expectedStockStateHash bij import, zodat een tussentijdse wijziging tot een nieuwe controle leidt.