Naar de inhoud
SyncMyShop

Voorraad en beschikbaarheid

Veiligheidsvoorraad en buffers per kanaal: nooit het laatste stuk twee keer verkopen

Elk verkoopkanaal krijgt een eigen getal: de vrije voorraad min de buffer van dat kanaal, uitgerekend per artikelgroep. De koppeling legt die regels vast, trekt ze op één plek af en laat per run zien welke artikelen door de buffer op nul staan.

Eén woord, twee getallen

Veiligheidsvoorraad betekent in het ERP iets anders dan in de webshop. In Exact Online staat per artikel en per magazijn een veld SafetyStock: de minimale hoeveelheid die je op voorraad wilt hebben. Daarnaast staat ReorderPoint, het aantal waarbij je bijbestelt. Beide zijn getallen voor inkoop. Ze zeggen wanneer er besteld moet worden en niets over wat een klant mag kopen.

In de webshop is de buffer het aantal stuks dat een kanaal minder ziet dan er vrij is. Shopify heeft er een eigen voorraadtoestand voor, safety_stock: stuks die fysiek aanwezig zijn en apart staan om dubbele verkoop te voorkomen.

Een koppeling die het ene veld in het andere zet, maakt een fout die geen melding geeft. Artikel 10482 heeft in het ERP een veiligheidsvoorraad van 40, afgestemd op een levertijd van 10 werkdagen. Gaat die 40 als buffer naar de webshop, dan toont de webshop bij 88 stuks vrij nog 48 en staat het artikel bij 40 stuks vrij op nul.

Het aantal instellingen groeit met de kanalen. Eén webshop met 200 artikelen is met één vaste buffer te overzien. 4.000 artikelen op drie kanalen zijn 12.000 combinaties van artikel en kanaal. Die stel je niet per stuk in. Het worden regels per artikelgroep en per kanaal, en de koppeling rekent ze uit. Het begrip zelf staat op de pagina over voorraad en beschikbaarheid; hier gaat het om de regels.

Hoe werkt het?

De koppeling rekent per kanaal: vrije voorraad min buffer, en daarna de drempel. De uitkomst is nooit lager dan nul. Voor artikel 10482 met 88 stuks vrij in magazijn Zwolle krijgt de webshop 86 en de marktplaats 83.

Hoe groot de buffer is

Een buffer dekt wat er op de andere kanalen wordt verkocht tussen twee standen. De som is verkoop per uur maal de tijd tussen twee rondes.

Artikelgroep Verkoop op de drukste dag Tijd tussen twee standen Verkocht in die tijd Regel
Snellopers 24 per uur 5 minuten 2 buffer 2, of 4 als één ronde mag uitvallen
Middengroep 2 per uur 5 minuten 0,17 buffer 1, voor telverschillen
Langzaam 1 per week 5 minuten vrijwel 0 buffer 0
Leveranciersvoorraad onbekend 12 uur onbekend drempel 3

De snelloper: 24 per uur maal 5 minuten gedeeld door 60 is 2 stuks per ronde. Gaat de stand direct na elke order door, dan wordt de tijd tussen twee standen seconden en de buffer kleiner. Stuurt de bron geen webhook en loopt de ronde elk kwartier, dan is het 24 maal 15 gedeeld door 60 is 6.

Een buffer van 2 tussen twee rondes van 5 minuten Om 10:00 zijn er 4 stuks vrij. De webshop verkoopt er 2, om 10:01 en 10:03. De marktplaats krijgt pas om 10:05 een nieuwe stand. Zonder buffer toont de marktplaats al die tijd 4 en past een order van 3 stuks om 10:04 niet: 1 stuk te veel. Met een buffer van 2 toont de marktplaats 2 en past de order van 2 stuks precies. Vrije voorraad in het WMS 4 vrij weborder: 3 vrij weborder: 2 vrij Marktplaats zonder buffer toont 4 order van 3: 1 te veel Marktplaats met buffer 2 toont 2 order van 2: past toont 0 10:00 10:01 10:02 10:03 10:04 10:05 10:06 De buffer dekt wat er tussen twee rondes op een ander kanaal wordt verkocht: 2 stuks in 5 minuten.
Tussen twee rondes verkoopt de webshop 2 stuks. Een buffer van 2 op de marktplaats is precies dat verschil.

Buffer of drempel

Een buffer trekt een vast aantal af. Een drempel zet alles onder een aantal op nul en laat de rest ongemoeid.

Vrije voorraad Met buffer 2 Met drempel 3
88 86 88
10 8 10
3 1 3
2 0 0
1 0 0

De buffer hoort bij eigen voorraad die je zelf telt. De drempel hoort bij voorraad die je van een ander krijgt. Een leverancier die twee keer per dag een bestand stuurt met 2 stuks, heeft die 2 stuks misschien al verkocht voordat het bestand binnen is. Bij 400 stuks maakt het uur van het bestand niets uit, en daar hoeft dus niets af. Hoe leveranciersvoorraad naast je eigen telling staat, lees je bij voorraad van je leverancier koppelen.

