Architecture & Sécurité
Qu’est-ce que Webhook ?
Mécanisme où un service (e-commerce, CRM, paiement) envoie une requête HTTP à votre URL lorsqu'un événement se produit (nouvelle commande, paiement reçu, lead créé).
Définition simple
C'est comme une sonnette de livraison qui vous prévient à l'instant T, plutôt que d'aller vérifier la boîte aux lettres en boucle. Mécanisme où un service (e-commerce, CRM, paiement) envoie une requête HTTP à votre URL lorsqu'un événement se produit (nouvelle commande, paiement reçu, lead créé). Vous n'avez pas à interroger en continu (polling) : le partenaire « pousse » l'information. Essentiel pour l'automatisation en temps réel : mise à jour stock, synchro CRM, relances panier abandonné. Votre serveur doit exposer une URL publique, vérifier la signature du webhook et répondre rapidement (200) pour éviter les retries.
Comment ça marche ?
Vous enregistrez une URL auprès du service partenaire. Quand l'événement a lieu, le service envoie une requête POST à cette URL avec un payload (JSON en général). Votre serveur traite la requête (vérification signature, parsing, mise à jour BDD, déclenchement d'actions) et renvoie 2xx. En cas d'échec (timeout, 5xx), le partenaire réessaie selon sa politique.
Impact business
Les webhooks permettent d'enchaîner des actions sans délai : commande → facturation, lead → création de ticket, paiement → envoi d'email. Vital pour l'e-commerce (notifications commande, stock) et le marketing (événements, scoring). Sans webhook, vous dépendez du polling ou d'actions manuelles, ce qui ralentit et alourdit les process. Les grands opérateurs paiement et e-commerce traitent chaque jour des centaines de millions d'événements en push : sans webhooks fiables, stocks, factures et relances restent souvent désynchronisés de plusieurs minutes à plusieurs heures.
Bonnes pratiques
- Toujours valider la signature (HMAC, secret partagé). Répondre 200 rapidement et traiter en asynchrone si besoin. Rendre l'endpoint idempotent (éviter de dupliquer les effets). Logger les payloads pour le debug.
Erreurs communes
- Ne pas vérifier la signature du webhook (risque de requêtes forgées). Traiter de façon synchrone des actions lourdes (le partenaire attend la réponse). Ne pas gérer les doublons (même événement envoyé plusieurs fois).
Prompt IA
Contexte : besoin [recevoir les commandes / notifier un paiement / synchroniser un CRM]. Service émetteur : [Shopify / Stripe / autre]. Explique ce qu'est un webhook en une phrase. Donne les étapes pour exposer une URL (route API), vérifier la signature et traiter l'événement. Indique comment gérer les retries et les erreurs.
SERVICE LIÉ
Passer de la définition à un projet concret.
Site e-commerce
Approfondir ce sujet dans le cadre d’un accompagnement adapté à votre contexte.
À LIRE AUSSI
Guides plus complets sur le blog.
QUESTIONS FRÉQUENTES
Aller plus loin sur Webhook.
L'API : vous appelez le service (vous êtes client). Le webhook : le service vous appelle (vous êtes serveur). L'API sert à récupérer ou envoyer des données à la demande ; le webhook sert à être notifié en temps réel.
La plupart des services réessaient (retries) avec un backoff. Vérifiez la doc pour le nombre de tentatives et la fenêtre. Mettez en place une file d'attente côté réception pour absorber les pics et éviter les timeouts.
Utilisez un tunnel (ngrok, Cloudflare Tunnel) qui expose votre localhost à une URL publique. Enregistrez cette URL dans le dashboard du partenaire. Vous recevrez les événements en direct pendant le dev.
