Token.io provides a mock bank that enables you to test different scenarios for your single immediate payment integration.
The bank is called 'Mock redirect' and can be found on the Bank selection page of the Hosted Pages. The bankId is mock-redirect.
This is for banks that require 2-steps to complete payment initiation.
Support for banks that require a single step is coming soon.
SIP scenarios can be tested by varying the value of the lifetimeAmount field in the token request. For a lifetimeAmount of between 116-119, the statusReasonInformation field in the response will also be populated.
| lifetimeAmount | Status/Status Reason Information | Description |
|---|---|---|
| 101 | Transfer status = SUCCESS (transitions through PROCESSING) | Reproduces a successful payment initiation. |
| 103 | Transfer status = FAILURE_GENERIC (transitions through PROCESSING) | Reproduces the FAILURE_GENERIC transfer status. This status usually indicates a technical failure. Possibly, a failure callback was received from the bank, with no transaction status and no further information. |
| 104 | Transfer status = FAILURE_PERMISSION_DENIED (transitions through PROCESSING) | Reproduces the FAILURE_PERMISSION_DENIED transfer status. This status indicates that the user has been denied authorization with the bank. This status is only relevant for 2-step payment flows. |
| 105 | Transfer status = PROCESSING | Reproduces the PROCESSING transfer status. The transaction will not reach a final status and it will automatically transition to INITIATED after 30 days. |
| 106 | Transfer status = FAILURE_CANCELED (transitions through PROCESSING) | Reproduces the FAILURE_CANCELED transfer status. This status indicates that the payment initiation has been cancelled before execution. |
| 108 | Transfer status = FAILURE_INSUFFICENT_FUNDS (transitions through PROCESSING) | Reproduces the FAILURE_INSUFFICENT_FUNDS transfer status. |
| 110 | Transfer status = INITIATED (transitions through PROCESSING) | Reproduces the INITIATED transfer status. The transaction has been initiated but the result is unknown. This is the final status and will not get updated later. |
| 112 | Transfer status = FAILURE_DECLINED (transitions through PROCESSING) | Reproduces the FAILURE_DECLINED transfer status. This status indicates that the payment initiation has been rejected by the bank. |
| 116 | Request status = REJECTED | Status Reason Information = “Insufficient funds in selected account to make requested payment.” Reproduces the scenario when no transfer is created, but the bank has rejected the payment due to insufficient funds. Error messages can vary from bank to bank and this is only an example. |
| 117 | Request status = REJECTED | Status Reason Information = "PERMISSION_DENIED:Forbidden: {"error":"FORBIDDEN","error_code":"TEST36","error_description":"Customer profile does not permit this action."}" Reproduces the scenario when no transfer is created and the bank rejects the payment initiation call because of permission denied. Error messages can vary from bank to bank and this is only an example. |
| 118 | Transfer status = FAILURE_DECLINED (transitions through PROCESSING) | Status Reason Information = CUST. Reproduces the scenario when transfer status is FAILURE_DECLINED and the decline reason populated in the statusReasonInformation field is the ISO 20022 decline reason "CUST". Decline reasons can vary from bank to bank and this is only an example. |
| 119 | Transfer status = FAILURE_DECLINED (transitions through PROCESSING) | Status Reason Information = "The order was not executed. Order leads to exceeding the agreed daily limit." Reproduces the scenario when transfer status is FAILURE_DECLINED and the decline reason populated in the statusReasonInformation field contains a decline description pointing to daily limit exceeded. Decline reasons can vary from bank to bank and this is only an example. |
If you have any feedback about the developer documentation, please contact devdocs@token.io