Webhooks
Webhooks
CaurisPay notifie votre callbackUrl à chaque changement de statut d'une demande de paiement. Chaque requête est signée, vérifiez toujours la signature avant de traiter l'événement.
Format général
Toutes les requêtes webhook suivent le même format : un event et un objet data contenant le token de la demande concernée.
POST {votre callbackUrl}
{
"event": "payment_request.paid",
"data": {
"token": "CAURISPAY-PAYMENT-20260705T113416274Z-161"
}
}À savoir
Le webhook ne contient que le
token — pour connaître le montant, la devise ou le détail complet de la demande, appelez Consulter le statut avec ce token.Événements disponibles
payment_request.notifiedEnvoyé immédiatement après la création, dès que la notification part au payeur
{
"event": "payment_request.notified",
"data": {
"token": "CAURISPAY-PAYMENT-20260705T113416274Z-161"
}
}payment_request.paidLe payeur a confirmé avec son code PIN, le transfert est exécuté
{
"event": "payment_request.paid",
"data": {
"token": "CAURISPAY-PAYMENT-20260705T113416274Z-161"
}
}payment_request.rejectedLe payeur a explicitement refusé la demande
{
"event": "payment_request.rejected",
"data": {
"token": "CAURISPAY-PAYMENT-20260705T113416274Z-161"
}
}payment_request.expiredLe délai de 5 minutes a été dépassé sans réponse du payeur
{
"event": "payment_request.expired",
"data": {
"token": "CAURISPAY-PAYMENT-20260705T113416274Z-161"
}
}payment_request.cancelledVous avez annulé la demande via l'endpoint DELETE
{
"event": "payment_request.cancelled",
"data": {
"token": "CAURISPAY-PAYMENT-20260705T113416274Z-161"
}
}Attention
Répondez toujours
200 rapidement, même si le traitement métier prend du temps — faites-le en asynchrone après avoir répondu.Étape suivante
Apprenez à vérifier la signature de chaque webhook reçu.
