Issued: 18th March 2025 | TB-1528



In Payments v2, the payment object may now contain a new object called errorInfo. The errorInfo object holds information about errors that have caused payment failures.
This object will be populated if the status is final and the payment is not successful, and there has been an error that caused payment rejection, or prevented Token.io from reaching the bank and updating the status within the allotted time.
For example, the errorInfo object might look like the example below if Token.io couldn't reach the bank during status polling for a decoupled authentication (the status would be INITIATION_EXPIRED) or payment initiation (the status would be INITIATION_FAILED).
"errorInfo" : {
"httpErrorCode" : 503,
"message" : "UNAVAILABLE: HTTP connection failed",
"tokenExternalError" : true,
"tokenTraceId" : "eASI3Onqkpi1unAM59O5"
}The tokenExternalError field can be populated as a result of both 4xx and 5xx errors. We recommend that you only rely on it for 5xx errors.
The new errorInfo object will make it easier to retrieve information about the error that has resulted in a payment failure. It will also indicate if the error has been thrown by the bank, which is particularly important for 5xx error codes.
This change affects all Payments v2 responses where an error is generated as a result of a payment failure.
Please check for any backward compatibility issues to ensure that adding the new object doesn't break your integration.
This change will become effective from 8th April 2025.
For assistance with the above and other operational aspects of the Token.io Account-to-Account Infrastructure, please contact Token.io Support.