Understanding Payment Initiation Status: Values and Meaning
The table below lists the
Any encountered status that is not listed in the table has been deprecated. It will be removed in the future.
Please do not rely on any status not specified below.
Status | Description |
Final/Intermediate |
---|---|---|
PROCESSING
|
This status indicates that the transaction is in process and that the final status has not been received from the bank. |
Intermediate |
SUCCESS
|
This status indicates that successful payment initiation has been received from the bank. Settlement might not be complete. |
Final |
INITIATED
|
This status is set when the previous status has remained as PROCESSING for 30 days and cannot be updated. The transaction has been initiated but the result is unknown. This is the final status and will not get updated later because (Undefined variable: General.Company) has stopped polling the bank. This status is also returned after the user's request has been authorized at the bank and the POST /transfers call has been made to the bank in a 2-step flow, but the result is unknown because the call to the bank has timed out. (Previously, in this scenario the status SENT was returned). |
Final |
PENDING
|
This status indicates that the user has successfully completed the authorization process at the bank and the transfer is pending redemption. This status is only relevant for 2-step payment flows. | Intermediate |
PENDING_EXTERNAL_AUTHORIZATION
|
This status indicates that the user has been sent to the bank to complete the authorization process. If not completed within the allowed timeframe (usually around 15 mins, but there are variations between banks) the transaction will expire and transition to FAILURE_EXPIRED . This status is only relevant for 1-step payment flows. |
Intermediate |
FAILURE_GENERIC
|
This status usually indicates a technical failure. Possibly, a failure callback was received from the bank, with no transaction status and no further information. |
Final |
FAILURE_PERMISSION_DENIED
|
This status indicates that the user has been denied authorization at the bank This status is only relevant for 2-step payment flows. |
Final |
FAILURE_CANCELED
|
This status indicates that the payment initiation has been canceled before execution. |
Final |
FAILURE_EXPIRED
|
This status indicates that the user did not complete the authorization process within the allowed timeframe (usually around 15 mins, but there are variations between banks) and the payment has expired. Token.io will poll the bank for an authorization response for maximum of 30 minutes. If no response has been received in this time, the transaction will be updated to this status. |
Final |
FAILURE_INSUFFICIENT_FUNDS
|
This status indicates that the payment initiation request has been rejected due to insufficient funds. | Final |
FAILURE_DECLINED
|
This status indicates that the payment initiation has been rejected by the bank. |
Final |
Bank-generated paymentId and paymentStatus are included in the payment status response. However, all banks do not return the “final” status to
Please be aware that
For non-instant transfers, TPPs are strongly advised to look at the combination of statuses —
A unique paymentId — DomesticPaymentID defined in the OBIE Open Banking Specification — is provided by UK banks to aid in resolving any domestic payment issues that arise.