Dépense de points (points_redemption/created)
Enkore envoie un webhook à chaque fois qu'un consommateur échange ses points contre une récompense. Ce document décrit le payload de cet événement et son déclencheur.
Les headers, la signature HMAC et la politique de réessai sont communs à tous les webhooks et sont décrits dans Livraison et signature des webhooks.
Déclencheur
Le webhook points_redemption/created est émis lorsqu'un consommateur échange ses points contre
une récompense du programme de fidélité, une fois le bon de réduction créé sur votre
boutique.
Seuls les échanges de points déclenchent cet événement. Les bons de parrainage (filleul ou parrain) ne consomment pas de points et ne font l'objet d'aucun envoi.
Si la création du bon échoue sur votre boutique, les points restent débités mais aucun webhook n'est envoyé : l'incident est traité par le support Enkore.
Format du payload
Enkore envoie une requête POST en application/json vers l'URL configurée dans le back-office.
Exemple de payload
{
"event": "points_redemption/created",
"customerId": 42,
"rewardReference": "bon-10-euros",
"pointsSpent": 500,
"voucherCode": "ENK_7XK2P9QMRA",
"balance": 870,
"obtainedAt": "2026-09-11T10:00:00.000Z"
}
Description des champs
| Champ | Type | Description |
|---|---|---|
event | string | Toujours "points_redemption/created" |
customerId | number | Identifiant externe du consommateur (correspond à l'ID dans votre plateforme e-commerce) |
rewardReference | string | Référence de la récompense échangée, telle que configurée dans le back-office |
pointsSpent | number | Nombre de points débités par l'échange |
voucherCode | string | Code du bon de réduction créé sur votre boutique. Unique par échange |
balance | number | Solde de points du consommateur, recalculé au moment de l'envoi |
obtainedAt | string | Date de l'échange, au format ISO 8601 (UTC) |
Un échange n'est rattaché à aucune commande : ce payload ne porte pas d'orderId. Le bon
pourra être utilisé plus tard dans une commande, qui fera l'objet de ses propres événements.
Points d'attention côté réception
- L'envoi est asynchrone et intervient peu après l'échange : ne présumez pas d'un ordre d'arrivée strict entre ce webhook et vos autres flux.
balanceest le solde au moment de l'envoi, pas un simpleancien solde − pointsSpent: d'autres opérations (gain, expiration, déduction) ont pu avoir lieu entre-temps.- Rendez le traitement idempotent : un même événement peut être livré plusieurs fois. Le
voucherCode, unique par échange, identifie l'événement métier (voir la section déduplication de la page commune).