Créer un webhook
Depuis le tableau de bord marchand, ouvrez Développeurs, puis Webhooks. Cliquez ensuite sur Ajouter pour enregistrer un nouveau webhook.

Vous pouvez activer un ou plusieurs événements sur le même webhook. Seuls les événements cochés sont envoyés à l’URL configurée.

Important — nature duSecret-Hash: ce n’est pas une signature calculée à partir du corps de la notification (pas de HMAC, pas de hash du payload). C’est un secret partagé statique : vous choisissez sa valeur en créant le webhook, et iMoney Encaissement se contente de la recopier telle quelle dans l’en-têteSecret-Hashà chaque envoi. Votre serveur doit simplement comparer la valeur reçue à celle que vous avez configurée — il n’y a rien à recalculer.

Attention : ne partagez jamais le hash secret de votre webhook. C’est la seule information qui permette à votre serveur de vérifier qu’une notification provient bien de iMoney Encaissement plutôt que d’un tiers qui aurait deviné votre URL.Après avoir choisi les événements à recevoir, cliquez sur Enregistrer.

Événements disponibles
Cinq événements existent, tous liés au cycle de vie d’un paiement :
Il n’existe pas d’autre événement que ces cinq : n’activez que ceux dont votre intégration a réellement besoin.
Recevoir une notification
Lorsqu’un événement actif se produit, iMoney Encaissement envoie une requêtePOST vers votre URL avec un corps JSON et les en-têtes suivants :
- vérifier que
Secret-Hashcorrespond bien à la valeur configurée dans le dashboard ; - traiter le corps JSON ;
- retourner une réponse HTTP
2xxpour confirmer la bonne réception.
2xx et les erreurs réseau (timeout, endpoint injoignable) sont enregistrées dans l’historique du webhook.
Format du payload
Toutes les notifications utilisent la même structure de base :Champs du payload
Selon l’origine du paiement, iMoney Encaissement peut aussi ajouter les champs suivants — ils ne sont pas présents sur toutes les notifications :
Sur un paiement échoué,
failure_reason porte le motif du refus lorsqu’il est fourni et validated_at reste null ; les
valeurs possibles de status et le contrat complet des champs d’un paiement (types, contraintes)
sont décrits dans Consulter une transaction.
Comportement de nouvel essai
iMoney Encaissement envoie la notification une fois dès que l’événement se produit, puis programme dix minutes plus tard un envoi de rattrapage. Ce rattrapage ne part que si aucune tentative d’envoi n’a été enregistrée pour cet événement. Or une tentative est enregistrée dans les deux cas : quand votre serveur a répondu, et quand l’envoi a échoué (endpoint injoignable, réponse hors2xx, timeout). Ce qu’il faut en retenir :
- un envoi qui échoue n’est pas rejoué : le rattrapage de dix minutes ne couvre que le cas où aucun envoi n’a eu lieu, pas celui d’un envoi qui s’est mal passé ;
- il n’existe pas de relances illimitées ni de nombre de tentatives configurable ;
- dès lors qu’une tentative a échoué, votre application ne recevra plus de notification pour cet événement et doit se rabattre sur Consulter une transaction pour connaître le statut définitif.
pending plus longtemps qu’attendu. C’est la consultation, et non la notification, qui fait foi.
Consulter l’historique
La page Webhooks affiche les webhooks configurés avec leur URL, les événements actifs, leur date de création et les actions disponibles. Pour chaque webhook, le bouton Logs permet de consulter l’historique des tentatives d’envoi, y compris l’envoi de rattrapage le cas échéant. L’historique affiche :- la référence du paiement ;
- l’événement envoyé ;
- le statut HTTP retourné par votre serveur ;
- le corps de la requête envoyée ;
- la réponse retournée par votre serveur ;
- la date d’envoi.
Bonnes pratiques
- Utilisez une URL HTTPS publique et stable.
- Vérifiez toujours l’en-tête
Secret-Hashavant de traiter la notification — c’est une comparaison directe avec la valeur que vous avez configurée, pas un calcul cryptographique. - Retournez rapidement une réponse HTTP
2xxaprès réception, avant de lancer un traitement long. - Rendez votre traitement idempotent en utilisant la référence iMoney Encaissement
reference: ne traitez pas deux fois le même événement si une notification vous parvient en double. - Ne dépendez pas de l’ordre exact des notifications : vérifiez toujours le
statusreçu plutôt que de supposer une séquence. - N’attendez pas indéfiniment un webhook qui n’arrive jamais : réconciliez les paiements restés en attente avec Consulter une transaction.
