Webhooks & événements

Plutôt que d'interroger régulièrement un système pour savoir si quelque chose a changé, le webhook vous notifie instantanément. Une commande arrive, un paiement est validé, un document est signé : l'information déclenche immédiatement les actions appropriées.

Webhooks et notifications temps réel

Polling vs webhooks

L'approche traditionnelle consiste à interroger régulièrement une API : "Y a-t-il du nouveau ? Y a-t-il du nouveau ?" C'est le polling. Il consomme des ressources, introduit des délais, et la plupart des requêtes reviennent vides.

Le webhook inverse la logique. C'est l'application source qui prévient quand quelque chose se passe. Pas de requêtes inutiles, pas de délai, réaction immédiate.

Fonctionnement technique

Un webhook est une URL que vous exposez. Quand un événement se produit dans l'application source, elle envoie une requête HTTP à cette URL avec les données de l'événement. Votre système reçoit l'information et déclenche les actions programmées.

La configuration se fait généralement dans l'application source : vous indiquez l'URL de votre webhook et les types d'événements qui vous intéressent.

Cas d'usage courants

Notifications de paiement

Stripe, PayPal, les banques envoient des webhooks quand un paiement est effectué, échoué, ou remboursé. Votre système peut immédiatement mettre à jour la commande, envoyer la confirmation, déclencher la livraison.

Synchronisation e-commerce

Une nouvelle commande sur Shopify déclenche un webhook. Votre ERP reçoit l'information, crée la commande en interne, réserve le stock, notifie l'entrepôt. Tout cela en quelques secondes.

Signature électronique

DocuSign, Yousign envoient un webhook quand un document est signé. Le workflow peut continuer automatiquement : archivage du document, notification des parties, déclenchement de l'étape suivante.

CRM et marketing

Un prospect remplit un formulaire, un contact change de statut, une opportunité est gagnée. Les webhooks permettent de synchroniser ces événements avec d'autres systèmes en temps réel.

Architecture événementielle

Les webhooks s'inscrivent dans une architecture plus large orientée événements. Chaque action significative génère un événement. Ces événements peuvent déclencher plusieurs réactions indépendantes.

Cette approche découple les systèmes : l'émetteur de l'événement n'a pas besoin de connaître tous les consommateurs. De nouveaux traitements peuvent être ajoutés sans modifier l'émetteur.

Fiabilité et reprise

Idempotence

Un webhook peut être envoyé plusieurs fois (retry en cas d'échec). Le traitement doit être idempotent : recevoir deux fois le même événement ne doit pas créer deux commandes.

File d'attente

Pour les volumes importants, une file d'attente (queue) absorbe les pics de charge. Les webhooks sont stockés et traités de manière ordonnée, sans perte même en cas de surcharge temporaire.

Retry et alertes

Si le traitement échoue, le système réessaie automatiquement. Après plusieurs échecs, une alerte prévient l'équipe technique. Les événements non traités sont conservés pour analyse.

Sécurité des webhooks

Vérification de signature

Comment s'assurer que le webhook vient bien de l'application attendue et non d'un attaquant ? La plupart des services signent leurs webhooks avec une clé secrète. Votre système vérifie la signature avant de traiter.

HTTPS obligatoire

Les webhooks transitent par Internet. Le chiffrement HTTPS protège les données en transit. Les endpoints en HTTP simple sont à proscrire.

Validation des données

Les données reçues doivent être validées avant traitement. Un webhook malformé ou contenant des données inattendues ne doit pas faire planter le système.

Cas concret : marketplace aux Antilles

Une marketplace antillaise recevait les commandes par email des vendeurs partenaires. Le traitement manuel prenait des heures, avec des erreurs fréquentes et des délais de réponse aux clients.

L'intégration par webhooks a automatisé le flux. La commande client déclenche un webhook vers le vendeur concerné. La confirmation de préparation remonte par webhook. Le client est notifié automatiquement à chaque étape.

Monitoring des webhooks

Les webhooks doivent être surveillés comme tout composant critique. Taux de succès, temps de traitement, erreurs récurrentes. La supervision détecte les anomalies avant qu'elles n'impactent l'activité.

Développement et tests

Tester des webhooks en développement nécessite des outils spécifiques. Les tunnels locaux (ngrok) exposent temporairement votre machine de développement. Les services de test (webhook.site) permettent d'inspecter les requêtes reçues.

Les environnements de staging reproduisent les webhooks de production pour valider les intégrations avant mise en ligne.

Passez au temps réel

Discutons des événements à capturer pour automatiser vos processus.

Contacter via WhatsApp