Waar de regels staan

De regels staan in de koppeling en niet verspreid over de systemen. Per artikelgroep ziet dat er zo uit:

{
  "artikelgroep": "snellopers",
  "bron": "Magazijn Zwolle",
  "kanalen": {
    "webshop":     { "buffer": 2, "drempel": 0 },
    "marktplaats": { "buffer": 5, "drempel": 0 },
    "b2b-portaal": { "buffer": 0, "drempel": 0 }
  },
  "uitzondering": [
    { "sku": "10482", "kanaal": "marktplaats", "buffer": 8, "tot": "2026-12-31" }
  ]
}

Het B2B-portaal heeft buffer 0: een vaste afnemer die het laatste stuk bestelt en een dag moet wachten, bel je op. De uitzondering is een tijdelijke hogere buffer voor één artikel in de drukste weken. Hij loopt af op de einddatum en hoeft niet met de hand te worden teruggezet.

Bijna op gaat eerst

De kans op dubbele verkoop zit bij de artikelen die bijna op zijn. Van 300 gewijzigde standen in een ronde gaan de artikelen met minder dan bijvoorbeeld 5 stuks vrij daarom als eerste naar de kanalen. Een artikel dat van 240 naar 234 gaat, kan een ronde wachten. Een artikel dat van 3 naar 1 gaat niet.

Meer tonen dan er ligt

De omgekeerde regel bestaat ook. Een artikel met een vaste aanvoer staat op nul en heeft een inkooporder van 240 stuks met leverdatum 14 oktober. Een regel kan een deel daarvan bestelbaar maken, bijvoorbeeld 25%: 60 stuks, met de datum erbij. Dat is geen buffer meer en loopt via backorders.

Wat er stil misgaat

Geen van deze fouten geeft een melding. De run slaagt en het kanaal toont een getal.

Wat er gebeurt Voorbeeld Gevolg
De ERP-veiligheidsvoorraad wordt de kanaalbuffer SafetyStock 40 gaat van 88 af 48 in de webshop, en op nul bij 40 stuks vrij
De buffer gaat er twee keer af de koppeling schrijft 88 min 2 is 86, en de webshop heeft zelf een drempel van 2 de laatste 2 van de 86 zijn ook niet te koop: de werkelijke buffer is 4
De som komt onder nul 1 vrij min buffer 2 is min 1 zonder ondergrens gaat min 1 naar het kanaal; de koppeling schrijft nul
Eén buffer voor alle artikelen buffer 5 op een assortiment waarvan 1.300 van de 4.000 artikelen 5 stuks of minder hebben 32,5% van het assortiment staat op elk kanaal op nul
De buffer staat op de set en op de onderdelen set van 1 pomp en 2 koppelstukken, alle drie met buffer 2 de set zakt verder dan de regel bedoelt
Een locatie die niet meetelt krijgt toch een buffer winkel Utrecht, 10 stuks, buffer 2 8 stuks tellen mee die niet mee horen te tellen

De tweede rij ontstaat wanneer een bestaande koppeling wordt vervangen. De oude instelling in het platform blijft staan en de nieuwe koppeling trekt de buffer ook af. Bij de eerste run staat daarom per kanaal op welke plek de buffer wordt afgetrokken, en dat is één plek. De uitwerking voor sets staat bij bundels en samengestelde artikelen, die voor locaties bij voorraad uit meerdere magazijnen.

Wat je ermee regelt

  • Een buffer per kanaal. De webshop ziet 86, de marktplaats 83, het B2B-portaal 88, uit dezelfde vrije voorraad.
  • Een regel per artikelgroep. Snellopers buffer 2, langzame artikelen buffer 0, restpartijen altijd tot het laatste stuk.
  • Een drempel per leverancier. Alles onder 3 stuks in het bestand van leverancier A gaat als nul door.
  • Tijdelijke uitzonderingen met een einddatum. Buffer 8 op één artikel tot 31 december, daarna geldt de regel van de groep weer.
  • Zicht op wat de buffer kost. Na elke run staat erbij hoeveel artikelen door buffer of drempel op nul staan, bijvoorbeeld 310 van de 4.000.

Een nieuwe regel draait eerst droog. De dry run laat zien welke artikelen van getal veranderen voordat een kanaal iets merkt.

Met welke systemen

Elk platform heeft een eigen veld dat op een buffer lijkt. De koppeling gebruikt het, of zet het bewust op nul.

Systeem Veld of instelling Wat het doet
Shopify toestand safety_stock, per artikel en locatie telt mee in on_hand en niet in available; verplaatsen gaat met inventoryMoveQuantities
WooCommerce instelling "Out of stock threshold" bij dit aantal krijgt een product de status niet op voorraad; het is een instelling van de winkel
Magento "Out-of-Stock Threshold" een positief getal zonder naleveringen; met naleveringen een negatief getal, bijvoorbeeld min 50
Exact Online SafetyStock en ReorderPoint op inventory/ItemWarehouses minimum en bestelpunt voor inkoop, in de pakketten voor handel en productie
Picqer freestock per magazijn, webhook products.free_stock_changed de vrije voorraad waar de buffer van afgaat
bol servicenorm annuleringen hoogstens 2% van de bestelde artikelen per week, gemeten vanaf 3 annuleringen

