Mandag morgen kl. 08:47. Lagerchefen åbner WMS. 0 nye ordrer. Underligt, normalt 47 ordrer om natten. Tjekker Shopify: 52 ordrer. Webhook-integration fejlet kl. 23:34 soendag. Ingen alarm. 52 ordrer sidder i Shopify. WMS ved intet. Stille fejl. Opdages efter 9 timer.
Det er integrationsfejlenes natur: de sker oftest usynligt, opdages sent og koster dyrt. Her er hvad du skal vide om integrationer i lagerstyring.
Hvad er en integration?
En integration er en automatiseret forbindelse mellem to systemer, der gør det muligt for dem at udveksle data uden manuel indgriben. I lagerstyringssammenhaeng er de vigtigste integrationer:
- Webshop til WMS: Ordrer sendes til WMS til behandling
- WMS til Webshop: Fulfillment-status og tracking sendes tilbage
- WMS til ERP: Beholdning, afsendelse og eventuel fakturering
- WMS til Fragtmand: Fragttransport bestilles, labels genereres
- WMS til Indkøbssystem: Genbestilling ved minimum-lager
Integrationstyper: API vs. Webhook
👉 SmartPack bruger event-drevet integration med fuld webhook-support. Se SmartPacks integrationer
De to dominerende teknologier er API (pull) og Webhook (push). De er ikke konkurrenter, de løser forskellige problemer og bruges ofte i kombination.
API, du spoerger, systemet svarer
API (Application Programming Interface) fungerer som et spoergsmaal-svar-system. Dit WMS sender en foresprorgsel til fx Shopify: "Vis mig alle ubehandlede ordrer fra de seneste 10 minutter." Shopify svarer med en liste.
Det kræver: AppId og AccessToken (autentifikation), et endpoint (URL til APIet), og en planlagt hentning (polling), typisk hvert 1-5. minut. API egner sig godt til periodisk synkronisering, opslag og opdatering af lagertal.
Webhook, systemet fortaeller dig, når noget sker
En webhook er en push-notifikation. Shopify sender dig automatisk en besked, når en ordre oprettes, du behøver ikke spoerge. Det sker i realtid. Webhooks egner sig godt til: ordremodtagelse, betalingsbekraeftelse og statusopdateringer.
Krav til webhook-modtagelse:
- HTTPS-endpoint (usikrede HTTP accepteres ikke)
- Svartid under 30 sekunder (ellers timeout og retry)
- HMAC-SHA256 signaturvalidering (bekraefter at beskeden er aegte)
Filintegration, det tredje alternativ
ældre systemer bruger stadig filbaseret integration: CSV- eller XML-filer udveksles via FTP/SFTP. Det er langsomt, fejlprone og svaert at monitorere, men det eksisterer særligt i ERP-sammenhaeng.
Hvad koster integrationsfejl reelt?
| Fejltype | Direkte omkostning | Total årlig |
|---|---|---|
| Webhook-tab uden retry (5% af ordrer) | 8.750 kr./dag | 12.605.625 kr./aar |
| Ingen HMAC-validering, svindel | 8.000 kr./episode | 96.000 kr./aar |
| Ingen retry-logik (3% API-kald fejler) | 5.250 kr./dag | 7.566.750 kr./aar |
Stille fejl er farligst
Integrationer fejler ikke spektakulaert. De fejler stille. Det er det farligste scenarie:
- En ordre modtages i Shopify, men webhook leveres ikke til WMS, og ingen opdager det
- Lagertal opdateres i WMS, men API-synkronisering til Shopify er fejlet i 2 timer
- Fragtbestilling sendes, men fragtmand-API returnerer fejl, der ikke logges
En haaard fejl stopper systemet og opdages. En stille fejl fortsætter usynligt og opbygger data, der afviger fra virkeligheden.
Integrationsmønstre i e-handel
Synkron integration: System A kalder System B og venter på svar, foer det fortsætter. Simpelt, men sårbart, hvis B er langsom bremser det A.
Asynkron integration: System A sender beskeden og fortsætter. Beskeden lander i en koe og behandles, når B er klar. Mere robust, men kræver fejlhåndtering i koen.
Event-drevet integration: Hændelser som ordre oprettet, vare plukket og pakke afsendt trigger automatisk alle relevante systemer. Det er den mest skalerbare arkitektur.
Typiske fejl
- Ingen retry-logik: Webhooks og API-kald fejler. Netvaerket fejler. Servere er nede. Uden automatisk retry mister du data. Implementer eksponentiel backoff: prrov igen efter 1 min, 5 min, 30 min.
- Manglende signaturvalidering: Webhooks fra Shopify indeholder en HMAC-SHA256-signatur. Validerer du den ikke, kan hvem som helst sende falske ordre-events til dit endpoint.
- Polling for hyppigt eller for sjaeldent: API-polling hvert 30. sekund giver unodvendig belastning. Polling hvert 30. minut giver for lang forsinkelse. Juster interval til faktisk behov.
- Ignorer integration health monitoring: Uden monitoring ved du ikke, hvornår en integration sidst koerte succesfuldt.
Sådan gør du det rigtigt
- Log alt: Hvert API-kald og webhook-modtagelse bør logges med timestamp, payload og respons-kode.
- Brug idempotente endpoints: Hvis samme webhook leveres to gange, maa systemet ikke oprette to ordrer.
- Adskil systemer med en message queue: En koe beskytter mod spikes og giver buffer ved kortvarige nedbrud.
SmartPack
SmartPack bruger event-drevet integration med webhook-support og periodisk API-polling. Alle webhooks valideres med HMAC-SHA256. Integrationer til Shopify, WooCommerce, e-conomic og Business Central er praekonfigurerede. SmartPack logger alle integrationshændelser og viser integration health i administrationspanelet.