How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

UK Open Banking Statements API

The Statements API from UK Open Banking — 5 operation(s) for statements.

UK Open Banking Statements API is one of 42 APIs that UK Open Banking publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Statements. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, a GitHub repository, and rate-limit docs.

This API exposes 5 operations across 5 paths, and defines 97 schemas. It is described by OpenAPI 3.0.0, at version 4.0.1.

Requests are made against a single base URL, /open-banking/v4.0/aisp.

5 operations 5 paths 97 schemas 5 GET

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.0
API Version
4.0.1
Base URL
https://{aspsp-host}/open-banking/v4.0
Authentication
OAuth 2.0, OAuth 2.0
Terms of Service
Resource Areas
1

Authentication & Security 2

UK Open Banking Statements API declares 2 security schemes for authenticating requests. It supports OAuth 2.0 (TPPOAuth2Security) using the clientCredentials flow, exposing 1 scope. It supports OAuth 2.0 (PSUOAuth2Security) using the authorizationCode flow, exposing 1 scope.

  • TPPOAuth2Security — TPP client credential authorisation flow with the ASPSP
  • PSUOAuth2Security — OAuth flow, it is required when the PSU needs to perform SCA with the ASPSP when a TPP wants to access an ASPSP resource owned by the PSU

Paths & Operations 5

Across 5 paths, the API surfaces 5 operations — 5 GET. Each is listed below with its method, path, parameters, and response codes.

Statements 5
GET
/accounts/{AccountId}/statements
Get Statements for an AccountId
GetAccountsAccountIdStatements 9 params → 200400401403404405406429
GET
/accounts/{AccountId}/statements/{StatementId}
Get Statement by StatementId for an AccountId
GetAccountsAccountIdStatementsStatementId 8 params → 200400401403404405406429
GET
/accounts/{AccountId}/statements/{StatementId}/file
Get Statement file by StatementId for an AccountId
GetAccountsAccountIdStatementsStatementIdFile 8 params → 200400401403404405406429
GET
/accounts/{AccountId}/statements/{StatementId}/transactions
Get Statement Transactions for an AccountId
GetAccountsAccountIdStatementsStatementIdTransactions 8 params → 200400401403404405406429
GET
/statements
Get Statements
GetStatements 8 params → 200400401403404405406429

Schemas 97

The contract defines 97 schemas that model the data the API accepts and returns. The most detailed are OBTransaction6 (32 properties), OBPostalAddress7 (18 properties), OBStatement2 (16 properties), OBCurrencyExchange5 (7 properties). Each schema is shown below with its type and property counts.

