Voorraad · ERP · Marktplaatsen · Multi-warehouse
Webshop voorraad koppelen
Eén voorraadwaarheid · Realtime · Oversell-proof
Voorraad realtime synchroon tussen je webshop, ERP en marktplaatsen. Geen oversells, geen handmatige correcties op zondagavond, geen klanten die hun bestelling later annuleren omdat 'het toch niet op voorraad was'. Eén bron van waarheid, voor alle verkoopkanalen — schaalbaar opgezet.
- < 5s
- Sync per mutatie
- 0
- Oversells na go-live
- 10+
- Kanalen tegelijk
- Multi-WH
- Standaard ingebakken
De waarde van een goede developer
Voorraad koppelen lijkt makkelijk — totdat je 6 kanalen tegelijk verkoopt
Eén productje syncen tussen webshop en ERP is met een plug-in zo geregeld. Maar 8.000 SKU's verdelen over twee magazijnen, drie marktplaatsen, een POS én een fulfilment-partner — met reserveringen, backorders, retours en piek-volumes — dat is een ander vak. Daar zit het verschil tussen 'we hebben een koppeling' en 'we kunnen op vrijdag rustig naar huis'.
Nooit meer oversells
Eén locking-mechanisme, queue-based mutaties, atomic decrements. Of een product op de webshop, Bol én Amazon tegelijk verkocht wordt — de voorraad klopt.
Realtime, niet 'om het kwartier'
Mutaties propageren binnen seconden naar alle kanalen via events of webhooks. Geen 15-minuten-batches waarbij Bol nog 12 op voorraad denkt te hebben terwijl de webshop al 0 is.
Multi-warehouse standaard ingebakken
Magazijn Rotterdam, magazijn Almere, dropship-partner Duitsland — per kanaal een eigen voorraadlogica met fallback en zone-routering bij verzending.
Reserveringen & backorders
Voorraad reserveren bij toevoegen aan winkelmandje, vrijgeven bij abandonment, backorder-logica per product. Niet alles is 'op voorraad of niet'.
Monitoring en correcties die werken
Dashboard met afwijkingen, alerts bij sync-fouten, automatische correctie waar mogelijk en escalatie waar nodig. Geen verrassingen op maandagochtend.
Eén bron van waarheid
Of de ERP de baas is of de webshop — duidelijk en consistent. Geen 'wie heeft gelijk' tussen Bol-voorraad, ERP-voorraad en magazijn-voorraad.
Twijfel je waar het in jouw situatie misgaat? Ik denk graag mee — gewoon Maarten zelf.
Hoe het eruit ziet
Voorraad-flow in beeld
Van order in het ene kanaal tot voorraad-update in alle andere — binnen seconden, met queue, monitoring en correctie-pad. Hieronder een paar visualisaties van wat je krijgt.
Order Bol.com → alle kanalen
< 5sHub-and-spoke voorraadsync
- 01
Order op Bol
Webhook van Bol naar centrale voorraad-hub.
- 02
Voorraad lock
1 stuk gereserveerd, atomic operation in DB.
- 03
Push naar webshop
WooCommerce-stock direct geüpdatet.
- 04
Push naar Amazon
SP-API stock-update binnen seconden.
- 05
ERP sync
Exact / AFAS krijgt orderregel en voorraadmutatie.
- 06
Monitoring
Logs per kanaal, alerts bij sync-fout.
Voorraad-dashboard
Mobile-firstPer SKU, per kanaal, realtime
Mobile-first
SKU 4823 · Wandrek eiken
Magazijn RTM: 24 · Magazijn AMR: 8
Voorraadbetrouwbaarheid · voor / na
0 oversellsWebshop + Bol + Amazon · 4.200 SKU's
Voorraad-event handler
Hub-and-spokePHP · queued, retry-baar, idempotent
StockEvent::dispatch([
'sku' => $sku,
'delta' => -1,
'source' => 'bol',
'order_id' => $order->id,
])->onQueue('stock')->afterCommit();
// → propagates to woocommerce, amazon, exact, in parallel
// → idempotent via event_id, retry on failure
// → audit log per channelHoe zou dit er in jouw shop uitzien? Ik denk graag mee — gewoon Maarten zelf.
Herkenbaar?
Voorraad-problemen die ik vaak voorbij zie komen
Bijna elk traject begint met een variant op deze klachten — en bijna altijd zit de oplossing in de architectuur, niet in nóg een plug-in erbij.
Oversells op marktplaatsen
Pijn: Bol en Amazon verkopen allebei het laatste stuk omdat sync 15 minuten loopt. Twee orders, één product, klant moet je teleurstellen — en je marktplaats-rating gaat omlaag.
Aanpak: Realtime push via webhooks of event-driven sync. Atomic stock-mutaties met locking. Oversells naar nul, marktplaats-rating beschermd.
Sync gaat 'om het kwartier'
Pijn: Plug-in trekt elke 15 minuten data uit ERP en pusht naar webshop. Webshop staat dus per definitie tot 15 min achter. Bij piek loopt het zelfs in uren.
Aanpak: Event-driven architectuur: zodra er een mutatie is, gaat hij direct door. Geen batches, geen cron-vertraging, gewoon real-time.
Plug-ins die elkaar overschrijven
Pijn: WooCommerce heeft een plug-in voor Bol, één voor Exact, één voor MyParcel — en ze schrijven elkaar de voorraad over. Niemand weet meer wat de waarheid is.
Aanpak: Eén centrale voorraad-laag (hub) of een duidelijk bron-of-truth-model. Plug-ins worden lezers, niet schrijvers, of vervangen door directe API-koppelingen.
Multi-warehouse 'kan niet'
Pijn: Standaard WooCommerce/Magento ondersteunt slecht meerdere magazijnen. Resultaat: alle voorraad op één hoop, geen zone-routering, hogere verzendkosten.
Aanpak: Multi-warehouse logica met fallback en zone-routering. Order uit Amsterdam? Verstuur uit Almere. Niet voorradig? Uit Rotterdam met andere ETA.
Retours komen niet terug in voorraad
Pijn: Klant retourneert, customer service handelt af, voorraad wordt vergeten te updaten. SKU staat als 0 terwijl er 18 op de plank liggen.
Aanpak: Retour-scan triggert voorraad-update automatisch, met optionele kwaliteitscontrole-stap voordat het écht beschikbaar wordt.
Geen idee waar de fouten zitten
Pijn: Voorraad klopt niet, niemand weet waarom, niemand weet sinds wanneer. Customer service moet handmatig controleren.
Aanpak: Audit-log per SKU-mutatie: wanneer, welk kanaal, welke order. Dashboard met afwijkingen, alerts bij grote verschillen.
Bundels en varianten breken de sync
Pijn: Een product is een bundel van 3 SKU's. Verkoop 1, voorraad moet op 3 plekken met −1, kanalen worden inconsistent. Of variant-producten worden op moeder-niveau gesynct.
Aanpak: Bundle-decomposition standaard ingebakken, variant-sync per child-SKU, met correct opnieuw-berekenen van bundle-availability.
Internationaal magazijn / 3PL is een blackbox
Pijn: Fulfilment-partner in Duitsland geeft 1x per dag een CSV. Wij weten dus 23 uur per dag niet wat er staat.
Aanpak: Directe API-koppeling met 3PL of WMS — realtime push van mutaties, terug-sync van mutaties, geen CSV's meer.
Voorraad · ERP · Marktplaatsen · Multi-warehouse
Klaar met oversells en handmatige correcties?
Sparring over je huidige sync-problemen, je marktplaats-strategie en de snelste route naar één betrouwbare voorraadwaarheid — concreet en zonder sales-trechter.
Wat het oplevert
Voorbeelden van voorraad-trajecten
Een goede voorraadkoppeling levert iets meetbaars op: geen oversells meer, minder klacht-tickets, minder handmatige correcties, vrijheid om kanalen toe te voegen. Een paar voorbeelden ter inspiratie.
Marktplaatsen veilig
Webshop + Bol + Amazon, 4.200 SKU's. Was: 47 oversells/maand. Na hub-and-spoke architectuur: nul.
Van 12 min naar realtime
Event-driven i.p.v. batch. Tussen mutatie en update op alle kanalen gemiddeld 2,3 seconden.
Multi-warehouse routering
Order naar dichtstbijzijnde magazijn met voorraad, fallback bij stockout. Verzendkosten −12%, levertijd −0,6 dag.
Marketplace-omzet
Geen safety-stock-reductie meer nodig — alles op alle kanalen vol aanbieden. Bol-omzet +19%, Amazon +27%.
Mutaties traceerbaar
Customer service kan per SKU zien wanneer en hoe een mutatie ontstond. Discussies met klanten korter, juister.
Retours terug in voorraad
Retour-scan via PostNL/DHL triggert voorraad-update na QC. Geen 'we hebben hem net verkocht' meer.
Handmatige correcties weg
Webshop-medewerker was 3:40u/week bezig met voorraad-correcties. Nu 5 minuten — alleen exception-cases.
Internationaal magazijn live
3PL in DE gekoppeld via API, zone-routering geactiveerd. Levertijd in DE van 4 naar 1,5 dag, verzendkosten −€ 2,80/order.
Bundles & varianten correct
Bundle-decomposition en variant-sync schoon — 600 SKU's met bundles werken nu net zo betrouwbaar als losse producten.
Voorraad bij add-to-cart
Reservering tijdens checkout (max 20 min), automatisch vrijgeven bij abandonment. Conversie +6%, geen 'opeens uitverkocht'-frustratie.
Schaalbaar naar elk kanaal
Architectuur klaar voor extra marktplaats of B2B-portaal zonder hele sync opnieuw te bouwen.
Voorraad-rotatie inzichtelijk
Per SKU, per magazijn, per kanaal: omloopsnelheid, dood kapitaal, restock-suggesties. Inkoop kan beter beslissen.
Black Friday zonder oversells
Stress-test op 8x normaal volume, queue houdt het, oversells: 0. Records gebroken zonder paniek.
Daling voorraad-klacht-tickets
Customer service tijd voor échte vragen. Klant-tevredenheid voelbaar omhoog.
Aparte voorraad-pools
Voor B2B-klanten reserveringen voor 48u, voor B2C realtime — zelfde stack, andere logica per kanaal.
Welk voorbeeld lijkt het meest op jouw situatie? Ik denk graag mee — gewoon Maarten zelf.
Wat ik bouw
Voorraad-onderdelen die ik regelmatig bouw
Centrale voorraad-hub
Eén bron van waarheid, alle kanalen lezen/schrijven via dezelfde laag.
Event-driven sync
Webhooks en queues — geen batches, geen cron-vertraging.
Locking & atomic mutaties
Geen race-condities, geen oversells bij parallelle orders.
Multi-warehouse routering
Magazijn-keuze op basis van postcode, voorraad en kosten, met fallback.
Reserveringen & backorders
Voorraad reserveren bij add-to-cart, vrijgeven bij abandonment, backorder per product.
Bundles & varianten
Bundle-decomposition en variant-sync per child-SKU.
ERP-koppeling
Exact, SnelStart, AFAS, Twinfield — bidirectioneel met voorraadbron-rolverdeling.
Marktplaats-koppelingen
Bol.com SOAP/REST, Amazon SP-API, Channable, ChannelEngine, eBay.
Audit-log per SKU
Wie, wanneer, welke mutatie — voor support, audit en debugging.
Voorraad-dashboard
Per SKU, per kanaal, per magazijn — realtime overzicht.
Correctie-flow
Stocktake-import, verschillen-rapport, één-klik-correctie met audit.
Alerts bij afwijking
Slack of mail bij sync-fout, grote afwijking of stockout op lopende order.
Inbound shipments
Voorraad-update bij ontvangst via WMS-scan of leverancier-feed.
Mobile picklijst & scan
Warehouse-app met scan, voorraad-update on the fly, ondersteund door multi-WH logica.
Logica voor pre-orders
Verkoop op voorraad die nog moet komen, met levertijd in checkout en aparte voorraadpool.
Specifiek onderdeel in je hoofd? Ik denk graag mee — gewoon Maarten zelf.
Koppelingen
Systemen waar de voorraadkoppeling mee verbindt
WooCommerce / Magento / Shopify / headless
Directe API of bron-laag voor voorraad.
Exact Online / SnelStart / AFAS / Twinfield
ERP als bron of als consument, bidirectioneel.
Bol.com / Amazon SP-API / eBay
Marktplaats-koppeling met realtime stock-push.
Channable / ChannelEngine / EffectConnect
Multi-channel feeds en marktplaats-orchestratie.
PicQer / Logic4 / WMS partners
Warehouse management met scan en multi-locatie.
PostNL / DHL / FedEx / Sendcloud
Verzending én retour-scans terug in voorraad.
Lightspeed / Vend / POS-systemen
Fysieke winkel-voorraad mee in dezelfde pool.
3PL partners (DE/BE/UK)
Directe API-koppeling i.p.v. CSV-uitwisseling.
Slack / Microsoft Teams / e-mail
Alerts bij afwijkingen of sync-fouten.
Ander systeem? Vraag het even. Ik denk graag mee — gewoon Maarten zelf.
Hoe het werkt
Een voorraadkoppelings-traject in 4 stappen
- 01
Audit & architectuur
Alle kanalen en systemen in kaart, bron-van-waarheid bepalen, hub vs P2P kiezen.
- 02
Data & migratie
SKU's opschonen, bundle/variant-mapping, eenmalige stocktake en initiële sync.
- 03
Bouw & test
Implementatie op staging, met dummy-orders door alle kanalen — incl. piek-test.
- 04
Live & monitoring
Go-live in fasen (eerst één kanaal, dan rest), monitoring en finetuning.
Klaar om de eerste stap te zetten? Ik denk graag mee — gewoon Maarten zelf.
Veelgestelde vragen
Werkt dit met mijn huidige webshop?
Ja. WooCommerce, Magento, Shopify, Lightspeed en headless setups worden allemaal ondersteund. De aanpak (hub-and-spoke of P2P) hangt af van je volume en het aantal kanalen.
Wat is het verschil tussen 'hub-and-spoke' en P2P?
Hub-and-spoke: één centrale voorraad-laag, alle kanalen praten daarmee. Schaalbaar bij 3+ kanalen of complexe regels. Peer-to-peer: directe koppelingen tussen bv. webshop en ERP. Simpel bij 1-2 kanalen en weinig logica.
Hoe voorkomen jullie oversells exact?
Atomic stock-mutaties met locking in de DB, voorraad-reservering bij add-to-cart, idempotente events met retry. Bij piek (10 orders binnen seconden) wordt elke order serieel verwerkt op het stock-niveau.
Hoe werkt multi-warehouse?
Per magazijn een eigen voorraad-record, met regels voor zone-routering (Amsterdam → Almere), fallback (uitverkocht? dan uit RTM met andere ETA), en split-shipments wanneer een order over magazijnen verdeeld moet worden.
Wat als mijn ERP de baas moet zijn?
Prima — dan is ERP de bron van waarheid en pushen we van daaruit naar webshop en marktplaatsen. Webshop kan reserveringen melden, maar definitieve voorraad ligt bij ERP. Andersom kan ook.
Hoe gaan jullie om met bundels en varianten?
Bundles worden gedecomposeerd: een verkoop van 'bundle X' triggert mutaties op alle child-SKU's. Varianten worden op child-niveau gesynct, niet op parent. Beide met juiste availability-berekening.
Kunnen reserveringen tijdens checkout?
Ja. Voorraad wordt gereserveerd bij add-to-cart of bij checkout-start, met een TTL (bv. 20 minuten). Vrijgegeven bij abandonment of expiry. Voorkomt dat een klant in checkout 'opeens uitverkocht' krijgt.
Wat met retours?
Bij retour-scan van PostNL/DHL/FedEx gaat de voorraad automatisch terug (eventueel via QC-stap). Geen handmatige correctie meer.
Hoe zit het met dropshipping en 3PL?
Directe API-koppeling met de leverancier of 3PL voor realtime voorraad en verzendstatus. Geen CSV-uitwisseling tenzij de partner echt niet anders kan.
Kan ik per kanaal een veiligheidsmarge instellen?
Ja. Bv. op Bol altijd 2 stuks minder tonen dan werkelijke voorraad, om oversells op piek-momenten extra te buffer-en. Of voor B2B een aparte pool reserveren.
Hoe lang duurt een voorraadkoppelings-traject?
Eenvoudig (1 webshop + 1 ERP): 2 tot 4 weken. Multi-channel met marktplaatsen en multi-warehouse: 4 tot 12 weken, in fasen uitgerold.
Kun je werken als white-label voor bureaus?
Ja, regelmatig. Repo bij jullie of bij mij, sprint-demo's, communicatie via jullie account-lead. Klant ziet jullie merk.
Voorraad · ERP · Marktplaatsen · Multi-warehouse
Klaar met oversells en handmatige correcties?
Sparring over je huidige sync-problemen, je marktplaats-strategie en de snelste route naar één betrouwbare voorraadwaarheid — concreet en zonder sales-trechter.
