Voorraad sync tussen twee shops: de beste aanpak (en valkuilen)
Voorraad synchroniseren tussen twee shops klinkt simpel: “als het in shop A verkoopt, moet shop B ook minderen.” In de praktijk gaat het vaak mis door timing, varianten, retouren en backorders. Zeker bij WooCommerce (of WooCommerce + een tweede platform) is het belangrijk dat je eerst bepaalt wáár je voorraad ‘waarheid’ is en hoe je conflictsituaties oplost. In deze blog leg ik de beste aanpak uit, inclusief valkuilen die je liever voorkomt.
De beste aanpak: één bron van waarheid + event-driven sync
De meest betrouwbare setup is: één voorraadbron (single source of truth) en de andere shop(s) volgen. Die bron kan zijn:
Een ERP/WMS (ideaal als je groter bent)
Eén van je shops (als je klein start)
Een aparte inventory service (middleware)
Vervolgens synchroniseer je event-driven (op gebeurtenissen) in plaats van “elke 5 minuten alles ophalen”. Denk aan events zoals:
Order betaald (stock -1)
Order geannuleerd (stock +1)
Retour verwerkt (stock +1)
Handmatige voorraadcorrectie (stock set)
Waarom event-driven? Omdat je dan snel en precies sync’t, zonder constante polling die vertraging en race conditions veroorzaakt.
Drie technische routes (met wanneer je ze kiest)
Middleware (Make/Zapier/n8n of integratieplatform) Goed voor eenvoudige flows en snelle implementatie. Let op dat je niet alleen “order created” sync’t, maar echt met betaalstatus en retouren werkt.
Direct via API (WooCommerce REST API ↔ platform/API) Robuust en flexibel. Je kunt goede logica inbouwen voor varianten, bundels en foutafhandeling (retries). Dit is vaak de beste keuze als voorraad kritisch is.
ERP/WMS als centrale hub Het meest schaalbaar. Beide shops publiceren orders naar de hub; de hub beheert voorraad en pusht updates terug. Vooral handig bij meerdere magazijnen, inkoop, en dropshipping.
Valkuilen die bijna altijd opspelen
Race conditions: twee shops verkopen tegelijk het laatste item. Oplossing: werk met reserveringen (stock hold) of snelle event-sync + veiligheidsbuffer.
Varianten en bundels: één SKU met meerdere variaties of samengestelde producten. Oplossing: sync op SKU/variant-ID, en definieer bundel-logica (componenten).
Orderstatus verkeerd gekozen: voorraad afboeken bij “order geplaatst” i.p.v. “betaald” kan tot onnodige stock-outs leiden.
Retouren en refunds vergeten: voorraad klopt pas als je retourproces ook sync’t.
Backorders en pre-orders: bepaal vooraf of je negatieve voorraad toestaat en hoe je dat communiceert.
Handmatige correcties: zonder logging en audit trail raak je de controle kwijt.
Meetbaar en beheersbaar maken
Zorg voor:
Logging per voorraadmutatie (wat, wanneer, door wie/waar)
Retry queue bij API-fouten
Dagelijkse “reconciliatie” (controlelijst) voor afwijkingen
Alerts bij negatieve voorraad of plotselinge drops
Conclusie
De beste voorraad-sync tussen twee shops is bijna altijd: één bron van waarheid + event-driven synchronisatie, met duidelijke regels voor varianten, retouren en orderstatus. Daarmee voorkom je overselling, frustratie en voorraadchaos.
Wil je dat GreenIQ dit voor jouw shops inricht (WooCommerce ↔ WooCommerce of WooCommerce ↔ ander platform), inclusief foutafhandeling, logging en tests? Neem contact op: we maken een sync-ontwerp dat past bij jouw assortiment en fulfilmentproces.