Wat is een webhook en hoe werkt het?
Een webhook is een automatisch HTTP-bericht dat één systeem naar een ander stuurt zodra er een specifieke gebeurtenis plaatsvindt, bijvoorbeeld een nieuwe bestelling of een gewijzigde status. In plaats van dat het ontvangende systeem steeds moet navragen of er iets nieuws is, ontvangt het direct de data zodra de gebeurtenis zich voordoet. Webhooks vormen de basis van veel automatiseringen tussen apps en diensten.
Een webhook is een automatisch bericht dat een systeem verstuurt zodra er iets gebeurt, zodat een ander systeem direct kan reageren zonder te hoeven pollen.
Veel systemen moeten razendsnel op elkaar reageren: een betaling die binnenkomt, een formulier dat wordt ingevuld, een status die verandert in een ander pakket. Een webhook maakt dat mogelijk zonder dat je continu zelf hoeft te controleren of er iets veranderd is.
Hoe een webhook werkt
Een webhook is in de kern een HTTP-verzoek dat automatisch verstuurd wordt zodra een vooraf gedefinieerde gebeurtenis plaatsvindt. Je registreert bij het bronsysteem een URL, het zogeheten webhook-endpoint, en geeft aan bij welke gebeurtenis je een melding wilt ontvangen. Vanaf dat moment stuurt het systeem automatisch een bericht naar die URL zodra de gebeurtenis zich voordoet, meestal met de relevante gegevens in JSON-formaat.
Stel: een klant plaatst een bestelling in je webshop. Het webshopsysteem stuurt direct een webhook-bericht naar je boekhoudpakket met de bestelgegevens. Het boekhoudpakket verwerkt die data automatisch, zonder dat iemand het handmatig hoeft over te typen of te importeren.
Waarom webhooks efficiënter zijn dan polling
Het alternatief voor een webhook is polling: je systeem vraagt met een vaste tussenpoos, bijvoorbeeld elke vijf minuten, aan een ander systeem of er iets nieuws is. Dat werkt, maar kost onnodig veel verkeer en levert altijd vertraging op. Bij drukke systemen kan polling bovendien tegen rate limits aanlopen omdat je veel vaker vraagt dan er daadwerkelijk nieuwe data is.
Een webhook draait dat om. Het bronsysteem meldt zich alleen wanneer er echt iets gebeurt. Dat is efficiënter, sneller en schaalt beter. Voor tijdgevoelige processen, zoals een fraudecontrole bij een betaling of een directe klantnotificatie, is dat verschil merkbaar.
Typische toepassingen in de praktijk
Webhooks komen overal voor waar systemen moeten samenwerken. Betaalproviders zoals Stripe of Mollie sturen een webhook zodra een betaling geslaagd of mislukt is. CRM-systemen sturen een webhook bij een nieuwe lead. Formulierbouwers sturen de ingevulde data direct door naar een automatiseringsplatform.
In automatiseringstools zoals n8n en Power Automate is de webhook-trigger vaak het startpunt van een workflow: zodra het bericht binnenkomt, start de flow automatisch en voert de vervolgstappen uit, bijvoorbeeld het aanmaken van een taak of het versturen van een e-mail. Bekijk ook het artikel over een webhook instellen in n8n voor een praktisch voorbeeld.
Webhooks veilig inzetten
Omdat een webhook-endpoint een openbare URL is, moet je die goed beveiligen. Zonder verificatie kan in theorie iedereen die de URL kent, berichten sturen die eruitzien als een echte gebeurtenis. De meeste aanbieders lossen dit op met een signing secret: een geheime sleutel die wordt meegestuurd in een header, waarmee je aan ontvangende kant controleert of het bericht daadwerkelijk van de juiste afzender komt.
Zorg daarnaast voor HTTPS, valideer de inhoud van elk bericht voordat je het verwerkt, en bouw foutafhandeling in voor het geval het bericht een keer niet aankomt of dubbel binnenkomt. Meer over hoe je een webhook opzet in Power Automate lees je in het artikel over een webhook inrichten in Power Automate.
Wanneer je voor een webhook kiest
Kies voor een webhook zodra je twee systemen realtime met elkaar wilt laten communiceren op basis van een gebeurtenis, en polling te traag of te omslachtig is. Voor processen die niet tijdgevoelig zijn, bijvoorbeeld een dagelijkse rapportage, is een geplande synchronisatie vaak eenvoudiger. Voor alles wat direct moet gebeuren zodra er iets verandert, is een webhook de aangewezen oplossing.
Onze tip: test een nieuwe webhook eerst met een tool die de binnenkomende data zichtbaar maakt, voordat je hem koppelt aan een productieproces. Zo zie je precies welke velden je ontvangt en voorkom je verrassingen zodra de koppeling live gaat.
Veelgestelde vragen
Wat is het verschil tussen een webhook en een API?
Een API is een verzameling afspraken waarmee je zelf actief data kunt opvragen of versturen bij een systeem; jij bepaalt het moment. Een webhook draait die richting om: het systeem stuurt zelf een bericht zodra er iets gebeurt, zonder dat jij erom vraagt. Veel diensten combineren beide: je gebruikt de API om iets te configureren en een webhook om automatisch op gebeurtenissen te reageren. Een webhook is dus geen alternatief voor een API, maar een aanvullend mechanisme voor gebeurtenis-gedreven communicatie.
Is een webhook hetzelfde als polling?
Nee, het zijn tegenovergestelde technieken. Bij polling vraagt jouw systeem met een vast interval, bijvoorbeeld elke minuut, aan een ander systeem of er iets nieuws is. Dat kost onnodige capaciteit en levert vertraging op tot de volgende check. Bij een webhook stuurt het bronsysteem direct een bericht zodra de gebeurtenis plaatsvindt, waardoor je vrijwel realtime reageert zonder herhaaldelijk te hoeven vragen.
Hoe beveilig je een webhook?
Controleer altijd de authenticiteit van binnenkomende webhook-berichten, bijvoorbeeld met een geheime sleutel (signing secret) die de afzender meestuurt in een header en die je aan de ontvangende kant verifieert. Gebruik daarnaast altijd HTTPS, valideer de payload voordat je die verwerkt, en zet een tijdslimiet en foutafhandeling op de ontvangende endpoint. Zonder verificatie kan iedereen die je webhook-URL kent, valse berichten sturen alsof ze van de echte bron komen.
Welke tools gebruik je om webhooks te ontvangen en verwerken?
Automatiseringsplatforms zoals n8n en Power Automate hebben ingebouwde webhook-triggers waarmee je zonder eigen server een endpoint opzet dat binnenkomende berichten direct omzet in een workflow. Voor maatwerk kun je ook een eigen API-endpoint bouwen dat webhook-berichten ontvangt en verwerkt. De keuze hangt af van hoeveel logica je nodig hebt en of je al een automatiseringsplatform gebruikt.