# Get Account Transactions
source: https://developer.mastercard.com/open-banking-connect/documentation/aisfeatures/get-account-transactions/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, the list of transactions for the specified `accountId`. This flow assumes the Payment Service User (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 | `POST`     | CMA9, Polish API, NextGenPSD2, STET, Budapest Bank, Czech Open Banking Standard API Profile, Slovak Banking API Standard API Profile | Returns transaction list of the account |

The following sequence diagram shows the flow for obtaining a list of transactions from a PSU's Account.
Diagram get_transactions

## Request scenario {#request-scenario}


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

#### 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 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}$`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `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, it 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                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `limit`            | Number of transactions to be returned in response                                                                                                                                                                             | MC              | Number of transactions on the page                                                                                                                                                                                   | M             | 1..1             | Integer     | Number of transactions returned                                                                                                                                                                  | N/A                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `offset`           | Offset value from which the next set of transactions will be returned                                                                                                                                                         | MC              | Offset value used for pagination                                                                                                                                                                                     | O             | 0..1             | String      | Offset value obtained from previous calls to get next set of transactions                                                                                                                        | 1-256                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `bookingDateFrom`  | Transactions having an imputation date equal or later to this parameter are included within the result set                                                                                                                    | MC              | Filter starting date (inclusive the date bookingDateFrom) used to generate the transaction list                                                                                                                      | O             | 0..1             | String Date | Initial booking date of the data range requested                                                                                                                                                 | Date, "YYYY-MM-DD"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `bookingDateTo`    | Transactions having an imputation date equal or earlier to this parameter are included within the result                                                                                                                      | MC              | Filter end date (inclusive the data bookingDateTo) used to generate the transaction list                                                                                                                             | O             | 0..1             | String Date | Final booking date of the data range requested                                                                                                                                                   | Date, "YYYY-MM-DD"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

