Webhooks zijn automatische berichten die de ene app naar de andere stuurt op het moment dat er iets specifieks gebeurt. In plaats van dat jouw software steeds vraagt ‘is er al iets nieuws?’, stuurt het bronsysteem zelf een klein pakketje data naar een webadres dat jij beheert, precies op het moment dat het gebeurt.
Zie het als een deurbel versus elke minuut door het kijkgaatje gluren. Bij pollen loop je telkens naar de deur om te kijken. Een webhook is de bezoeker die op de bel drukt: je krijgt pas een seintje als er echt iemand staat. Dus als een klant betaalt in Stripe of een formulier invult, vuurt dat platform een webhook af en reageert jouw systeem meteen. De meeste tools gebruiken dit patroon om zonder vertraging een workflowautomatisering te starten. Stripe alleen al verstuurt zo tientallen soorten events, van payment_intent.succeeded tot charge.refunded.
Onder de motorkap is een webhook gewoon een HTTP-POST-verzoek met een beetje data erin, meestal in JSON. Het is een van de simpelste manieren om twee platformen te koppelen en het hangt nauw samen met het bredere idee van een API. Het belangrijkste om goed te regelen is betrouwbaarheid. Events moeten geverifieerd worden met een handtekening, opnieuw geprobeerd als de aflevering mislukt en gelogd, zodat je precies kunt terugzien wat er binnenkwam en wanneer. Doe je dat niet, dan kan één gemiste betaalmelding een bestelling dagen laten hangen voordat iemand het doorheeft.
Bij TopDevs bouwen we webhook-ontvangers met handtekeningchecks en herhaalafhandeling, zodat de tools van een klant meteen met elkaar praten en er nooit een event ongemerkt verdwijnt.