Créer un webhook
Depuis le tableau de bord marchand, ouvrez Développeurs, puis Webhooks. Cliquez ensuite sur Ajouter pour enregistrer un nouveau webhook. Le formulaire demande les informations suivantes :
Vous pouvez activer un ou plusieurs événements sur le même webhook. Seuls les événements cochés seront envoyés à l’URL configurée.
Le champ Hash secret doit contenir la valeur que votre serveur comparera à l’en-tête
Secret-Hash. Le mécanisme actuel transmet cette valeur telle quelle : il ne calcule pas une signature HMAC du corps JSON.
Attention : ne partagez jamais le hash secret de votre webhook. Il permet à votre serveur de vérifier que la notification provient bien de iPayMoney.Après avoir choisi les événements à recevoir, cliquez sur Enregistrer.
Recevoir une notification
Lorsqu’un événement actif se produit, iPayMoney envoie une requêtePOST vers votre URL avec un corps JSON et les en-têtes suivants :
Secret-Hash, traiter le corps JSON, puis retourner une réponse HTTP 2xx lorsque la notification est bien reçue. Les réponses hors 2xx et les erreurs réseau sont enregistrées dans l’historique du webhook.
Attention : ne considérez pas le webhook comme l’unique preuve d’un paiement et ne supposez pas qu’un envoi échoué sera rejoué jusqu’au succès. Conservez la référence et utilisez l’endpoint de vérification pour la réconciliation.
Événements disponibles
Format du payload
Toutes les notifications utilisent la même structure de base :Champs du payload
Selon l’origine du paiement, iPayMoney peut aussi ajouter :
Exemples de payloads
Paiement réussi :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 notifications envoyées. 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. - Retournez rapidement une réponse HTTP
2xxaprès réception. - Rendez votre traitement idempotent en utilisant la référence iPayMoney
reference. - Ne dépendez pas de l’ordre exact des notifications : vérifiez toujours le
statusdu paiement reçu. - Acceptez qu’une notification puisse être reçue plusieurs fois ou ne pas parvenir à votre serveur.
- Réconciliez les paiements restés en attente avec
GET /api/v1/payments/{reference}.