Tip: For an explanation of notations used, refer to **Open Banking General FAQ** in our [Frequently Asked Questions](https://developer.mastercard.com/open-banking-connect/documentation/frequently-asked-questions/index.md) section.

### 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                                                                                                                                                                                                                                     | N/A                                                                                                                                                                                                                                                                                                    |
| `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 UUID         | 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}$`                                                                                                                                                                                                            |
| `offset`                            | Offset value from which the next set of transactions should be returned                                                                                                                              | MC              | Offset value used for pagination                                                                                    | O             | 0..1             | String              | Offset value for next call to get transactions                                                                                                                                                                                                                                         | 1-256                                                                                                                                                                                                                                                                                                  |
| `transactions`                      | A list of transactions for a given account                                                                                                                                                           | TPP             | List of transactions in account                                                                                     | O             | 0..\*            | Object              | Set of elements used to define the transactions details                                                                                                                                                                                                                                | N/A                                                                                                                                                                                                                                                                                                    |
| `transactionId`                     | A unique identifier used to identify the transaction resource.                                                                                                                                       | TPP             | 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  | Booking date and time of the transaction on the account                                                                                                                                                                                                                                | ISODateTime, "YYYY-MM-DDThh:mm:ssTZD"                                                                                                                                                                                                                                                                  |
| `tradeDate`                         | Date on which a transaction takes place or when an order is executed                                                                                                                                 | TPP             | Date of the operation                                                                                               | O             | 0..1             | String              | Date of the operation                                                                                                                                                                                                                                                                  | 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                                                                                                                                                                                                                                                                                  |
| `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                                                                                                                                              | N/A                                                                                                                                                                                                                                                                                                    |
| `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             | Array of Strings    | 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             | Array of Strings    | Sender's name and address                                                                                                                                                                                                                                                              | 1-256                                                                                                                                                                                                                                                                                                  |
| `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                                                                                                                                                                                                                                                                                                  |
| `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             | Array of Strings    | Recipient's name and address                                                                                                                                                                                                                                                           | 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 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             | Array of Strings    | Recipient bank address                                                                                                                                                                                                                                                                 | 1-256                                                                                                                                                                                                                                                                                                  |
| `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. | -                                                                                                                                                                                                                                                                                                      |
| `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             | Array of Strings    | 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 IISODateTime | 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"                                                                                                                                                                                                                                                                  |
| `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.                                                                                                                                                                                                                                                   |                                                                                                                                                                                                                                                                                                        |
| `messages`                          | Messages to inform TPPs in case of errors.                                                                                                                                                           | TPP             | List of messages                                                                                                    | O             | 0..1             | Array               | Set of elements used to define the messages details                                                                                                                                                                                                                                    | N/A                                                                                                                                                                                                                                                                                                    |
| `code`                              | Unique and unambiguous identification for the message                                                                                                                                                | TPP             | Code of message                                                                                                     | O             | 0..1             | String              | Unique code of the message                                                                                                                                                                                                                                                             | 1-256                                                                                                                                                                                                                                                                                                  |
| `description`                       | Text description of returned message                                                                                                                                                                 | TPP             | Description of message                                                                                              | O             | 0..1             | String              | Detailed description of the message                                                                                                                                                                                                                                                    | 1-256                                                                                                                                                                                                                                                                                                  |

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**                                       |
|----------------------------------------------------------------------------------------------------------------------------|-----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------|--------------------------------------------------------------------------------------------|
| "\[Path path\[i\]\] Numeric instance is lower than the required minimum (minimum: \<\\MIN\>, found: \<\\received value\>)" | `FORMAT_ERROR`  | The value for the limit parameter in the Get Account Transactions request is smaller than the specified minimum. Note: This error is only applicable to the following endpoint: POST /accounts/account/transactions. | "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 when the limit parameter field has a value of zero. | Ensure that the value for the limit parameter in the request is greater than or equal to 1 |

**Error example code**

```json
{
    "Errors": {
        "Error":[
            {"Source": "OBC",
            "ReasonCode": "FORMAT_ERROR",
            "Description": "[Path '/limit'] Numeric instance is lower than the required minimum (minimum: 1, found: 0)",
            "Details": "path[0]=/limit"
            }
        ]
    }
}
```

|                                                **Message**                                                |     **Reason Code**      |                                                 **Description**                                                  |                                                            **Developer Details**                                                            |                 **Typical Occurrences**                  |                                                    **Next Steps**                                                     |
|-----------------------------------------------------------------------------------------------------------|--------------------------|------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------|
| "Numeric instance is greater than the accepted maximum (maximum: \<\\MAX\>, found: \<\\received value\>)" | `MAX_LIMIT_FORMAT_ERROR` | The value for the limit parameter in the Get Account Transactions request is greater than the specified maximum. | "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 when the maximum has been set too high. | Ensure that the value for the limit parameter in the request is lower than the maximum value specified in the message |

**Error example code**

```json
{
    "Errors": {
        "Error": [
            {"Source": "OBC",
             "ReasonCode": "MAX_LIMIT_FORMAT_ERROR",
             "Description": "Numeric instance is greater than the required maximum (maximum: 1000, found: 1001)"
            }
        ]
    }
}
```

|                      **Message**                       |        **Reason Code**         |                                                         **Description**                                                         |                                                         **Developer Details**                                                         |                                    **Typical Occurrences**                                     |                                                        **Next Steps**                                                         |
|--------------------------------------------------------|--------------------------------|---------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|
| "bookingDateFrom cannot be greater than bookingDateTo" | `DATEFROM_GREATER_THAN_DATETO` | The value for the bookingDateFrom parameter in the Get Account Transactions request is greater than the value of bookingDateTo. | "path\[i\]=\<\\path to the element that failed the validation\>;" where i = 0, 1, 2, etc. for each element that failed the validation | This typically is a user entry error. Dates should identify a time interval greater than zero. | Ensure that the value specified for bookingDateFrom parameter, doesn't exceed the value specified for bookingDateTo parameter |

**Error example code**

```json
{
    "Errors": {
        "Error": [
            {
            "Source": "OBC",
            "ReasonCode": "DATEFROM_GREATER_THAN_DATETO",
            "Description": "bookingDateFrom cannot be greater than bookingDateTo"
            }
        ]
    }
}
```

|                                            **Message**                                            |       **Reason Code**        |                                                                                 **Description**                                                                                 |                                                            **Developer Details**                                                            |                  **Typical Occurrences**                   |                                                     **Next Steps**                                                     |
|---------------------------------------------------------------------------------------------------|------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------|
| "bookingDateFrom and/or bookingDateTo should be a valid date or cannot be a date from the future" | `INVALID_DATEFROM_OR_DATETO` | The value for the bookingDateFrom or bookingDateTo parameters is not a valid date. Or, the value for the bookingDateFrom or bookingDateTo parameters is a date from the future. | "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 | This typically happens because of submitting user's error. | Ensure that the value specified for both bookingDateFrom and bookingDateTo parameter is a valid date and not in future |

**Error example code**

```json
{
    "Errors": {
        "Error": [
            {
            "Source": "OBC",
            "ReasonCode": "INVALID_DATEFROM_OR_DATETO",
            "Description": "bookingDateFrom and/or bookingDateTo should be a valid date or cannot be a date from the future"
            }
        ]
    }
}
```

|                                                         **Message**                                                         | **Reason Code** |                                           **Description**                                            |                                                            **Developer Details**                                                            |                           **Typical Occurrences**                           |                                                          **Next Steps**                                                           |
|-----------------------------------------------------------------------------------------------------------------------------|-----------------|------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
| "\[Path path\[i\]\] String %s is invalid against requested date format(s) yyyy-MM-dd"Date format (for example, 2019-10-25)" | `FORMAT_ERROR`  | The value for the bookingDateFrom or bookingDateTo parameters is not in ISO date format, YYYY-MM-DD. | "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, errors occur with dates set to MM-DD-YYYY instead of YYYY-MM-DD. | Ensure that the value specified for both bookingDateFrom and bookingDateTo parameter complies to the following format: YYYY-MM-DD |

**Error example code**

```json
{
    "Errors": {
        "Error": [
            {
            "Source": "OBC",
            "ReasonCode": "FORMAT_ERROR",
            "Description": "[Path '/bookingDateFrom'] String \"2018-35-22\" is invalid against requested date format(s) yyyy-MM-dd",
            "Details": "path[0]=/bookingDateFrom"
            },
            {
            "Source": "OBC",
            "ReasonCode": "FORMAT_ERROR",
            "Description": "[Path '/bookingDateTo'] String \"2018-11-31\" is invalid against requested date format(s) yyyy-MM-dd",
            "Details": "path[0]=/bookingDateTo"
            }
        ]
    }
}
```

|                                **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. | Please 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. | Ensure that the 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"
    }
  ]
  }
}
```

|                             **Message**                             | **Reason Code**  |                           **Description**                           | **Developer Details** |                                              **Typical Occurrences**                                              |                              **Next Steps**                               |
|---------------------------------------------------------------------|------------------|---------------------------------------------------------------------|-----------------------|-------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------|
| "Requested transaction history is out of bank supported date range" | `PROVIDER_ERROR` | Requested list of transactions is out of supported bank date range. | N/A                   | Occurs when TPP submits a Get List of Transactions request with a date range which is not supported by the ASPSP. | Ensure to update date range to a smaller period and resubmit the request. |

**Error example code**

```json
{
  "Errors": {
    "Error": [
      {
        "Source": "OBC",
        "ReasonCode": " PROVIDER_ERROR",
        "Description": " Requested transaction history is out of bank supported date range"
      }
    ]
  }
}
```

