Skip to main content
Skip table of contents

How to Access Account Balances and Transactions

XS2A Account Information Service offers access to the list of accounts of a PSU, account details, transactions, and balances.

A bank defines which accounts are accessible through XS2A.

Prerequisites

  1. Your certificate must contain the PSP role = PSP_AI.

  2. You must have PSU consent on accessing the requested account information. Learn more about consents access rights XS2A Consent Models and Access Rights.

  3. Consent must have status = valid in XS2A.

  4. Consent frequencyPerDay must not be exceeded in XS2A. Learn more about access frequency validation in Consent frequency validation.

Read account list

Using the /accounts endpoint, you can obtain the list of accounts of a particular PSU.

Important: these will be only those accounts that are accessible through XS2A according to internal Bank rules.

The response contains an array of account details supported by a Bank.

XS2A interface supports all account details attributes defined by the Berlin-Group standard, although not all of them might be available in a Bank.

Flow

Data field

Value

HTTP-Method

GET

Header X-Request-ID

Random UUID for this request

Header Consent-ID

Learn how to create and authorise consents in XS2A Creation and Authorisation of an AIS Consent in Steps.

  • Execute the request.

  • The response should have the HTTP status code: 200 - Ok

Read account details

Using the /v2/accounts/{account-id} endpoint, you can obtain the details of a particular account.

Important: you must use accountId of an account as the path parameter {account-id}. accountId is a part of the response on the Read account list call.

The response contains account details supported by a Bank.

XS2A interface supports all account details attributes defined by the Berlin-Group standard, although not all of them might be available in a Bank.

Flow

Data field

Value

HTTP-Method

GET

Header X-Request-ID

Random UUID for this request

Header Consent-ID

Learn how to create and authorise consents in XS2A Creation and Authorisation of an AIS Consent in Steps.

URL path variable {account-id}

An accountId from the request of Step 1.

  • Execute the request.

  • The response should have the HTTP status code: 200 - Ok

Read account balance

Using the /v1/accounts/{account-id}/balances endpoint, you can obtain the information about balances of a particular account.

Important: you must use accountId of an account as the path parameter {account-id}. accountId is a part of the response on the Read account list call.

The response contains an account reference and an array of balances available for a particular account.

XS2A interface supports all attributes of account reference and balances defined by the Berlin-Group standard, although not all of them will be available in a Bank.

Flow

Data field

Value

HTTP-Method

GET

Header X-Request-ID

Random UUID for this request

Header Consent-ID

Learn how to create and authorise consents in XS2A Creation and Authorisation of an AIS Consent in Steps.

URL path variable {account-id}

An accountId from the Read account list request.

  • Execute the request.

  • The response should have the HTTP status code: 200 - Ok

Read the transaction list of an account: transactions younger than 90 days from the current date

Using the /v2/accounts/{account-id}/transactions endpoint, you can obtain the information about transactions of a particular account.

Access to transactions that are older than 90 days (from the current date) will require authorisation from PSU - similar to payment or consent authorisation.
Learn more at How to access transactions older than 90 days (from current date).

Access to transactions that are younger than 90 days doesn't require any SCA: the description of the relevant calls is given below.

Important: you must use accountId of an account as the path parameter {account-id}. accountId is a part of the response on the Read account list call.

The response contains an account reference and an array of transaction details available for a particular account.

XS2A interface supports all attributes of account reference and transaction details defined by the Berlin-Group standard, although not all of them will be available in a Bank.

Depending on the Bank’s implementation, a result without transactions can be returned as 404 or as an empty list.

Flow

Data field

Value

HTTP-Method

GET

Header X-Request-ID

Random UUID for this request

Header Consent-ID

Learn how to create and authorise consents in XS2A Creation and Authorisation of an AIS Consent in Steps.

URL path variable {account-id}

An accountId from the Read account list request.

Query parameter bookingStatus

both. One of [ booked, pending, both ] must be used.

  • Execute the request.

  • The response should have the HTTP status code: 200 - Ok

Read transaction details

Using the /v2/accounts/{account-id}/transactions/{transactionId} endpoint, you can obtain the information about transactions of a particular account.

Important:

  • you must use accountId of an account as the path parameter {account-id}. accountId is a part of the response on the Read account list call.

  • you must use transactionId of an transaction as the path parameter {transactionId}. transactionId is a part of the response on the Read transaction list of an account call.

The response contains transaction details available for a particular transaction.

XS2A interface supports all attributes of transaction details defined by the Berlin-Group standard, although not all of them will be available in a Bank.

Flow

Data field

Value

HTTP-Method

GET

Header X-Request-ID

Random UUID for this request

Header Consent-ID

Learn how to create and authorise consents in XS2A Creation and Authorisation of an AIS Consent in Steps.

URL path variable {account-id}

An accountId from the Read account list request.

URL path variable {transactionId}

transactionId from Read account transaction list request

  • Execute the request.

  • The response should have the HTTP status code: 200 - Ok

Read the list of standing orders of an account

Using the /v2/accounts/{account-id}/transactions endpoint, you can also obtain the information about standing orders of a particular account.

It can be done by passing the query parameter "bookingStatus" = information.

Important: you must use accountId of an account as the path parameter {account-id}. accountId is a part of the response on the How to Access Account Balances and Transactions call.

The response contains an account reference and an array of transaction details available for a particular account.

XS2A interface support most of the attributes of account reference and transaction details defined by the Berlin-Group standard, although not all of them will be available in a Bank.

Flow

Data field

Value

HTTP-Method

GET

Header X-Request-ID

Random UUID for this request

Header Consent-ID

Learn how to create and authorise consents in XS2A Creation and Authorisation of an AIS Consent in Steps.

URL path variable {account-id}

An accountId from the Read account list request.

Query parameter bookingStatus

information

  • Execute the request.

  • The response should have the HTTP status code: 200 - Ok

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.