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.

Bekijk voorbeelden
< 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

< 5s

Hub-and-spoke voorraadsync

  1. 01

    Order op Bol

    Webhook van Bol naar centrale voorraad-hub.

  2. 02

    Voorraad lock

    1 stuk gereserveerd, atomic operation in DB.

  3. 03

    Push naar webshop

    WooCommerce-stock direct geüpdatet.

  4. 04

    Push naar Amazon

    SP-API stock-update binnen seconden.

  5. 05

    ERP sync

    Exact / AFAS krijgt orderregel en voorraadmutatie.

  6. 06

    Monitoring

    Logs per kanaal, alerts bij sync-fout.

Voorraad-dashboard

Mobile-first

Per SKU, per kanaal, realtime

9:415G · 100%

Mobile-first

SKU 4823 · Wandrek eiken

Magazijn RTM: 24 · Magazijn AMR: 8

Webshop: 28 (4 gereserveerd)
Bol.com: 28 · Amazon NL: 28
Backorders: 3 · Levering vrijdag

Voorraadbetrouwbaarheid · voor / na

0 oversells

Webshop + Bol + Amazon · 4.200 SKU's

Metric
Voor
Na
Oversells per maand
47
0
Sync-vertraging gemiddeld
12 min
2,3 s
Handmatige correcties / wk
3:40 uur
5 min
Annulering door 'no stock'
62/mnd
0
Klacht-tickets voorraad
28/mnd
1–2/mnd

Voorraad-event handler

Hub-and-spoke

PHP · 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 channel

Hoe 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.

Bekijk klantcases

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.

0 oversells

Marktplaatsen veilig

Webshop + Bol + Amazon, 4.200 SKU's. Was: 47 oversells/maand. Na hub-and-spoke architectuur: nul.

2,3s sync

Van 12 min naar realtime

Event-driven i.p.v. batch. Tussen mutatie en update op alle kanalen gemiddeld 2,3 seconden.

3 mag.

Multi-warehouse routering

Order naar dichtstbijzijnde magazijn met voorraad, fallback bij stockout. Verzendkosten −12%, levertijd −0,6 dag.

+19%

Marketplace-omzet

Geen safety-stock-reductie meer nodig — alles op alle kanalen vol aanbieden. Bol-omzet +19%, Amazon +27%.

Audit-log

Mutaties traceerbaar

Customer service kan per SKU zien wanneer en hoe een mutatie ontstond. Discussies met klanten korter, juister.

Auto

Retours terug in voorraad

Retour-scan via PostNL/DHL triggert voorraad-update na QC. Geen 'we hebben hem net verkocht' meer.

−3:35u/wk

Handmatige correcties weg

Webshop-medewerker was 3:40u/week bezig met voorraad-correcties. Nu 5 minuten — alleen exception-cases.

DE + BE

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.

Bundels

Bundles & varianten correct

Bundle-decomposition en variant-sync schoon — 600 SKU's met bundles werken nu net zo betrouwbaar als losse producten.

Reserveren

Voorraad bij add-to-cart

Reservering tijdens checkout (max 20 min), automatisch vrijgeven bij abandonment. Conversie +6%, geen 'opeens uitverkocht'-frustratie.

10 kanalen

Schaalbaar naar elk kanaal

Architectuur klaar voor extra marktplaats of B2B-portaal zonder hele sync opnieuw te bouwen.

Per SKU

Voorraad-rotatie inzichtelijk

Per SKU, per magazijn, per kanaal: omloopsnelheid, dood kapitaal, restock-suggesties. Inkoop kan beter beslissen.

Peak-klaar

Black Friday zonder oversells

Stress-test op 8x normaal volume, queue houdt het, oversells: 0. Records gebroken zonder paniek.

−54%

Daling voorraad-klacht-tickets

Customer service tijd voor échte vragen. Klant-tevredenheid voelbaar omhoog.

B2B + B2C

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

  1. 01

    Audit & architectuur

    Alle kanalen en systemen in kaart, bron-van-waarheid bepalen, hub vs P2P kiezen.

  2. 02

    Data & migratie

    SKU's opschonen, bundle/variant-mapping, eenmalige stocktake en initiële sync.

  3. 03

    Bouw & test

    Implementatie op staging, met dummy-orders door alle kanalen — incl. piek-test.

  4. 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.

Bekijk klantcases
Maarten Soetens

Even sparren over jouw project?

Korte lijntjes, eerlijk advies, geen sales-praat. Ik denk vrijblijvend met je mee — gewoon Maarten zelf.

Geen automatisch antwoord — ik mail of bel je persoonlijk terug.