Principe
La confirmation finale d’une transaction est envoyée de façon asynchrone à votreipn_url.
Exemple IPN – Succès
Exemple IPN – Échec
Champs du payload IPN
| Champ | Type | Description |
|---|---|---|
transaction_id | string | Identifiant unique de la transaction |
state | string | État de la transaction : SUCCESSFUL ou FAILED |
amount | number | Montant de la transaction en FCFA |
benefice | number | Bénéfice de la transaction |
commission | number | Commission appliquée |
destination | string | Numéro du bénéficiaire |
fee | number | Frais de transaction |
reponse | string | Message de succès (si SUCCESSFUL) |
error | string | Message d’erreur (si FAILED) |
service_id | number | Identifiant du service utilisé |
customer_name | string | Nom du client/partenaire |
custom_data | string | Données personnalisées envoyées à l’initiation |
ipn_url | string | URL de callback utilisée |
provider_id | number/null | Identifiant du fournisseur |
sms_link | number | Indicateur de lien SMS |
created_at | string | Date de création (ISO 8601) |
updated_at | string | Date de mise à jour (ISO 8601) |
ipn_state | number | État de l’IPN |
hash | string | Cette valeur vient confirmer que la réponse du webhook provient véritablement de EasyTransfert |
États possibles
| État | Description |
|---|---|
SUCCESSFUL | Transaction réussie |
FAILED | Transaction échouée |
Recommandations
- Toujours répondre HTTP 200 OK à l’IPN pour confirmer la réception
- Vérifier l’unicité du
transaction_idpour éviter les traitements en double - Utiliser
custom_datapour faire le lien avec votre système interne - Vérifier que la réponse provient de nous véritablement à partir du
hash
