# Get Account Transaction Details
source: https://developer.mastercard.com/open-banking-connect/documentation/aisfeatures/get-account-transactions-details/index.md

## Request overview {#request-overview}

The goal of this request is to retrieve from the Account Servicing Payment Service Provider (ASPSP), using the `consentId` which is part of previously obtained consent object, additional information related to a transaction by the specified `accountId` and `transactionId`. This flow assumes the PSU has already consented to this access and the ASPSP system stores this record of consent or `consentId`. For more information, see [Account Information Consent Request](https://developer.mastercard.com/open-banking-connect/documentation/aisfeatures/account-information-consent/index.md).

### Endpoint details {#endpoint-details}

|          **Endpoints/Resources**           | **Method** |                                                **API Profiles**                                                 |                           **Description**                            |
|--------------------------------------------|------------|-----------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------|
| /accounts/account/transactions/transaction | `POST`     | Polish API, NextGenPSD2, STET, Czech Open Banking Standard API Profile, Slovak Banking API Standard API Profile | Reads transaction details for a given transaction on a given account |

The following sequence diagram shows the flow for obtaining the details of a particular transaction of a PSU's account.
Diagram get_transactions_details

## Request scenario {#request-scenario}


API Reference: `POST /accounts/account/transactions/transaction`

#### Request header {#request-header}

N/A

#### Request body {#request-body}

|      **Name**      |                                                                                                          **Purpose**                                                                                                          | **Required by** |                                                                                                  **How it can be used**                                                                                                  | **Condition** | **Multiplicity** |  **Type**   |                                                                                         **Description**                                                                                          |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        **Limitations/Parameters**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|------------------|-------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `requestInfo`      | Includes information about request being processed                                                                                                                                                                            | MC              | This element encapsulates all request information sent to the API Service                                                                                                                                                | M             | 1..1             | Object      | Set of elements used to define the request details                                                                                                                                               | N/A                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `xRequestId`       | ID of the request, unique to the call, as determined by the TPP                                                                                                                                                               | TPP             | A memorable ID could be used to support in a dispute                                                                                                                                                                     | M             | 1..1             | String UUID | Free field that allows for the addition of information that can be referenced for future use                                                                                                     | 36 pattern: `^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `consentId`        | A unique reference to the account information consent stored by the ASPSP. This is required to enable subsequent account information requests related to the consent (for example, to request account or transaction details) | ASPSP           | Pass this value as part of the account information requests related to the consent.                                                                                                                                      | M             | 1..1             | String      | A unique reference to the account information consent stored by the ASPSP. Please note that this is not the original value generated by the ASPSP but a generated 'proxy' value related to that. | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `aspspId`          | ID of a financial institution servicing the Accounts of the PSU                                                                                                                                                               | ASPSP           | Identification of ASPSP                                                                                                                                                                                                  | M             | 1..1             | String UUID | This element is used to specify the identification code of a financial institution which holds PSU accounts                                                                                      | 36                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `isLivePsuRequest` | Indicates if request was actively initiated by PSU                                                                                                                                                                            | ASPSP           | Type of PSU request                                                                                                                                                                                                      | O             | 0..1             | Boolean     | PSU request type                                                                                                                                                                                 | Boolean: `true` or `false`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `psuIPAddress`     | An IP address between PSU and TPP                                                                                                                                                                                             | ASPSP           | It shall be contained only if this request was actively initiated by the PSU                                                                                                                                             | C             | 0..1             | String      | IP address of PSU's terminal device.                                                                                                                                                             | 1-256 Required when isLivePsuRequest=true pattern: `(^(([0-9]` \| `[1-9][0-9]` \| `1[0-9]{2}` \| `2[0-4][0-9]` \| `25[0-5])\.){3}([0-9]` \| `[1-9][0-9]` \| `1[0-9]{2}` \| `2[0-4][0-9]` \| `25[0-5])$)` \| `(^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}` \| `([0-9a-fA-F]{1,4}:){1,7}:` \| `([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}` \| `([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}` \| `([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}` \| `([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}` \| `([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}` \| `[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})` \| `:((:[0-9a-fA-F]{1,4}){1,7}` \| `:)` \| `fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}` \| `::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]` \| `(2[0-4]` \| `1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]` \| `(2[0-4]` \| `1{0,1}[0-9]){0,1}[0-9])` \| `([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]` \| `(2[0-4]` \| `1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]` \| `(2[0-4]` \| `1{0,1}[0-9]){0,1}[0-9]))$)` |
| `psuAgent`         | Indicates the user-agent for the PSU. If the PSU is using the TPP's mobile app, make sure the mobile app user-agent string is different than browser-based user-agent strings.                                                | ASPSP           | If user-agent is supplied to ASPSP, then this information can be used by ASPSP's security mechanisms. To avoid rejections, is is recommended to include this field when providing `isLivePsuRequest` and `psuIPAddress`. | O             | 0..1             | String      | PSU's browser agent details                                                                                                                                                                      | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `psuTppCustomerId` | For Billing purposes                                                                                                                                                                                                          | MC              | Used for identifying the amount of transactions related to a certain PSU                                                                                                                                                 | O             | 0..1             | String      | IIdentifier of the PSU in TPP system used for billing.                                                                                                                                           | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `merchant`         | Collect merchant data for reporting purposes                                                                                                                                                                                  | MC              | Merchant data used for reporting or reconciliation purposes                                                                                                                                                              | O             | 0..1             | Object      | Set of elements used to define the merchant details                                                                                                                                              | N/A                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `id`               | Merchant identification code to identify the merchant                                                                                                                                                                         | MC              | Unique Merchant identifier per TPP, which could be used for reporting/reconciliation purposes                                                                                                                            | M             | 1..1             | String      | Field is available for TPPs to enable capturing of a merchant ID                                                                                                                                 | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `name`             | Merchant name to identify the merchant                                                                                                                                                                                        | MC              | Name of merchant                                                                                                                                                                                                         | M             | 1..1             | String      | Field is available for TPPs to enable capturing of a merchant name                                                                                                                               | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `accountId`        | A unique identifier used to identify the account resource.                                                                                                                                                                    | ASPSP           | Identification of account resource to fetch account data (Use the id received in Get List of Accounts response -- in the `resourceId` field)                                                                             | M             | 1..1             | String      | Account reference identification as returned in the list of accounts.                                                                                                                            | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `transactionId`    | A unique identifier used to identify the transaction resource.                                                                                                                                                                | ASPSP           | Identification of transaction resource to fetch transaction data                                                                                                                                                         | M             | 1..1             | String      | Transaction reference identification                                                                                                                                                             | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

### Response -- Success {#response--success}

HTTP Response Code = 200, OK
Tip: For a list of general response codes and error code structure see [Response and Error Codes](https://developer.mastercard.com/open-banking-connect/documentation/response-and-error-codes/index.md). For specific error codes for this feature see **Feature specific error codes** below.

#### Response header {#response-header}

N/A

#### Response body {#response-body}

|              **Name**               |                                                                                             **Purpose**                                                                                              | **Required by** |                                               **How it can be used**                                                | **Condition** | **Multiplicity** |      **Type**      |                                                                                                                                    **Description**                                                                                                                                     |                                                                                                                                      **Limitations/Parameters**                                                                                                                                      |
|-------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|---------------------------------------------------------------------------------------------------------------------|---------------|------------------|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `originalRequestInfo`               | Returns original request information to the TPP                                                                                                                                                      | MC              | This object contains original request information                                                                   | M             | 1..1             | object             | Original request information received from the TPP                                                                                                                                                                                                                                     | -                                                                                                                                                                                                                                                                                                    |
| `xRequestId`                        | A memorable ID which could be used to support in a dispute                                                                                                                                           | TPP             | This element could be used for request-response tracking                                                            | M             | 1..1             | String             | Original xRequestId given by the client on request                                                                                                                                                                                                                                     | 36 pattern: `^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$`                                                                                                                                                                                                          |
| `transactionId`                     | A unique identifier used to identify the transaction resource.                                                                                                                                       | ASPSP           | Identification of transaction resource to fetch transaction data                                                    | O             | 0..1             | String             | Transaction reference identification                                                                                                                                                                                                                                                   | 1-256                                                                                                                                                                                                                                                                                                |
| `bookingDateTime`                   | Date and time when a transaction entry is posted to an account                                                                                                                                       | TPP             | Booking date is the expected booking date, unless the status is booked, in which case it is the actual booking date | O             | 0..1             | String ISODateTime | Transaction datetime                                                                                                                                                                                                                                                                   | ISODateTime, "YYYY-MM-DDThh:mm:ssTZD"                                                                                                                                                                                                                                                                |
| `transactionAmount`                 | Amount of money of the transaction                                                                                                                                                                   | TPP             | Transaction amount details                                                                                          | M             | 1..1             | Object             | Set of elements used to define the transaction amount details                                                                                                                                                                                                                          | N/A                                                                                                                                                                                                                                                                                                  |
| `currency`                          | A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217.                      | TPP             | The currency of the amount used in transaction                                                                      | O             | 0..1             | String             | Specifies the currency of the amount                                                                                                                                                                                                                                                   | ISO 4217 ALPHA 3 CHAR pattern: `^[A-Z]{3}$`                                                                                                                                                                                                                                                          |
| `amount`                            | A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.                                                                       | TPP             | The amount of the transaction as billed to the account                                                              | M             | 1..1             | Decimal            | Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the TPP                                                                                                                                              | Min:0                                                                                                                                                                                                                                                                                                |
| `remittanceInformationUnstructured` | Information supplied to enable the matching/reconciliation of an entry with the items that the payment is intended to settle in an unstructured form                                                 | TPP             | Description of the payment                                                                                          | O             | 0..1             | String             | Relevant information to the transaction in an unstructured form                                                                                                                                                                                                                        | 1-140                                                                                                                                                                                                                                                                                                |
| `status`                            | Indicates a state that the transaction is currently in. Until payment is settled it progresses through different states of a transaction.                                                            | TPP             | Status of the transaction                                                                                           | O             | 0..1             | String             | Status of a transaction entry on the books of the account servicer                                                                                                                                                                                                                     | 1-256 Values could be returned as one of the following codes, which is aligned with ExternalPaymentTransactionStatus1Code list from [ISO 20022 External codes](https://www.iso20022.org/external_code_list.page): \[`ACCP`, `ACSC`, `ACSP`, `ACTC`, `ACWC`, `ACWP`, `PDNG`, `RCVD`, `RJCT`, `CANC`\] |
| `creditDebitIndicator`              | Indicates whether the transaction is a credit or a debit entry                                                                                                                                       | TPP             | Differentiate between a debit or credit transaction.                                                                | M             | 1..1             | Enum               | Accounting flow of the amount                                                                                                                                                                                                                                                          | Enum: \[`Credit`, `Debit`\]                                                                                                                                                                                                                                                                          |
| `initiatorNameAddress`              | Name and Address by which an initiator party is known                                                                                                                                                | TPP             | This element is usually used to identify the initiator party address.                                               | O             | 0..4             | String             | Initiator's name and address                                                                                                                                                                                                                                                           | 1-256 Maxitems:4                                                                                                                                                                                                                                                                                     |
| `senderNameAddress`                 | Name and Address by which a sender party is known                                                                                                                                                    | TPP             | This element is usually used to identify the sender party address.                                                  | O             | 0..4             | String             | Sender's name and address                                                                                                                                                                                                                                                              | 1-256 Maxitems:4                                                                                                                                                                                                                                                                                     |
| `recipientNameAddress`              | Name and Address by which a recipient party is known                                                                                                                                                 | TPP             | This element is usually used to identify the recipient party address.                                               | O             | 0..4             | String             | Recipient's name and address                                                                                                                                                                                                                                                           | 1-256 Maxitems:4                                                                                                                                                                                                                                                                                     |
| `tradeDate`                         | Date on which a transaction takes place or when an order is executed                                                                                                                                 | TPP             | Date of the operation                                                                                               | O             | 0..1             | String Date        | Date of the operation                                                                                                                                                                                                                                                                  | ISODateTime, "YYYY-MM-DDThh:mm:ssTZD"                                                                                                                                                                                                                                                                |
| `senderAccountNumber`               | Unique and unambiguous identification for the account between the account owner and the account servicer                                                                                             | TPP             | Bank account number the money is sent from                                                                          | O             | 0..1             | String             | Sender account number                                                                                                                                                                                                                                                                  | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientAccountNumber`            | Unique and unambiguous identification for the account between the account owner and the account servicer                                                                                             | TPP             | Bank account number the money is settled                                                                            | O             | 0..1             | String             | Recipient account number                                                                                                                                                                                                                                                               | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientAccountMassPayment`       | Unique and unambiguous identification for the account between the account owner and the account servicer                                                                                             | TPP             | Virtual bank account number the money is settled in case of mass payment operation                                  | O             | 0..1             | String             | Recipient mass payment account number                                                                                                                                                                                                                                                  | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientBankBicOrSwift`           | When transferring money across international lines nearly always needs to use a SWIFT/BIC code, since it's the way banks and money transfer services identify where to send money on a global scale. | TPP             | The bank SWIFT/BIC code is used to identify a specific bank in an international transaction                         | O             | 0..1             | String             | Recipient bank BIC/SWIFT code                                                                                                                                                                                                                                                          | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientBankName`                 | Name to identify the financial institution                                                                                                                                                           | TPP             | Bank name to identify the recipient's bank                                                                          | O             | 0..1             | String             | Recipient bank name                                                                                                                                                                                                                                                                    | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientBankCode`                 | Code to identify financial institution servicing the recipient account                                                                                                                               | TPP             | Bank code to identify the recipient's bank                                                                          | O             | 0..1             | String             | Recipient bank code                                                                                                                                                                                                                                                                    | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientBankCountryCode`          | Country code in which a financial institution servicing the accounts of the recipient resides                                                                                                        | TPP             | Bank country code to identify recipient's bank country residence                                                    | O             | 0..1             | String             | Recipient bank country code                                                                                                                                                                                                                                                            | 1-256                                                                                                                                                                                                                                                                                                |
| `recipientBankAddress`              | Information that locates and identifies a specific address, as defined by postal services, presented in free format text.                                                                            | TPP             | Unstructured address of the Bank to identify recipient's bank location                                              | O             | 0..4             | String             | Recipient bank address                                                                                                                                                                                                                                                                 | 1-256 Maxitems:4                                                                                                                                                                                                                                                                                     |
| `senderAccountMassPayment`          | Unique and unambiguous identification for the account between the account owner and the account servicer                                                                                             | TPP             | Virtual bank account number the money is sent from in case of mass payment operation                                | O             | 0..1             | String             | Sender mass payment account number                                                                                                                                                                                                                                                     | 1-256                                                                                                                                                                                                                                                                                                |
| `senderBankBicOrSwift`              | When transferring money across international lines nearly always needs to use a SWIFT/BIC code, since it's the way banks and money transfer services identify where to send money on a global scale. | TPP             | The bank SWIFT/BIC code is used to identify a specific bank in an international transaction                         | O             | 0..1             | String             | Sender bank BIC/SWIFT code                                                                                                                                                                                                                                                             | 1-256                                                                                                                                                                                                                                                                                                |
| `senderBankName`                    | Name to identify the financial institution                                                                                                                                                           | TPP             | Bank name to identify the sender's bank                                                                             | O             | 0..1             | String             | Sender bank name                                                                                                                                                                                                                                                                       | 1-256                                                                                                                                                                                                                                                                                                |
| `senderBankCode`                    | Code to identify financial institution servicing the sender account                                                                                                                                  | TPP             | Bank code to identify the sender's bank                                                                             | O             | 0..1             | String             | Sender bank code                                                                                                                                                                                                                                                                       | 1-256                                                                                                                                                                                                                                                                                                |
| `senderBankCountryCode`             | Country in which a financial institution servicing the accounts of the sender resides                                                                                                                | TPP             | Bank country code to identify recipient's bank country residence                                                    | O             | 0..1             | String             | Sender bank country code                                                                                                                                                                                                                                                               | 1-256                                                                                                                                                                                                                                                                                                |
| `senderBankAddress`                 | Information that locates and identifies a specific address, as defined by postal services, presented in free format text.                                                                            | TPP             | Unstructured address of the Bank to identify sender's bank location.                                                | O             | 0..4             | String             | Sender bank address                                                                                                                                                                                                                                                                    | 1-256 Maxitems:4                                                                                                                                                                                                                                                                                     |
| `transactionType`                   | Indicates the type of transaction                                                                                                                                                                    | TPP             | The type of transaction to identify the underlying transaction                                                      | O             | 0..1             | String             | Transaction type                                                                                                                                                                                                                                                                       | 1-256                                                                                                                                                                                                                                                                                                |
| `auxData`                           | To the scope of data concerning the account and transactions, each ASPSP may add additional fields, taking advantage for this purpose of the auxData type Map field                                  | TPP             | Contains additional fields added by ASPSPs                                                                          | O             | 0..1             | Object             | Set of elements used to define the additional transaction details                                                                                                                                                                                                                      | N/A                                                                                                                                                                                                                                                                                                  |
| `any<\*>`                           | Specifies additional information about transaction reconciliation                                                                                                                                    | TPP             | Used by the ASPSP to transport additional transaction related information to the PSU                                | O             | 0..\*            | String             | Data map `<string, string>`                                                                                                                                                                                                                                                            | 1-256                                                                                                                                                                                                                                                                                                |
| `postTransactionBalance`            | Specifies the account balance after the transaction is booked                                                                                                                                        | TPP             | Post-transaction balance                                                                                            | O             | 0..1             | Decimal            | Account balance after the transaction is booked                                                                                                                                                                                                                                        | N/A                                                                                                                                                                                                                                                                                                  |
| `mcc`                               | Merchant Category Code of the Card Acceptor as given in the related card transaction.                                                                                                                | TPP             | Merchant Category Code for each transaction made using a card                                                       | O             | 0..1             | String             | A code of each transaction performed by card                                                                                                                                                                                                                                           | 1-256                                                                                                                                                                                                                                                                                                |
| `rejectionReason`                   | Specifies description of rejection reason for rejected transactions.                                                                                                                                 | TPP             | Used to indicate the rejection reason if a transaction has been rejected                                            | O             | 0..1             | String             | Rejection reason                                                                                                                                                                                                                                                                       | 1-256                                                                                                                                                                                                                                                                                                |
| `rejectionDate`                     | Indicate the date when transaction has been rejected                                                                                                                                                 | TPP             | Used to specify the rejection date if a transaction has been rejected                                               | O             | 0..1             | String ISODateTime | Rejection date                                                                                                                                                                                                                                                                         | ISODateTime, "YYYY-MM-DDThh:mm:ssTZD"                                                                                                                                                                                                                                                                |
| `holdExpirationDate`                | Specifies transaction hold expiration date, in case if a transaction had put on hold                                                                                                                 | TPP             | Hold expiration date                                                                                                | O             | 0..1             | String ISODateTime | Hold expiration date                                                                                                                                                                                                                                                                   | ISODateTime, "YYYY-MM-DDThh:mm:ssTZD"                                                                                                                                                                                                                                                                |
| `senderName`                        | Name of the party that is the debtor of transaction                                                                                                                                                  | TPP             | Identify the party that sent the money                                                                              | O             | 0..1             | String             | Name of the debtor in current transaction (sender's name                                                                                                                                                                                                                               | -                                                                                                                                                                                                                                                                                                    |
| `recipientName`                     | Name of the party that is the creditor of transaction                                                                                                                                                | TPP             | Identify the party that received the money                                                                          | O             | 0..1             | String             | Name of the creditor in current transaction (recipient's name)                                                                                                                                                                                                                         | -                                                                                                                                                                                                                                                                                                    |
| `senderAccountNumberScheme`         | Reference to the scheme of the sender's account number.                                                                                                                                              | TPP             | Identify the scheme of the sender's account number                                                                  | O             | 0..1             | String             | Name of the scheme which identifies the account number belonging to the sender/debtor of the transaction. AccountNumberScheme can be referenced by either: "IBAN", "BBAN", "PAN", "maskedPan", "MSISDN". Field data can be returned by ASPSPs supporting NextGenPSD2 API profile.      | -                                                                                                                                                                                                                                                                                                    |
| `recipientAccountNumberScheme`      | Reference to the scheme of the recipient's account number.                                                                                                                                           | TPP             | Identify the scheme of the recipient's account number                                                               | O             | 0..1             | String             | Name of the scheme which identifies the account number belonging to the recipient/creditor of the transaction. AccountNumberScheme can be referenced by either: "IBAN", "BBAN", "PAN", "maskedPan", "MSISDN". Field data can be returned by ASPSPs supporting NextGenPSD2 API profile. | -                                                                                                                                                                                                                                                                                                    |
| `bankTransactionCode`\*             | Global alternative for the different domestic bank transaction code sets that exist.                                                                                                                 | TPP             | Help account owners perform their cash management and reconciliation operations                                     | O             | 0..1             | Object             | Set of elements to fully identify the type of underlying transaction resulting in an entry.                                                                                                                                                                                            |                                                                                                                                                                                                                                                                                                      |
| `domain`                            | Specifies the domain, the family and the sub-family of the bank transaction code, in a structured and hierarchical format                                                                            | TPP             | Group transactions by domain                                                                                        | O             | 0..1             | Object             | The domain defines the business area of the underlying transaction. For example, payments, securities, and so on.                                                                                                                                                                      |                                                                                                                                                                                                                                                                                                      |
| `code`                              | Identify the underlying transaction                                                                                                                                                                  | TPP             | Group transactions by code                                                                                          | O             | 0..1             | String             | Specifies the business area of the underlying transaction.                                                                                                                                                                                                                             |                                                                                                                                                                                                                                                                                                      |
| `familyCode`                        | Identify the domain of the transaction                                                                                                                                                               | TPP             | Group transactions by family code                                                                                   | O             | 0..1             | String             | Specifies the family within a domain.                                                                                                                                                                                                                                                  |                                                                                                                                                                                                                                                                                                      |
| `subFamilyCode`                     | Identify the sub-product family within a certain family                                                                                                                                              | TPP             | Group transactions by sub family code                                                                               | O             | 0..1             | String             | Specifies the sub-product family within a specific family.                                                                                                                                                                                                                             |                                                                                                                                                                                                                                                                                                      |
| `proprietary`                       | Identify the proprietary id of a transaction                                                                                                                                                         | TPP             | Group transactions by ASPSP proprietary identifier                                                                  | O             | 0..1             | Object             | Proprietary identification of the bank transaction code, as defined by the issuer.                                                                                                                                                                                                     |                                                                                                                                                                                                                                                                                                      |
| `code`                              | Identify the underlying transaction                                                                                                                                                                  | TPP             | Group transactions by ASPSP proprietary transaction code                                                            | O             | 0..1             | String             | Proprietary bank transaction code.                                                                                                                                                                                                                                                     |                                                                                                                                                                                                                                                                                                      |
| `issuer`                            | Identify the issuer of the proprietary transaction code                                                                                                                                              | TPP             | Group transactions by issuer of ASPSP proprietary transaction code                                                  | O             | 0..1             | String             | Identification of the issuer of the proprietary bank transaction code.                                                                                                                                                                                                                 |                                                                                                                                                                                                                                                                                                      |
| `originalTransactionId`             | Identification of transaction as provided by ASPSP                                                                                                                                                   | TPP             | Used to match transaction data on ASPSP's side                                                                      | O             | 0..1             | String             | Original transaction identification.                                                                                                                                                                                                                                                   |                                                                                                                                                                                                                                                                                                      |

Note: \*The response returns bankTransactionCode for the following ASPSPs.

`domain` object is populated for the following ASPSPs

|  **ASPSP Name**  |               **ASPSP ID**               |   **API**   | **Country** |
|------------------|------------------------------------------|-------------|-------------|
| Adonis           | **cc42a197-1aa1-4506-99e9-5e2352ace7df** | CMA9        | GB          |
| CeriumBank       | **159bf510-87b4-4af8-b5b8-29b4066738da** | NextGenPSD2 | HU          |
| Livermorium Bank | **aefa280d-0706-4be3-87c8-c7d8922ad754** | STET        | LU          |
| Tennessine Bank  | **addad4bc-9e07-417c-a2a8-68c6da1613c6** | STET        | BE          |

`proprietary` object is populated for the following ASPSPs

| **ASPSP Name** |               **ASPSP ID**               |   **API**   | **Country** |
|----------------|------------------------------------------|-------------|-------------|
| Athena Bank    | **d90d3bee-1ba4-48f3-b528-ff58a9390792** | CMA9        | GB          |
| Cadmium Bank   | **053435ec-8910-11eb-8dcd-0242ac130003** | NextGenPSD2 | BE          |

Note: \*\*The response returns `originalTransactionId` for the following ASPSPs.

|  **ASPSP Name**  |               **ASPSP ID**               |   **API**   | **Country** |
|------------------|------------------------------------------|-------------|-------------|
| Sandbox ASPSP 1  | **420e5cff-0e2a-4156-991a-f6eeef0478cf** | CMA9        | GB          |
| Sandbox ASPSP 2  | **b806ae68-a45b-49d6-b25a-69fdb81dede6** | Polish API  | PL          |
| Sandbox ASPSP 3  | **6bc896b5-1b5a-473a-a1d8-dfd3cbb4fab5** | NextGenPSD2 | NL          |
| Sandbox ASPSP 4  | **08475b1c-5f59-48f7-8c62-dcfd8928dad2** | STET        | IT          |
| Adonis Bank      | **cc42a197-1aa1-4506-99e9-5e2352ace7df** | CMA9        | GB          |
| Fermium Bank     | **6bc896b5-1b5a-473a-a1d8-dfd3aaa4fab5** | NextGenPSD2 | NL          |
| Tungsten Ban     | **e374d446-c114-4666-bbce-5dcad57c42c5** | NextGenPSD2 | SE          |
| Lanthanum Bank   | **3d068415-1edc-4c67-93ed-13ddfaeb200a** | NextGenPSD2 | LU          |
| Hassium Bank     | **73d25ee0-ea7b-4508-88ca-4221f557304b** | NextGenPSD2 | FI          |
| Bohrium Bank     | **5acf936a-2a19-4db3-b2b2-1fc2c7ab7765** | NextGenPSD2 | LV          |
| Dubnium Bank     | **7b01aea9-8901-4068-804c-0cd47ac932dd** | NextGenPSD2 | LT          |
| Seaborgium Bank  | **71b1ac6e-51a1-4674-be61-0a766941728a** | NextGenPSD2 | EE          |
| Nihonium Bank    | **7dbf29c1-0b94-4bac-b3fc-1441781572d5** | NextGenPSD2 | CZ          |
| Oganesson Bank   | **9bab67cd-8efe-4ddd-a9bc-e701b48397ce** | STET        | ES          |
| Tennessine Bank  | **addad4bc-9e07-417c-a2a8-68c6da1613c6** | STET        | BE          |
| Livermorium Bank | **aefa280d-0706-4be3-87c8-c7d8922ad754** | STET        | LU          |
| Polonium Bank    | **4888fdfa-0f32-4a1f-b55e-5870454bccc1** | Polish API  | PL          |
| Flerovium Bank   | **8c66b424-665a-4a03-842a-1b068bac1dc7** | NextGenPSD2 | DK          |
| Cadmium Bank     | **053435ec-8910-11eb-8dcd-0242ac130003** | NextGenPSD2 | BE          |
| Tellurium Bank   | **1701f9c4-8921-11eb-8dcd-0242ac130003** | NextGenPSD2 | LU          |

## Feature specific error codes {#feature-specific-error-codes}

Tip: For a list of general response codes and error code structure see [Response and Error Codes](https://developer.mastercard.com/open-banking-connect/documentation/response-and-error-codes/index.md).

|                                **Message**                                | **Reason Code** |                            **Description**                            |                                                            **Developer Details**                                                            |                                                  **Typical Occurrences**                                                  |                                 **Next Steps**                                  |
|---------------------------------------------------------------------------|-----------------|-----------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------|
| "Conditional field psuIPAddress is expected when `isLivePsuRequest`=true" | `FORMAT_ERROR`  | "IP address" field is mandatory if parameter `isLivePsuRequest`=true. | "path\[i\]=\<\\path to the element that failed the validation\>;" where i = 0, 1, 2, and so on. for each element that failed the validation | Typically occurs because the TPP has provided in request `isLivePsuRequest`=true and didn't provide the IP address value. | Provide IP address of PSU in the request when providing `isLivePsuRequest`=true |

**Error example code**

```json
{
    "Errors": {
        "Error": [
            {
            "Source": "OBC",
            "ReasonCode": "FORMAT_ERROR",
            "Description": " Conditional field psuIPAddress is expected when isLivePsuRequest='true'",
            "Details": "path[0]=/requestInfo/psuIPAddress"
            }
        ]
    }
}
```

|                      **Message**                       | **Reason Code** |                   **Description**                    | **Developer Details** |                                    **Typical Occurrences**                                     |           **Next Steps**            |
|--------------------------------------------------------|-----------------|------------------------------------------------------|-----------------------|------------------------------------------------------------------------------------------------|-------------------------------------|
| "Access Token associated with the Request has expired" | `INVALID_TOKEN` | Access Token associated with the Request has expired | n/a                   | Typically occurs when the consent that the TPP has previously obtained from a PSU has expired. | PSU needs to provide a new consent. |

**Error example code**

```json
{
  "Errors": {
  "Error": [
    {
      "ReasonCode": " INVALID_TOKEN ",
      "Description": "Access Token associated with the Request has expired"
    }
  ]
}
}
```

|                                **Message**                                | **Reason Code** |                     **Description**                      | **Developer Details** |                   **Typical Occurrences**                   |                                                                       **Next Steps**                                                                       |
|---------------------------------------------------------------------------|-----------------|----------------------------------------------------------|-----------------------|-------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|
| "Access Token associated with the Request is invalid or has been revoked" | `INVALID_TOKEN` | The consent id used in the request is invalid or revoked | n/a                   | Typically occurs when the consent id is invalid or revoked. | Ensure a valid consent id is used in the request. If you think the specified consent id is valid please contact the Open Banking Connect API support team. |

**Error example code**

```json
{
  "Errors": {
    "Error": [
      {
        "Source": "OBC",
        "ReasonCode": "INVALID_TOKEN",
        "Description": "Access Token associated with the Request is invalid or has been revoked"
      }
    ]
  }
}
```

|                        **Message**                         | **Reason Code**  |                      **Description**                      | **Developer Details** |                                                                                      **Typical Occurrences**                                                                                      |                                              **Next Steps**                                               |
|------------------------------------------------------------|------------------|-----------------------------------------------------------|-----------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------|
| "Provided account is invalid or unlinked from the consent" | `PROVIDER_ERROR` | Provided account is invalid or unlinked from the consent. | N/A                   | Typically occurs when an invalid account id is included in the request, or when the account id was unlinked from the consent due to various issues with previous requests using the same consent. | Ensure a valid account id is included or ask for a fresh consent from the PSU and include in the request. |

**Error example code**

```json
{
  "Errors": {
  "Error": [
    {
      "ReasonCode": " PROVIDER_ERROR ",
      "Description": "Provided account is invalid or unlinked from the consent"
    }
      ] 
     } 
}
```

|                    **Message**                     | **Reason Code**  |                  **Description**                  | **Developer Details** |                                                 **Typical Occurrences**                                                  |                                                                             **Next Steps**                                                                              |
|----------------------------------------------------|------------------|---------------------------------------------------|-----------------------|--------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| "ASPSP limit for unattended requests was exceeded" | `PROVIDER_ERROR` | ASPSP limit for unattended requests was exceeded. | N/A                   | Typically occurs when ASPSP limit (usually set to 4 requests) for unattended requests (without PSU details) is exceeded. | Please ensure that PSU is online during AIS requests, include PSU details (isLivePsuRequest , psuIPAddress and psuAgent), or try submitting requests the following day. |

**Error example code**

```json
{
  "Errors": {
  "Error": [
    {
      "ReasonCode": " PROVIDER_ERROR ",
      "Description": "ASPSP limit for unattended requests was exceeded"
    }
  ]
  }
}
```

