Error Messages for Payment Initiation

Error Messages for Payment Initiation

The API standard currently allows for a flexible structure for Error responses in the case of HTTP Status 400, 403, 409 and and 500 responses – where the a TPP receives an object with:

  • Code

  • Message

  • Path

  • URL

The TPP will use Code to display errors to User – so if we want more standardised behaviour - we will add new enums into Code

It is up to the TPP to decide how to manage errors with User.

The Code enumeration may either be one of the prescribed Error Code(s) for the appropriate HTTP Status or a namespaced Error Code where the namespace is the system or organisation that has responded with the error, and the code is the code specific to the system or organisation.

The Message field is a free text for a LFI to communicate additional context to the TPP.

In the scenario where a Payment is initially created with a HTTP Status 201 with a Status of Pending - and subsequently Rejected - the LFI MUST populate the RejectReasonCode.

The RejectReasonCode is a namespaced rejection reason code. The first part of the code is the namespace, which is the name of the organisation or system (e.g., AANI) that is rejecting the payment, and the second part is the specific rejection reason code for the originating organisation or system.

Payments that are rejected by AANI will have the AANI prefix, followed by the specific ANNI reason code.

If the Payment resource is Rejected, and no Payment resource is created - a 4xx HTTP status code is returned to the TPP with the appropriate Error Response.