Passer au contenu principal
Un paiement se décrit à deux niveaux : l’intention de paiement (la demande globale) et ses tentatives (chaque exécution sur une passerelle). Chacun a ses statuts, soit transitoires (en mouvement), soit finaux (terminaux).

Statuts d’intention de paiement

StatutTypeSignification
pendingTransitoireCréée et pas encore résolue ; une ou plusieurs tentatives peuvent être en cours.
completedFinalPayée avec succès.
failedFinalToutes les tentatives ont échoué.
expiredFinalNon aboutie avant expiration.
partially_refundedFinalAboutie, puis partiellement remboursée.
refundedFinalAboutie, puis entièrement remboursée.

Statuts de tentative de paiement

StatutTypeSignification
processingTransitoireEnvoyée à la passerelle, en attente du résultat.
action_requiredTransitoireLe client doit agir (OTP, redirection, QR, validation). Lisez next_action.
completedFinalCapturée avec succès.
failedFinalRefusée. Lisez l’objet failure.
cancelledFinalAbandonné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_refunded ou refunded.
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.