Skip to main content
Mercy Pay envoie un événement à votre serveur à chaque changement de statut d’un paiement ou d’un payout. C’est la seule source sur laquelle vous pouvez vraiment vous appuyer pour confirmer un encaissement, bien plus fiable qu’une redirection navigateur.
1

Déclarez l'endpoint

Depuis Webhooks dans votre tableau de bord, ajoutez une URL HTTPS publique et cochez les événements voulus. Mercy Pay affiche alors le secret de signature (whsec_…) : copiez-le immédiatement, il ne sera plus affiché.
2

Vérifiez la signature

Chaque requête porte l’en-tête X-MercyPay-Signature, égal au HMAC-SHA256 en hexadécimal du corps brut de la requête, calculé avec votre secret. Voir Sécurité des webhooks.
Vérifiez le corps tel qu’il est reçu, avant tout JSON.parse.
3

Répondez vite, traitez après

Répondez 2xx dès que la signature est validée, avant de lancer un traitement lourd. Mercy Pay n’attend que 10 secondes. Passé ce délai, ou sur une réponse qui n’est pas 2xx, la livraison est considérée en échec et reprise plus tard.Après 5 tentatives infructueuses, Mercy Pay abandonne. À ce stade, l’information reste consultable via l’API : rien n’est perdu, mais vous ne serez plus relancé.
4

Dédupliquez par identifiant

Une même livraison peut vous arriver deux fois. Un réseau qui coupe juste après votre 2xx suffit à le provoquer. Chaque événement porte un id (evt_…) : enregistrez ceux que vous avez déjà traités et ignorez les doublons.

Exemple d’événement