Controleer WooCommerce-webhooks niet alleen op een succesvolle test, maar vergelijk periodiek wat je integratie verwacht met wat werkelijk in de webshop staat. Een endpoint kan bereikbaar zijn terwijl de webhook ontbreekt, gepauzeerd is, naar een oud adres wijst of niet meer op het juiste onderwerp luistert. Dan lijkt de koppeling gezond totdat een order stilvalt.
Bereikbaar is iets anders dan volledig
Een klassieke uptimecheck doet een HTTP-verzoek en concludeert dat de server antwoordt. Voor een webhookkoppeling beantwoordt dat maar één vraag. Je wilt ook weten of iedere vereiste registratie aanwezig is, of de status actief is en of onderwerp en afleveradres overeenkomen met de lokale configuratie. Bovendien moet een API-fout bij het uitlezen niet worden verward met een ontbrekende webhook.
Een volwassen gezondheidscontrole bouwt daarom een verwachte set op vanuit de geactiveerde workflows. Een organisatie die alleen orders synchroniseert heeft andere webhooks nodig dan een organisatie die ook refunds of voorraadgebeurtenissen verwerkt. Dit voorkomt zowel een vals alarm over ongebruikte onderwerpen als stilte wanneer een noodzakelijke registratie verdwijnt.
Vier statussen die een eigenaar nodig hebben
| Status | Betekenis | Eerste actie |
|---|---|---|
| Actief en gelijk | Remote registratie komt overeen | Blijf periodiek controleren |
| Gepauzeerd | Registratie bestaat, maar levert niet | Onderzoek reden en activeer bewust |
| Ontbrekend of afwijkend | Verwachte registratie is niet bruikbaar | Herstel configuratie en test met proeforder |
| API-fout | Gezondheid kan niet worden vastgesteld | Controleer authenticatie, rechten en bereikbaarheid |
Maak van deze statussen geen technisch dashboard dat niemand bekijkt. Leg per melding vast welke winkel, welke workflow, welk webhookonderwerp en welk moment zijn geraakt. Stuur de waarschuwing naar een concrete eigenaar en toon hoe lang de toestand al duurt. Dat maakt integratiebeheer in Connect bruikbaar voor operatie, niet alleen voor ontwikkelaars.
Fictief voorbeeld: de stille orderstroom
Fictief voorbeeld: na een migratie van webwinkel Veluwe Vitaal blijft het oude webhookadres in WooCommerce staan. De nieuwe integratieomgeving reageert prima op handmatige tests, maar ontvangt geen nieuwe orders. Een vergelijking ziet dat het verwachte onderwerp wel bestaat, alleen met een afwijkende URL. De status wordt “afwijkend” en de beheerder krijgt de precieze registratie te zien.
Na correctie plaatst het team een proeforder en volgt het de volledige route: ontvangen gebeurtenis, gevalideerde order, verwerking in het ERP en eventuele logistieke vervolgactie. Het team markeert het incident pas opgelost wanneer ook is vastgesteld welke orders tijdens het gat zijn gemist. Daarvoor kan een afgebakende bronvergelijking of gecontroleerde herverwerking nodig zijn. Een groen icoon na herstel zegt immers niets over de historische achterstand.
Gezondheidscheck voor iedere wijziging
- Leid de vereiste webhookset af uit daadwerkelijk geactiveerde processen.
- Vergelijk onderwerp, status en afleveradres; vergelijk nooit alleen aantallen.
- Bewaar het tijdstip en resultaat van de laatste succesvolle controle.
- Maak onderscheid tussen “ontbreekt” en “kon niet controleren”.
- Controleer na herstel op gemiste orders en niet alleen op nieuwe ontvangst.
- Herhaal de check na domein-, plug-in-, sleutel- of omgevingswijzigingen.
Combineer dit met procesmonitoring zoals beschreven bij webshop-ERP-koppelingen. Komt een order toch niet door, dan helpt Desk om de mislukte stap en volgende actie zichtbaar te maken in plaats van de klantvraag los van de techniek te behandelen.
Maak tot slot onderscheid tussen detectie en automatisch herstel. Het opnieuw aanmaken van een ontbrekende registratie lijkt handig, maar kan bij een bewuste migratie of gewijzigde beveiligingsinstelling juist een fout terugzetten. Een veilige standaard is: detecteer het verschil, toon het verwachte en gevonden record, laat een bevoegde beheerder het herstel bevestigen en controleer daarna een echt proces. Leg ook vast wie wijzigingen aan webshop-URL’s, secrets en webhookonderwerpen mag doen. Daarmee wordt de gezondheidscheck een wijzigingscontrole: na iedere release of infrastructuurwijziging is zichtbaar of de contracten tussen beide kanten nog overeenkomen. Neem de meetresultaten mee in incidentreviews, zodat terugkerende afwijkingen leiden tot een structurele aanpassing en niet telkens tot hetzelfde handwerk.
Bewaar daarnaast een beperkte historie van controles. Eén momentopname vertelt dat iets nu afwijkt; de reeks vertelt wanneer de afwijking begon en of zij samenvalt met een release. Dat verkort de zoektocht aanzienlijk. Spreek een redelijke controlefrequentie af op basis van ordervolume en risico, en voorkom dat dezelfde onveranderde waarschuwing ieder kwartier alle betrokkenen mailt.
Wil je een webhookcontrole die aansluit op jouw actieve orderprocessen? Bespreek de verwachte set en escalatie met Yindle.