Statuts d’intention de paiement
| Statut | Type | Signification |
|---|---|---|
pending | Transitoire | Créée et pas encore résolue ; une ou plusieurs tentatives peuvent être en cours. |
completed | Final | Payée avec succès. |
failed | Final | Toutes les tentatives ont échoué. |
expired | Final | Non aboutie avant expiration. |
partially_refunded | Final | Aboutie, puis partiellement remboursée. |
refunded | Final | Aboutie, puis entièrement remboursée. |
Statuts de tentative de paiement
| Statut | Type | Signification |
|---|---|---|
processing | Transitoire | Envoyée à la passerelle, en attente du résultat. |
action_required | Transitoire | Le client doit agir (OTP, redirection, QR, validation). Lisez next_action. |
completed | Final | Capturée avec succès. |
failed | Final | Refusée. Lisez l’objet failure. |
cancelled | Final | Abandonnée. |
Comment les deux se relient
- Une tentative completed fait aboutir l’intention.
- Quand toutes les tentatives échouent (après tout basculement automatique), l’intention passe à failed.
- Un remboursement completed fait passer l’intention à
partially_refundedourefunded.
Seuls
pending (intention) et processing / action_required (tentative) ne sont pas
terminaux. Traitez tout autre statut comme final. Le statut faisant autorité vient toujours
de l’API — voir Vérifier un paiement.Codes d’échec
Lorsqu’une tentative passe àfailed, le champ failure.code contient un objet structuré :
| Champ | Type | Description |
|---|---|---|
value | string | Code machine lisible, ex. INSUFFICIENT_BALANCE. |
category | string | Catégorie de haut niveau (voir ci-dessous). |
message | string|null | Description lisible à destination du marchand. |
Catégories d’échec
| Catégorie | Signification |
|---|---|
GATEWAY_ERROR | Panne ou refus côté prestataire. Un basculement peut réussir. |
CUSTOMER_ERROR | Corrigeable par le client : mauvaise carte, solde insuffisant, annulation. |
TELCO_ERROR | Défaillance de l’opérateur mobile. |
MERCHANT_CONFIG_ERROR | Mauvaise configuration : routage, identifiants passerelle. ROUTING_NOT_CONFIGURED entre ici. |
PLATFORM_ERROR | Défaut de la plateforme — contactez le support si persistant. |
SECURITY_ERROR | Blocage intégrité ou fraude. |