Signé HMAC-SHA256 · event_id déterministe · Relance en 6 étapes

Événements Webhook de Paiement Crypto Unifiés et Architecture de Livraison.

Automatisez le traitement des commandes, les mises à niveau de sièges SaaS, les recharges de solde joueur et l'émission de licences logicielles ES256 grâce à des notifications signées et idempotentes HMAC-SHA256 webhooks sur les 12 blockchains prises en charge.

Sélectionner le type d'événement (9 événements canoniques)

En-têtes HTTP et Charge Utile JSON de l'Événement


        

Vérification HMAC-SHA256 à Temps Constant (6 Langages)


    
Fiabilité

Calendrier de Relance Exponentielle en 6 Étapes

Les réponses hors 2xx déclenchent des relances automatiques à 30s → 2m → 10m → 1h → 6h → 24h, ainsi qu'un renvoi manuel en 1 clic dans vos journaux Webhook Marchand.

Intégrité du Grand Livre

Idempotence par event_id Unique

Stockez event_id comme clé UNIQUE en base de données avant de créditer les soldes ou de livrer des biens numériques afin que les relances ne dupliquent jamais l'exécution.

Sécurité Sortante

Épinglage TLS et Durcissement anti-SSRF

XPayr impose HTTPS strict, la résolution d'IP publique épinglée au DNS, CURLOPT_FOLLOWLOCATION=falseet des en-têtes d'horodatage avec fenêtre anti-rejeu de 5 minutes.

FAQ Webhooks et Rappels

Comment vérifier qu'un webhook provient bien de XPayr ?

Calculez le HMAC-SHA256 sur le corps brut exact non analysé de la requête HTTP à l'aide de votre secret whsec_ et comparez l'empreinte hexadécimale à X-XPayr-Signature avec une fonction à temps constant telle que crypto.timingSafeEqual (Node.js), hmac.compare_digest (Python) ou hash_equals (PHP).

Quelle est la différence entre payment.completed et payment.underpaid_accepted ?

payment.completed se déclenche lorsque le transfert on-chain égale ou dépasse le montant exact de la facture. payment.underpaid_accepted se déclenche lorsqu'un retrait QR direct depuis un exchange arrive dans le seuil de tolérance de 1% (max. $0.50) de XPayr, exposant requested_amount et received_amount pour garder votre grand livre exact au centime près.

Comment XPayr gère-t-il l'indisponibilité d'un point de terminaison ou les réponses 5xx ?

Toute réponse en dehors de HTTP 200–299 (ou prenant plus de 10 secondes) entre dans la file de relance à recul exponentiel de XPayr (30s, 2m, 10m, 1h, 6h, 24h) tout en conservant le même event_id afin que votre table d'idempotence empêche tout double crédit.

Quelles règles de sécurité d'URL s'appliquent aux points de terminaison webhook des marchands ?

Les destinations webhook de production doivent utiliser HTTPS sur des DNS/IP publics routables avec des certificats TLS valides. XPayr bloque le HTTP en clair, les plages privées/loopback RFC1918, les IP de métadonnées cloud et les redirections HTTP afin de prévenir les attaques SSRF.