Twee gevolgen. De toestand safety_stock in Shopify geldt per locatie en dus voor alle verkoopkanalen die uit die locatie putten. Een verschil tussen de eigen webshop en een marktplaats rekent de koppeling uit. En de norm van bol geeft de buffer op dat kanaal een maat: bij 400 bestelde artikelen in een week zijn 8 annuleringen 2%. De negende brengt het percentage op 2,25% en levert een strike op.

De velden zijn op 3 oktober 2026 nagelezen in de documentatie van Shopify, Exact Online, WooCommerce, Adobe Commerce en Picqer, de norm op het partnerplatform van bol. Per systeem: Shopify, WooCommerce, Magento, Exact Online, Picqer en bol.

Wat een standaardkoppeling hier niet doet

Standaardkoppelingen en koppelplatformen kennen de buffer als één instelling: een vast aantal dat van elke stand afgaat, voor elk artikel en elk kanaal hetzelfde. Dat is de vierde rij uit de tabel hierboven. Een buffer van 5, gekozen voor de marktplaats, haalt in het voorbeeld 1.300 artikelen ook uit de eigen webshop.

Wat ontbreekt is de regel: per kanaal een ander getal, per artikelgroep een andere som, een drempel voor leveranciersvoorraad en een uitzondering met een einddatum. Ook het overzicht ontbreekt. Een vaste aftrek laat niet zien welke artikelen erdoor op nul staan, en een artikel dat een week op nul staat met 2 stuks in het rek valt niemand op.

De koppeling die wij bouwen legt de regels vast zoals jij ze opgeeft, draait ze bij elke ronde en bewaart per run wat er is afgetrokken en waarom. Verandert een platform zijn voorraadmodel, dan passen wij de koppeling aan. Vertel op welke kanalen je verkoopt en waar je voorraad staat, dan hoor je welke regels daarbij passen.

Veelgestelde vragen

Hoeveel buffer is verstandig?

Zoveel als er tussen twee standen op de andere kanalen wordt verkocht. Een artikel dat op de drukste dag 24 keer per uur verkoopt en een kanaal dat elke 5 minuten een nieuwe stand krijgt: 24 maal 5 gedeeld door 60 is 2 stuks. Een artikel dat één keer per week verkoopt heeft geen buffer nodig. De som maak je per artikelgroep en niet voor het hele assortiment.

Is een buffer geen gemiste omzet?

Een buffer die voor elk artikel gelijk is wel. Twee stuks op een artikel waarvan er 300 liggen kost niets, twee stuks op een artikel waarvan er 2 liggen haalt het uit de verkoop. Daarom krijgt een langzaam artikel buffer nul en staat in het overzicht van elke run hoeveel artikelen door de buffer op nul staan. Dat getal stuur je bij.

Kan de buffer per leverancier of per kanaal verschillen?

Ja, allebei. Per kanaal verschilt de buffer omdat de gevolgen verschillen: bol rekent een annulering mee in een servicenorm van 2% per week, een vaste klant in je eigen webshop bel je op. Per leverancier verschilt de regel omdat de stand verschilt in leeftijd: voorraad die je twee keer per dag als bestand krijgt, krijgt een drempel in plaats van een buffer.

Is de veiligheidsvoorraad in mijn ERP hetzelfde als de buffer in de webshop?

Nee. In het ERP is veiligheidsvoorraad een getal voor inkoop: het minimum dat je wilt hebben liggen, met daarnaast een bestelpunt waarbij je bijbestelt. De buffer in de webshop is het aantal stuks dat een kanaal minder ziet dan er vrij is. Een veiligheidsvoorraad van 40 in Exact Online naast een buffer van 2 in de webshop is een gewone combinatie.

Wat gebeurt er met een artikel waarvan nog 1 stuk ligt?

Dat hangt af van de regel van zijn artikelgroep. Met buffer 2 komt de som uit op min 1 en schrijft de koppeling nul: het artikel is op dat kanaal niet te koop. Met buffer 0 staat het laatste stuk te koop. Voor restpartijen en uitlopende artikelen is buffer 0 de gebruikelijke keuze, omdat het doel daar juist is dat het laatste stuk weggaat.

Vertel wat je nodig hebt

Vertel welke systemen je gebruikt en wat je wilt verbeteren. Je krijgt binnen één werkdag een persoonlijk antwoord. We helpen je de werkzaamheden helder te krijgen en spreken de prijs en planning af voordat je iets toezegt.

  • Je weet de prijs en de doorlooptijd voordat je iets toezegt
  • Wij zoeken uit welke koppeling het werk uit handen neemt
  • Wij verzorgen de bouw, hosting, bewaking en het onderhoud
  • Je team krijgt minder overtypwerk en minder uitzoekwerk

Leveranciers, producten, orders per dag, een ruwe schatting is prima.

Of mail direct: carsten@syncmyshop.com