Description_1
string
Description that may be available for the statement fee.
Value
string
Value associated with the statement value type.
OBInternalStatementFeeFrequency1Code
string
How frequently the fee is applied to the Account. For a full list of values see OBInternalStatementFeeFrequency1Code in OBInternalCodeSet [here](https://github…
OBMerchantDetails1
object
Details of the merchant involved in the transaction.
2 properties
OBTransactionCashBalance
object
Set of elements used to define the balance as a numerical representation of the net increases and decreases in an account after a transaction entry is applied…
3 properties 3 required
OBInternalTransactionMutability1Code
string
Specifies the Mutability of the Transaction record. For a full list of enumeration values refer to OBInternalTransactionMutability1Code in OBInternalCodeSet [h…
OBInternalStatementAmountType1Code
string
Amount type, in a coded form.
OBRate1_0
number
Rate charged for Statement Fee (where it is charged in terms of a rate rather than an amount)
LEI
string
Legal entity identification as an alternate identification for a party. Legal Entity Identifier is a code allocated to a party as described in ISO 17442 "Finan…
OBBankTransactionCodeStructure1
object
Set of elements used to fully identify the type of underlying transaction resulting in an entry.
2 properties 2 required
StartDateTime
string
Date and time at which the statement period starts. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in respon…
OBInternalStatementType1Code
string
Statement type, in a coded form. For a full list of values see OBInternalStatementType1Code in OBInternalCodeSet [here](https://github.com/OpenBankingUK/Extern…
ExternalCategoryPurpose1Code
string
Enumeration of codes that outlines the type of purpose behind a transaction, payment or risk. For all enum values see ExternalCategoryPurpose1Code in ISOExtern…
StatementId
string
Unique identifier for the statement resource within a servicing institution. This identifier is both unique and immutable.
StreetName
string
Name of a street or thoroughfare.
OBUltimateCreditor1
object
Ultimate party to which an amount of money is due.
5 properties
Links
object
Links relevant to the payload
5 properties 1 required
OBActiveOrHistoricCurrencyAndAmount_10
object
Transaction charges to be paid by the charge bearer.
2 properties 2 required
AddressLine
string
Information that locates and identifies a specific address for a transaction entry, that is presented in free format text.
File
object
OBReadTransaction6
object
3 properties 1 required
OBInternalStatementFeeType1Code
string
Fee type, in a coded form. For a full list of values see OBInternalStatementFeeType1Code in OBInternalCodeSet [here](https://github.com/OpenBankingUK/ExternalI…
ExternalEntryStatus1Code
string
Status of a transaction entry on the books of the account servicer. For a full list of enumeration values refer to ExternalEntryStatus1Code in ISOExternalCodeS…
OBInternalAccountIdentification4Code
string
Name of the identification scheme, in a coded form as published in an external list. For a full list of enumeration values refer to OBInternalAccountIdentifica…
TownName
string
Name of a built-up area, with defined boundaries, and a local government.
PostCode
string
Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.
OBCashAccount6_0
object
Unambiguous identification of the account of the creditor, in the case of a debit transaction.
5 properties
OBActiveCurrencyAndAmount_SimpleType
string
A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.
CreationDateTime
string
Date and time at which the resource was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses…
ValueDateTime
string
Date and time at which assets become available to the account owner in case of a credit entry, or cease to be available to the account owner in case of a debit…
ProprietaryBankTransactionCodeStructure1
object
Set of elements to fully identify a proprietary bank transaction code.
2 properties 1 required
DateTime
string
Date and time associated with the date time type. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in response…
ExternalProxyAccountType1Code
string
Specifies the external proxy account type code, as published in the proxy account type external code set. For more information and a full list of values see Ex…
OBInternalFinancialInstitutionIdentification4Code
string
Name of the identification scheme, in a coded form as published in an external list. For a full list of enumeration values refer to OBInternalFinancialInstitut…
OBTransaction6
object
Provides further details on an entry in the report.
32 properties 5 required
OBActiveOrHistoricCurrencyAndAmount_5
object
Amount of money associated with the statement benefit type.
2 properties 2 required
Description_2
string
Description that may be available for the statement interest.
Identification_2
string
Unique and unambiguous identification of a financial institution or a branch of a financial institution.
OBCreditDebitCode_0
string
Indicates whether the amount is a credit or a debit. For a full list of values see OBInternalCreditDebitCode in OBInternalCodeSet [here](https://github.com/Ope…
OBExternalPurpose1Code
string
For a full list of enumeration values refer to ExternalPurpose1Code in ISOExternalCodeSet [here](https://github.com/OpenBankingUK/ExternalInternalCodeSets)
OBActiveOrHistoricCurrencyAndAmount_7
object
Amount of money associated with the statement interest amount type.
2 properties 2 required
ISODateTime
string
All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below:…
OBBranchAndFinancialInstitutionIdentification6_2
object
Financial institution servicing an account for the debtor.
5 properties
OBAddressType2Code
string
Identifies the nature of the postal address. For a full set of codes see OBAddressType2Code in OBInternalCodeSet [here](https://github.com/OpenBankingUK/Extern…
OBReadDataStatement2
object
1 property
Name_1
string
Name by which an agent is known and which is usually used to identify that agent.
StatementReference
string
Unique reference for the statement. This reference may be optionally populated if available.
BuildingName
string
Name of a referenced building.
OBReadDataTransaction6
object
1 property
BuildingNumber
string
Number that identifies the position of a building on a street.
OBTransactionCardInstrument1
object
Set of elements to describe the card instrument used in the transaction. For a full list of enumeration values refer to OBInternalCardSchemeType1Code in OBInte…
4 properties 1 required
TransactionReference
string
Unique reference for the transaction. This reference is optionally populated, and may as an example be the FPID in the Faster Payments context.
Floor
string
Number that identifies the level within a building
ActiveOrHistoricCurrencyCode_1
string
A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international st…
Name_0
string
The account name is the name or names of the account owner(s) represented at an account level, as displayed by the ASPSP's online channels. Note, the account n…
OBBranchAndFinancialInstitutionIdentification6_1
object
Financial institution servicing an account for the creditor.
5 properties
OBInternalStatementDateTimeType1Code
string
Date time type, in a coded form. For a full list of values see OBInternalStatementDateTimeType1Code in OBInternalCodeSet [here](https://github.com/OpenBankingU…
OBCreditDebitCode_1
string
Indicates whether the transaction is a credit or a debit entry. For a full list of enumeration values refer to OBInternalCreditDebitCode in OBInternalCodeSet […
CareOf
string
The 'care of' address is used whenever sending mail to a person or organisation who does not actually live or work at the address. They will receive the mail f…
OBExternalStatusReason1Code
string
Low level textual error code, for all enum values see OBExternalStatusReason1Code in OBInternalCodeSet [here](https://github.com/OpenBankingUK/ExternalInternal…
TransactionId
string
Unique identifier for the transaction within a servicing institution. This identifier is both unique and immutable.
OBActiveOrHistoricCurrencyAndAmount_6
object
Amount of money associated with the statement fee type.
2 properties 2 required
OBSupplementaryData1
object
Additional information that can not be captured in the structured fields and/or any other specific block.
OBReadStatement2
object
3 properties 1 required
OBPostalAddress7
object
Information that locates and identifies a specific address, as defined by postal services.
18 properties
OBStatement2
object
Provides further details on a statement resource.
16 properties 5 required
OBInternalStatementInterestFrequency1Code
string
Specifies the statement fee type requested. For a full list of values see OBInternalStatementInterestFrequency1Code in OBInternalCodeSet [here](https://github.…
OBCashAccount6_1
object
Unambiguous identification of the account of the debtor, in the case of a credit transaction.
5 properties
OBInternalStatementValueType1Code
string
Statement value type, in a coded form. For a full list of values see OBInternalStatementValueType1Code in OBInternalCodeSet [here](https://github.com/OpenBanki…
OBInternalStatementInterestRateType1Code
string
This code specifies the type of interest (e.g., BOE Base Rate, Fixed Rate, Gross).
OBIntermediaryAgent
object
The intermediary agent associated with this transaction.
6 properties
OBExtendedProprietaryBankTransactionCode
object
Additional proprietary bank transaction codes used by the ASPSP for the underlying transaction
3 properties 1 required
DistrictName
string
Number that of the regional area, known as a district, which forms part of an address
OBInternalStatementBenefitType1Code
string
Benefit type, in a coded form. For a full list of values see OBInternalStatementBenefitType1Code in OBInternalCodeSet [here](https://github.com/OpenBankingUK/E…
Meta
object
Meta Data relevant to the payload
3 properties
OBRate1_1
number
Rate for Statement Interest (where it is applicable in terms of a rate rather than an amount)
AccountId
string
A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner.
EndDateTime
string
Date and time at which the statement period ends. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in response…
PostBox
string
Information that locates and identifies a box in a post office assigned to a person or organization, where letters for them are kept until called for.
TransactionInformation
string
Further details of the transaction. This is the transaction narrative, which is unstructured text.
OBInternalStatementFeeRateType1Code
string
This code indicates the specific type of fee rate (e.g., AER, EAR). For a full list of values see OBInternalStatementFeeRateType1Code in OBInternalCodeSet [her…
OBUltimateDebtor1
object
Ultimate party that owes an amount of money to the (ultimate) creditor.
5 properties
Identification_0
string
Identification assigned by an institution to identify an account. This identification is known by the account owner.
SecondaryIdentification
string
This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally ident…
OBInternalStatementInterestType1Code
string
Interest amount type, in a coded form. For a full list of values see OBInternalStatementInterestType1Code in OBInternalCodeSet [here](https://github.com/OpenBa…
UnitNumber
string
Number that identifies the unit of a specific address .
OBProxy1
object
Specifies an alternate assumed name for the identification of the account.
3 properties 2 required
Rate
string
Rate associated with the statement rate type.
OBActiveOrHistoricCurrencyAndAmount_9
object
Amount of money in the cash transaction entry.
2 properties 2 required
Room
string
Information that locates and identifies a room to form part of an address
OBCurrencyExchange5
object
Set of elements used to provide details on the currency exchange.
7 properties 2 required
OBErrorResponse1
object
An array of detail error codes, and messages, and URLs to documentation to help remediation.
4 properties 1 required
OBInternalStatementRateType1Code
string
Statement rate type, in a coded form. For a full list of values see OBInternalStatementRateType1Code in OBInternalCodeSet [here](https://github.com/OpenBanking…
BookingDateTime
string
Date and time when a transaction entry is posted to an account on the account servicer's books. Usage: Booking date is the expected booking date, unless the st…
OBError1
object
4 properties 1 required
OBCreditDebitCode_2
string
Indicates whether the balance is a credit or a debit balance. Usage: A zero balance is considered to be a credit balance. For a full list of enumeration values…
OBBalanceType1Code
string
Balance type, in a coded form. For a full list of enumeration values refer to ExternalBalanceType1Code in ISOExternalCodeSet [here](https://github.com/OpenBank…

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

open-banking-uk-statements-api-openapi.yml Raw ↑

Other APIs UK Open Banking publishes across the network.

UK Open Banking Open Data API
UK Open Banking Dynamic Client Registration API
UK Open Banking Directory API
UK Open Banking Account Access Consents API
UK Open Banking Accounts API
UK Open Banking ATM API
UK Open Banking Balances API
UK Open Banking BCA API
UK Open Banking Beneficiaries API
UK Open Banking Branch API
UK Open Banking CCC API
UK Open Banking Direct Debits API
Where this information came from

This is an independent, third-party profile of UK Open Banking Statements API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.