Cycle de vie d'une transaction
Chaque transaction passe par différents statuts qui sont définis à partir de deux paramètres :
- status : statut simplifié de la transaction
- detailedStatus : statut détaillé de la transaction
Paramètre status
Le paramètre status contient le statut simplifié de la transaction :
- Il permet de savoir simplement si la transaction est payée ou non,
- Il reste le même quel que soit le mode de paiement.
Les différentes valeurs possibles sont données dans le tableau ci-dessous. Si la colonne FIN est cochée, cela signifie que le statut de la transaction ne pourra plus changer sans une intervention spécifique de la part du marchand (comme l'annulation).
status | Description | fin |
---|---|---|
PAID | La transaction a été payée | ✔ |
RUNNING | Le traitement de la transaction est en cours | |
UNPAID | La transaction n'est pas payée | ✔ |
ABANDONED | La transaction n’est pas créée et n’est donc pas visible dans le | ✔ |
Paramètre detailedStatus
Le paramètre detailedStatus donne des informations détaillées sur le statut du paiement. Chacun des statuts est propre au moyen de paiement utilisé.
detailedStatus | status | Description | fin |
---|---|---|---|
ACCEPTED | PAID | Statut d'une transaction de type VERIFICATION dont l'autorisation ou la demande de renseignement a été acceptée. Ce statut ne peut évoluer. Les transactions dont le statut est "ACCEPTED" ne sont jamais remises en banque. Une transaction de type VERIFICATION est créée lors de la mise à jour ou la création d'un alias sans paiement. | ✔ |
AUTHORISED | PAID | Le montant est autorisé et va être capturé automatiquement. | |
CAPTURED | PAID | Le montant de la transaction a été autorisé. | ✔ |
PRE_AUTHORISED | PAID | Statut d'une transaction de type PRE_AUTHORISATION dont l'autorisation a été acceptée. Ce statut ne peut évoluer. Les transactions dont le statut est "PRE_AUTHORISED" ne sont jamais remises en banque. | ✔ |
AUTHORISED_TO_VALIDATE | RUNNING | La transaction, créée en validation manuelle, est autorisée. Le marchand doit valider manuellement la transaction afin qu'elle soit remise en banque. La transaction peut être validée tant que la date d'expiration de la demande d'autorisation n’est pas dépassée. Si cette date est dépassée alors le paiement prend le statut EXPIRED. Le statut Expiré est définitif. | |
WAITING_AUTHORISATION | RUNNING | La transaction n'a pas encore été autorisée car le délai de remise est supérieur à la durée de validité de l'autorisation. La demande d’autorisation sera déclenchée automatiquement à J-1 avant la date de remise en banque. La remise en banque sera automatique. | |
WAITING_AUTHORISATION_TO_VALIDATE | RUNNING | Le moyen de paiement a été vérifié mais la transaction n'a pas encore été autorisée car le délai de remise est supérieur à la durée de validité de l'autorisation. La demande d’autorisation sera déclenchée automatiquement à J-1 avant la date de remise en banque et une intervention manuelle sera nécessaire pour confirmer l'autorisation. Rien ne garantit que la demande d'autorisation sera acceptée. | |
WAITING_FOR_PAYMENT | RUNNING | La transaction a été crée en attente de paiement. Ce statut n'est pas final. | |
UNDER_VERIFICATION | RUNNING | En attente de la réponse de l'acquéreur. Ce statut est temporaire. Pour les transactions PayPal, cette valeur signifie que PayPal retient la transaction pour suspicion de fraude. | |
REFUSED | UNPAID | La transaction a été refusée. | ✔ |
ERROR | UNPAID | Une erreur non prévue a eu lieu. | ✔ |
CAPTURE_FAILED | UNPAID | La remise de la transaction a échoué. Contactez le Support. | ✔ |
CANCELLED | UNPAID | La transaction a été annulée. | ✔ |
EXPIRED | UNPAID | La transaction est expirée (le marchand ne l'a pas validé dans le délai imparti). | ✔ |
Transaction et commande
Lors de la création d'une transaction, celle ci est encapsulée dans un objet de haut niveau : l'objet Payment. Cet objet contient différents statuts sur la commande, ainsi qu'une liste de transactions.
L'état de la commande est défini à partir des deux paramètres suivants :
- orderCycle : peut valoir OPEN ou CLOSED.
- orderStatus : consolidation du paramètre status des transactions associées à la commande.
Pour plus de détails, rendez-vous ici : Référence de l'objet Payment.