Transaction lifecycle
Each transaction goes through different statuses that are set using two parameters:
- status : simplified transaction status
- detailedStatus : detailed transaction status
Status parameter
The status parameter contains the simplified status of the transaction:
- It allows to simply know if the transaction has been paid or not.
- It remains the same regardless of the payment mode.
The possible values are presented in the following table. If the END column is checked, it means that the transaction status will not change without a specific action on the merchant’s part (such as cancellation).
status | Description | END |
---|---|---|
PAID | The transaction has been paid. | ✔ |
RUNNING | Transaction processing is in progress | |
UNPAID | The transaction has not been paid. | ✔ |
ABANDONED | The transaction has not been created, and therefore cannot be viewed in the | ✔ |
detailedStatus parameter
The detailedStatus parameter provides detailed information on the payment status. Each of the statuses is specific to the used payment method.
detailedStatus | status | Description | END |
---|---|---|---|
ACCEPTED | PAID | Status of a transaction of type VERIFICATION whose authorization or request for information has been accepted. This status cannot change. Transactions with the status "ACCEPTED" are never put back in the bank. A transaction of type VERIFICATION is created when an alias is updated or created without payment. | ✔ |
AUTHORISED | PAID | The amount is authorized and will be captured automatically. | |
CAPTURED | PAID | The transaction amount has been authorized. | ✔ |
PRE_AUTHORISED | PAID | Status of a transaction of type PRE_AUTHORISED whose authorization has been accepted. This status cannot change. Transactions with the status "PRE_AUTHORISED" are never put back in the bank. | ✔ |
AUTHORISED_TO_VALIDATE | RUNNING | The transaction, created in manual validation, is authorized. The merchant must manually validate the transaction in order for it to be submitted to the bank. The transaction can be validated as long as the expiration date of the authorization request has not passed. If the expiration date has passed then the payment will be set to EXPIRED. Expired status is final. | |
WAITING_AUTHORISATION | RUNNING | The transaction has not yet been authorized as the capture delay exceeds the authorization validity period. An authorization request for the total amount will be automatically made on D-1 before the capture date. The capture in the bank is automatic. | |
WAITING_AUTHORISATION_TO_VALIDATE | RUNNING | The payment method has been verified but the transaction has not yet been authorized because the remittance time is longer than the validity of the authorization. The authorization request will be triggered automatically on D-1 before the remittance date and manual intervention will be required to confirm the authorization. There is no guarantee that the authorization request will be accepted. | |
WAITING_FOR_PAYMENT | RUNNING | The transaction has been created pending payment. This status is not final. | |
UNDER_VERIFICATION | RUNNING | En attente de la réponse de l'acquéreur. Ce statut est temporaire. | |
REFUSED | UNPAID | The transaction has been rejected. | ✔ |
ERROR | UNPAID | An unexpected error has occurred. | ✔ |
CAPTURE_FAILED | UNPAID | Capture failed. Please contact Support. | ✔ |
CANCELLED | UNPAID | The transaction has been canceled. | ✔ |
EXPIRED | UNPAID | The transaction is expired (the merchant did not validate it before the required deadline). | ✔ |
Transaction and order
When a transaction is created, it is encapsulated in a high-level object: the Payment object. This object contains various statuses about the order, as well as a transaction list.
The order status is defined via the following two parameters:
- orderCycle : can be OPEN or CLOSED.
- orderStatus : status parameter consolidation for transactions associated with the order.
For more details, go to: Payment object reference.