Table of Contents outline true style none
Version Control
Version | Date | Author | Comments |
---|---|---|---|
3.0-draft1 | 18-Apr-2018 | OB R/W API Team | Initial draft for Version 3.0
|
3.0-draft3 | 18-May-2018 | OB R/W API Team | Renamed "Account Request" to "Account Access Consent" renamed AccountRequestId to ConsentId In Endpoint section - removed reference to "must respond with a 404 (Not Found) for requests to that URL." and moved to Read Write API page. |
3.0-draft4 | OB R/W API Team | Draft4 changes:
| |
3.0-draft5 | OB R/W API Team | Errata:
Draft5 changes:
| |
3.0-draft6 | OB R/W API Team |
| |
3.0-draft7 | OB R/W API Team | Errata:
Updates:
| |
3.0-RC2 | OB R/W API Team | Errata:
Updates:
| |
3.0-RC3 | OB R/W API Team | Added a section on Security / Consent Authorisation / Consent Re-authentication to clarify that PSUs can be re-authenticated as per definitions in the root document. Updated Security / Consent Authorisation / Changes to Selected Accounts to reflect that selected accounts may change at the point of re-authentication Updated references to consent "re-authorisation" to consent "re-authentication" Added Swagger-based API specification files encoded in JSON and YAML. | |
3.0 | OB R/W API Team | This is the baseline version. No change from RC3. |
Overview
This specification describes the Account Information and Transaction API flows and payloads.
...
This specification should be read in conjunction with Read/Write Data API Specification which provides a description of the elements that are common across all the Read/Write Data APIs.
Document Structure
This document consists of the following parts:
...
Swagger Specifications: Provides links to the swagger specifications for the APIs.
Basics
Overview
The figure below provides a general outline of an account information requests and flow using the Account Info APIs.
Steps
Step 1: Request Account Information
...
- This is carried out by making a GET request the relevant resource.
- The unique AccountId(s) that are valid for the account-access-consent will be returned with a call to GET /accounts. This will always be the first call once an AISP has a valid access token.
Sequence Diagram
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
participant PSU participant AISP participant ASPSP Authorisation Server participant ASPSP Resource Server note over PSU, ASPSP Resource Server Step 1: Request account information end note PSU -> AISP: Get account/transaction information note over PSU, ASPSP Resource Server Step 2: Setup account access consent end note AISP <-> ASPSP Authorisation Server: Establish TLS 1.2 MA AISP -> ASPSP Authorisation Server: Initiate Client Credentials Grant ASPSP Authorisation Server -> AISP: access-token AISP <-> ASPSP Resource Server: Establish TLS 1.2 MA AISP -> ASPSP Resource Server: POST /account-access-consents state over ASPSP Resource Server: Consent Status: AwaitingAuthorisation ASPSP Resource Server -> AISP: HTTP 201 (Created), ConsentId note over PSU, ASPSP Resource Server Step 3: Authorise consent end note alt Redirection (Using Authorization Code Grant) AISP -> PSU: HTTP 302 (Found), Redirect (ConsentId) PSU -> ASPSP Authorisation Server: Follow redirect (ConsentId) PSU <-> ASPSP Authorisation Server: authenticate PSU <-> ASPSP Authorisation Server: SCA if required PSU <-> ASPSP Authorisation Server: select accounts state over ASPSP Resource Server: Consent Status: Authorised ASPSP Authorisation Server -> PSU: HTTP 302 (Found), Redirect (authorization-code) PSU -> AISP: Follow redirect (authorization-code) AISP <-> ASPSP Authorisation Server: Establish TLS 1.2 MA AISP -> ASPSP Authorisation Server: Exchange authorization-code for access token ASPSP Authorisation Server -> AISP: access-token else Decoupled (Using CIBA) AISP -> ASPSP Authorisation Server: POST /bc-authorize (login_hint_token) ASPSP Authorisation Server -> AISP: OK PSU -> ASPSP Authorisation Server: Authorise (Consent Id) PSU <-> ASPSP Authorisation Server: authenticate PSU <-> ASPSP Authorisation Server: SCA if required PSU <-> ASPSP Authorisation Server: select accounts state over ASPSP Resource Server: Consent Status: Authorised alt Using callback ASPSP Authorisation Server -> AISP: Callback (authorization-code) AISP <-> ASPSP Authorisation Server: Establish TLS 1.2 MA AISP -> ASPSP Authorisation Server: Exchange authorization-code for access token ASPSP Authorisation Server -> AISP: access-token else Using polling AISP <-> ASPSP Authorisation Server: Establish TLS 1.2 MA AISP -> ASPSP Authorisation Server: Poll at /token using auth-req-id ASPSP Authorisation Server -> AISP: access-token end alt end alt note over PSU, ASPSP Resource Server Step 4: Request data end note AISP <-> ASPSP Resource Server: Establish TLS 1.2 MA AISP -> ASPSP Resource Server: GET /accounts ASPSP Resource Server -> AISP: HTTP 200 (OK), List of accounts containing AccountId(s) AISP -> ASPSP Resource Server: GET /accounts/{AccountId}/transactions ASPSP Resource Server -> AISP: HTTP 200 (OK), List of transactions option footer=bar |
Idempotency
The API endpoints for creating account-access-consent resources are not idempotent.
If a time-out error occurs - then we would expect an AISP to create a new account-access-consent resource - rather than try with the same resource.
Release Management
This section overviews the release management and versioning strategy for the Account And Transaction API.
Account Access Consent
The account-access-consent resource is referred to as an account-request resource in v1 and v2 of this specification. For clarity, it has been generalised to 'Consent' in the detail below.
POST
- An AISP must not create a Consent on a newer version, and use it on a previous version
- E.g., A ConsentId for an account-access-consent created in v3, must not be used to access v2 endpoints
GET
- An AISP must not access a Consent on an older version, via the Id for a Consent created in a newer version
- E.g., An account-access-consent created in v3 accessed via v2 account-request
- An ASPSP must allow a Consent to be accessed in a newer version
- An ASPSP must ensure Permissions set associated with a Consent are unchanged when accessed in a different version
- E.g., An account-request created in v2 will have the same details when accessed via v2 and v3 (as an account-access-consent)
- An ASPSP must ensure a Consent's fields are unchanged when accessed in a different version
- An ASPSP may allow expired Consents to be accessed in a newer version
- An ASPSP may choose to populate new fields introduced in a resource from previous version sensible defaults (if mandatory) or not populate at all (if not mandatory)
- E.g., OBReadResponse1/Data/StatusUpdateDateTime introduced in v2 accessed with v1 AccountRequestId can be populated with Last accessed date time, if not already available in the system of records
DELETE
- An AISP must not delete a Consent on an older version, via an Id for a Consent created in a newer version
- E.g., An account-access-consent is created in v3, and request DELETE on v2
- An ASPSP must support deleting a Consent from a previous version via a newer version
- E.g., An account-request is created in v2, and request DELETE on v3
Account Information Resources
GET
- An AISP may use a token that is bound to a Consent in a previous version, to access an endpoint of a newer version
- An AISP may use an Id for a Consent created in a previous version to retrieve Account Information resources in a newer version
- E.g., AccountRequestId from v2 can be used as ConsentId in v3, to GET /accounts
- An AISP must not use an Id for a Consent from a newer version to access Account Information resources in a previous version
- E.g., ConsentId for an account-access-consent created in v3, must not be used to access v2 Account Information endpoints
- An AISP must not use an Id for a Consent from a previous version to access a resource introduced in a newer version (as the Consent will not have Permissions required to access the new resource)
- An ASPSP must allow an AISP to use an Id for a Consent from a previous version to access Account Information resource endpoints in a newer version
- E.g., AccountRequestId created in v2 must be allowed to access Account Information resource endpoints in v3
- An ASPSP must reject the request to access a resource, for which a Consent's Permissions set doesn't permit
- An ASPSP may choose to populate new fields introduced in a resource from previous version sensible defaults (if mandatory) or not populate at all
- E.g., OBReadResponse1/Data/StatusUpdateDateTime introduced in Version2 accessed with V1 AccountRequestId can be populated with Last accessed date time, if not already available in the system of records
Endpoints
This section looks at the list of available API endpoints to access Account Information and Transaction data and optionality (definitions of mandatory, conditional or optional are defined in the Principles section).
...
Page Properties Report | ||||||||
---|---|---|---|---|---|---|---|---|
|
Security & Access Control
Scopes
The access tokens required for accessing the Account Info APIs must have at least the following scope:
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
accounts |
Grants Types
AISPs must use a client credentials grant to obtain a token to access the account-access-consents resource. In the specification, this grant type is referred to as "Client Credentials".
AISPs must use an grant using a redirect or decoupled flow to obtain a token to access all other resources. In the specification, this grant type is referred to as "Authorization Code".
Consent Authorisation
The AISP must create an account-access-consent resource through a POST operation. This resource indicates the consent that the AISP claims it has been given by the PSU to retrieve account and transaction information. At this stage, the consent is not yet authorised as the ASPSP has not yet verified this claim with the PSU.
...
Once these steps are complete, the consent is considered to have been authorised by the PSU.
Consent Elements
The Account Access Consent resource consists of the following fields, which together form the elements of the consent provided by the PSU to the AISP:
- Permissions: The set of data clusters that the PSU has consented to allow the AISP to access
- ExpirationDateTime: The date-time up to which the consent is valid.
- TransactionFromDateTime: The earliest point of the transaction / statement historical period that the PSU has consented to provide access to the AISP.
- TransactionToDateTime: The last point of the transaction / statement historical period that the PSU has consented to provide access to the AISP.
Permissions
Permissions codes will be used to limit the data that is returned in response to a resource request.
...
Permissions | Endpoints | Business Logic | Data Cluster Description |
---|---|---|---|
ReadAccountsBasic | /accounts /accounts/{AccountId} | Ability to read basic account information | |
ReadAccountsDetail | /accounts /accounts/{AccountId} | Access to additional elements in the payload | Ability to read account identification details |
ReadBalances | /balances /accounts/{AccountId}/balances | Ability to read all balance information | |
ReadBeneficiariesBasic | /beneficiaries /accounts/{AccountId}/beneficiaries | Ability to read basic beneficiary details | |
ReadBeneficiariesDetail | /beneficiaries /accounts/{AccountId}/beneficiaries | Access to additional elements in the payload | Ability to read account identification details for the beneficiary |
ReadDirectDebits | /direct-debits /accounts/{AccountId}/direct-debits | Ability to read all direct debit information | |
ReadStandingOrdersBasic | /standing-orders /accounts/{AccountId}/standing-orders | Ability to read basic standing order information | |
ReadStandingOrdersDetail | /standing-orders /accounts/{AccountId}/standing-orders | Access to additional elements in the payload | Ability to read account identification details for beneficiary of the standing order |
ReadTransactionsBasic | /transactions /accounts/{AccountId}/transactions /accounts/{AccountId}/statements/{StatementId}/transactions | Permissions must also include at least one of:
| Ability to read basic transaction information |
ReadTransactionsDetail | /transactions /accounts/{AccountId}/transactions /accounts/{AccountId}/statements/{StatementId}/transactions | Access to additional elements in the payload Permissions must also include at least one of
| Ability to read transaction data elements which may hold silent party details |
ReadTransactionsCredits | /transactions /accounts/{AccountId}/transactions /accounts/{AccountId}/statements/{StatementId}/transactions | Access to credit transactions. Permissions must also include one of:
| Ability to read only credit transactions |
ReadTransactionsDebits | /transactions /accounts/{AccountId}/transactions /accounts/{AccountId}/statements/{StatementId}/transactions | Access to debit transactions. Permissions must also includeone of:
| Ability to read only debit transactions |
ReadStatementsBasic | /statements /accounts/{AccountId}/statements | Ability to read basic statement details | |
ReadStatementsDetail | /statements /accounts/{AccountId}/statements /accounts/{AccountId}/statements/{StatementId}/file | Access to additional elements in the payload Access to download the statement file (if the ASPSP makes this available). | Ability to read statement data elements which may leak other information about the account |
ReadProducts | /products /accounts/{AccountId}/product | Ability to read all product information relating to the account | |
ReadOffers | /offers /accounts/{AccountId}/offers | Ability to read all offer information | |
ReadParty | /accounts/{AccountId}/party | Ability to read party information on the account owner. | |
ReadPartyPSU | /party | Ability to read party information on the PSU logged in. | |
ReadScheduledPaymentsBasic | /scheduled-payments /accounts/{AccountId}/scheduled-payments | Ability to read basic statement details | |
ReadScheduledPaymentsDetail | /scheduled-payments /accounts/{AccountId}/scheduled-payments | Access to additional elements in the payload | |
ReadPAN | All API endpoints where PAN is available as a structured field | Request to access to PAN in the clear | Request to access PAN in the clear across the available endpoints. If this permission code is not in the account-access-consent, the AISP will receive a masked PAN. While an AISP may request to access PAN in the clear, an ASPSP may still respond with a masked PAN if:
|
Detail Permissions
The additional elements that are granted for "Detail" permissions are listed in this section.
...
Permission - Detail Codes | Data Element Name | Occurrence | XPath |
---|---|---|---|
ReadAccountsDetail | Account | 0..1 | OBReadAccount2/Data/Account/Account |
ReadAccountsDetail | Servicer | 0..1 | OBReadAccount2/Data/Account/Servicer |
ReadBeneficiariesDetail | CreditorAgent | 0..1 | OBReadBeneficiary2/Data/Beneficiary/CreditorAgent |
ReadBeneficiariesDetail | CreditorAccount | 0..1 | OBReadBeneficiary2/Data/Beneficiary/CreditorAccount |
ReadStandingOrdersDetail | CreditorAgent | 0..1 | OBReadStandingOrder3/Data/StandingOrder/CreditorAgent |
ReadStandingOrdersDetail | CreditorAccount | 0..1 | OBReadStandingOrder3/Data/StandingOrder/CreditorAccount |
ReadTransactionsDetail | TransactionInformation | 0..1 | OBReadTransaction3/Data/Transaction/TransactionInformation |
ReadTransactionsDetail | Balance | 0..1 | OBReadTransaction3/Data/Transaction/Balance |
ReadTransactionsDetail | MerchantDetails | 0..1 | OBReadTransaction3/Data/Transaction/MerchantDetails |
ReadTransactionsDetail | CreditorAccount | 0..1 | OBReadTransaction3/Data/Transaction/CreditorAccount |
ReadTransactionsDetail | DebtorAccount | 0..1 | OBReadTransaction3/Data/Transaction/DebtorAccount |
ReadStatementsDetail | StatementAmount | 0..* | OBReadStatement1/Data/Statement/StatementAmount |
ReadScheduledPaymentsDetail | CreditorAgent | 0..1 | OBReadScheduledPayment1/Data/ScheduledPayment/CreditorAgent |
ReadScheduledPaymentsDetail | CreditorAccount | 0..1 | OBReadScheduledPayment1/Data/ScheduledPayment/CreditorAccount |
In addition the ReadStatementsDetail is required to access the statement file download via: /accounts/{AccountId}/statements/{StatementId}/file
...
Example behaviour of the Permissions for the ReadAccountsBasic and ReadAccountsDetail codes is as follows:
Reversing Entries
It is expected that transactions will be returned in the payload irrespective of whether they are reversing entries as long as the PSU has provided consent for that type of transaction.
...
If the PSU has provided permission for ReadTransactionsDebits, the ASPSP must include all debits including credit reversals.
Expiration Date Time
The ExpirationDateTime is an optional field which specifies the expiration for AISP access to the PSU's data.
...
The ExpirationDateTime applies to all Permissions (data clusters) being consented.
Transaction To/From Date Time
The TransactionToDateTime and the TransactionFromDateTime specify the period for consented transaction and/or statement history. Both the fields are optional and one may be specified without the other.
...
The AISP must be restricted to accessing statements which are completely within this period when accessing the statements resource.
Account Access Consent Status
The Account Access Consent resource may have one of the following status codes after authorisation has taken place:
Status | Description | |
---|---|---|
1 | Authorised | The account access consent has been successfully authorised. |
2 | Rejected | The account access consent has been rejected. |
3 | Revoked | The account access consent has been revoked via the ASPSP interface. |
Consent Re-authentication
Account Access Consents are long-lived consents.
...
An ASPSP may allow the PSU to change the selected accounts during consent re-authentication.
Consent Revocation
A PSU may revoke consent for accessing account information at any point in time.
...
- The AISP must cease to access the APIs at that point
- The AISP must call the DELETE operation on the account-access-consent resource (before confirming consent revocation with the PSU) to indicate to the ASPSP that the PSU has revoked consent
Changes to Selected Account(s)
The PSU must select the accounts to which the consent should be applied at the point of consent authorisation.
...
In such a situation, only the affected account is removed from the list of selected accounts. The ASPSP must not revoke authorisation to other accounts.
Risk Scoring Information
Information for risk scoring and assessment will come via:
...
No fields for business logic security concerns have been identified for the Account Info APIs.
Data Model
Using Meta to identify Available Transaction Period
For Accounts & Transaction APIs, the Meta
section in API responses may contain two additional fields to indicate the date range for which data has been returned.
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
"Meta": { "TotalPages": 1, "FirstAvailableDateTime": "2017-05-03T00:00:00+00:00", "LastAvailableDateTime": "2017-12-03T00:00:00+00:00" } |
Mapping to Schemes & Standards
The Account Info API resources, where possible, have been borrowed from the ISO 20022 camt.052 XML standard. However - has been adapted for APIs based as per our design principles.
...
- The camt.052 header section and trailer sections have been removed - as these are not required for a RESTful API
- Resources have been identified, and payload structures have been designed for these resources - rather than a full message (i.e., camt.052) that encompasses all resources in a report format. This has meant we've designed separate endpoints and payloads to cover:
- accounts
- balances
- beneficiaries
- direct-debits
- offers
- party
- products
- standing-orders
- statements
- transactions
- scheduled-payments
- New payloads have been designed for beneficiaries, direct-debits, standing-orders, and products resources - as these are not in the ISO 20022 standard (or the camt.052 message)
- A DateTime element has been used instead of a complex choice element of Date and DateTime (across all API endpoints). Where time elements do not exist in ASPSP systems - the expectation is the time portion of the DateTime element will be defaulted to 00:00:00+00:00
- Variations for the accounts structure include:
- Standardised inline with the Payment API account structures
- Contains elements to identify an account Nickname, SecondaryIdentification
- Variations for the balances structure include:
- Adding a Type into the CreditLine section - to allow for multiple credit line types affecting the available balance
- DateTime element has been specified instead of a complex choice of Date and DateTime
Variations for the transactions structure include:
Renaming "entry" to "transaction" for consistency - as this is the language used in the CMA Order, and PSD2
DateTime elements used instead of a complex choice of Date and DateTime
Flattening of the structure for BankTransactionCode and ProprietaryBankTransactionCode
Additional information for an AddressLine, MerchantDetails, and a running Balance
Resources
Each of the Account and Transaction API resources are documented in sub-pages of this specification. Each resource is documented with:
- Endpoints
- The API endpoints available for the resource
- Data Model
- Resource definition
- UML diagram
- Permissions as they relate to accessing the resource
- Data dictionary - whcih defines fields, re-usable classes, mandatory (1..1) or conditional (0..1) as defined in the Design Principles section, and enumerations
- Usage Examples
Enumerations
Static Enumerations
Code Class | Name | Definition |
---|---|---|
OBAddressTypeCode | Business | Address is the business address. |
OBAddressTypeCode | Correspondence | Address is the address where correspondence is sent. |
OBAddressTypeCode | DeliveryTo | Address is the address to which delivery is to take place. |
OBAddressTypeCode | MailTo | Address is the address to which mail is sent. |
OBAddressTypeCode | POBox | Address is a postal office (PO) box. |
OBAddressTypeCode | Postal | Address is the complete postal address. |
OBAddressTypeCode | Residential | Address is the home address. |
OBAddressTypeCode | Statement | Address is the address where statements are sent. |
OBBalanceType1Code | ClosingAvailable | Closing balance of amount of money that is at the disposal of the account owner on the date specified. |
OBBalanceType1Code | ClosingBooked | Balance of the account at the end of the pre-agreed account reporting period. It is the sum of the opening booked balance at the beginning of the period and all entries booked to the account during the pre-agreed account reporting period. |
OBBalanceType1Code | ClosingCleared | Closing balance of amount of money that is cleared on the date specified. |
OBBalanceType1Code | Expected | Balance, composed of booked entries and pending items known at the time of calculation, which projects the end of day balance if everything is booked on the account and no other entry is posted. |
OBBalanceType1Code | ForwardAvailable | Forward available balance of money that is at the disposal of the account owner on the date specified. |
OBBalanceType1Code | Information | Balance for informational purposes. |
OBBalanceType1Code | InterimAvailable | Available balance calculated in the course of the account servicer's business day, at the time specified, and subject to further changes during the business day. The interim balance is calculated on the basis of booked credit and debit items during the calculation time/period specified. |
OBBalanceType1Code | InterimBooked | Balance calculated in the course of the account servicer's business day, at the time specified, and subject to further changes during the business day. The interim balance is calculated on the basis of booked credit and debit items during the calculation time/period specified. |
OBBalanceType1Code | InterimCleared | Cleared balance calculated in the course of the account servicer's business day, at the time specified, and subject to further changes during the business day. |
OBBalanceType1Code | OpeningAvailable | Opening balance of amount of money that is at the disposal of the account owner on the date specified. |
OBBalanceType1Code | OpeningBooked | Book balance of the account at the beginning of the account reporting period. It always equals the closing book balance from the previous report. |
OBBalanceType1Code | OpeningCleared | Opening balance of amount of money that is cleared on the date specified. |
OBBalanceType1Code | PreviouslyClosedBooked | Balance of the account at the previously closed account reporting period. The opening booked balance for the new period has to be equal to this balance. Usage: the previously booked closing balance should equal (inclusive date) the booked closing balance of the date it references and equal the actual booked opening balance of the current date. |
OBCreditDebitCode | Credit | Operation is a credit |
OBCreditDebitCode | Debit | Operation is a debit |
OBEntryStatus1Code | Booked | Booked means that the transfer of money has been completed between account servicer and account owner Usage: Status Booked does not necessarily imply finality of money as this depends on other factors such as the payment system used, the completion of the end- to-end transaction and the terms agreed between account servicer and owner. Status Booked is the only status that can be reversed. |
OBEntryStatus1Code | Pending | Booking on the account owner's account in the account servicer's ledger has not been completed. Usage: this can be used for expected items, or for items for which some conditions still need to be fulfilled before they can be booked. If booking takes place, the entry will be included with status Booked in subsequent account report or statement. Status Pending cannot be reversed. |
OBExternalAccountIdentification2Code | IBAN | An identifier used internationally by financial institutions to uniquely identify the account of a customer at a financial institution, as described in the latest edition of the international standard ISO 13616. "Banking and related financial services - International Bank Account Number (IBAN)". |
OBExternalAccountIdentification2Code | SortCodeAccountNumber | Sort Code and Account Number - identifier scheme used in the UK by financial institutions to identify the account of a customer. The identifier is the concatenation of the 6 digit UK sort code and 8 digit account number. The regular expression for this identifier is: ^[0-9]{6}[0-9]{8}$ |
OBExternalAccountIdentification3Code | IBAN | An identifier used internationally by financial institutions to uniquely identify the account of a customer at a financial institution, as described in the latest edition of the international standard ISO 13616. "Banking and related financial services - International Bank Account Number (IBAN)". |
OBExternalAccountIdentification3Code | PAN | Primary Account Number (PAN) of the card, or card number. |
OBExternalAccountIdentification3Code | SortCodeAccountNumber | Sort Code and Account Number - identifier scheme used in the UK by financial institutions to identify the account of a customer. The identifier is the concatenation of the 6 digit UK sort code and 8 digit account number. The regular expression for this identifier is: ^[0-9]{6}[0-9]{8}$ |
OBExternalAccountSubType1Code | ChargeCard | Account sub-type is a Charge Card. |
OBExternalAccountSubType1Code | CreditCard | Account sub-type is a Credit Card. |
OBExternalAccountSubType1Code | CurrentAccount | Account sub-type is a Current Account. |
OBExternalAccountSubType1Code | EMoney | Account sub-type is an EMoney. |
OBExternalAccountSubType1Code | Loan | Account sub-type is a Loan. |
OBExternalAccountSubType1Code | Mortgage | Account sub-type is a Mortgage. |
OBExternalAccountSubType1Code | PrePaidCard | Account sub-type is a PrePaid Card. |
OBExternalAccountSubType1Code | Savings | Account sub-type is a Savings. |
OBExternalAccountType1Code | Business | Account type is for business. |
OBExternalAccountType1Code | Personal | Account type is for personal. |
OBExternalCardAuthorisationType1Code | ConsumerDevice | Card authorisation was via a Consumer Device Cardholder Verification Method (CDCVM). |
OBExternalCardAuthorisationType1Code | Contactless | Card authorisation was via Contactless. |
OBExternalCardAuthorisationType1Code | None | No card authorisation was used. |
OBExternalCardAuthorisationType1Code | PIN | Card authorisation was via PIN. |
OBExternalCardSchemeType1Code | AmericanExpress | AmericanExpress scheme. |
OBExternalCardSchemeType1Code | Diners | Diners scheme. |
OBExternalCardSchemeType1Code | Discover | Discover scheme. |
OBExternalCardSchemeType1Code | MasterCard | MasterCard scheme. |
OBExternalCardSchemeType1Code | VISA | VISA scheme. |
OBExternalFinancialInstitutionIdentification2Code | BICFI | Valid BICs for financial institutions are registered by the ISO 9362 Registration Authority in the BIC directory, and consist of eight (8) or eleven (11) contiguous characters. |
OBExternalLimitType2Code | Available | The amount of credit limit available to the account holder |
OBExternalLimitType2Code | Credit | The amount of a credit limit that has been agreed with the account holder |
OBExternalLimitType2Code | Emergency | The amount of an arranged lending limit that can be borrowed on top of pre-agreed lending, that has been agreed with the account holder |
OBExternalLimitType2Code | Pre-Agreed | The amount of an arranged lending limit that has been agreed with the account holder |
OBExternalLimitType2Code | Temporary | The amount of a temporary lending limit that has been agreed with the account holder |
OBExternalOfferType1Code | BalanceTransfer | Offer is a balance transfer. |
OBExternalOfferType1Code | LimitIncrease | Offer is a limit increase. |
OBExternalOfferType1Code | MoneyTransfer | Offer is a money transfer. |
OBExternalOfferType1Code | Other | Offer is of an other type. |
OBExternalOfferType1Code | PromotionalRate | Offer is a promotional rate. |
OBExternalPartyType1Code | Delegate | Party that has delegated access. |
OBExternalPartyType1Code | Joint | Party is a joint owner of the account. |
OBExternalPartyType1Code | Sole | Party is a sole owner of the account. |
OBExternalScheduleType1Code | Arrival | Scheduled payment date is specified as the arrival date for the recipient. |
OBExternalScheduleType1Code | Execution | Scheduled payment date is specified as the execution date. |
OBExternalStandingOrderStatus1Code | Active | The standing order is active. |
OBExternalStandingOrderStatus1Code | Inactive | The standing order is inactive. |
OBExternalStatementType1Code | AccountClosure | Final account closure statement. |
OBExternalStatementType1Code | AccountOpening | First statement provided for an account. |
OBExternalStatementType1Code | Annual | Annual statement report. |
OBExternalStatementType1Code | Interim | Adhoc or customised statement period. |
OBExternalStatementType1Code | RegularPeriodic | Regular pre-agreed reporting statement. |
Namespaced Enumerations
The enumerated values specified by Open Banking are documented in Developer Zone and will be prefixed by UK.OBIE
OBExternalStatementAmountType1Code | UK.OBIE.ArrearsClosingBalance | The balance that is in arrears at the end of the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.AvailableBalance | The available balance is the difference between the credit limit and the account balance – how much is avaialble to spend. |
OBExternalStatementAmountType1Code | UK.OBIE.AverageBalanceWhenInCredit | The average daily balance when the account is in crebit during the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.AverageBalanceWhenInDebit | The average daily balance when the account is in debit during the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.AverageDailyBalance | The average daily balance during the statement period. An average daily balance adds the closing balances at the end of each day in a given period of time and divides the sum by the number of calendar days in that period. |
OBExternalStatementAmountType1Code | UK.OBIE.BalanceTransferClosingBalance | The component of balance that relates to balance transfers at the end of the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.CashClosingBalance | The component of balance that relates to cash at the end of the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.ClosingBalance | The ending balance or closing balance at the end of the current statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.CreditLimit | The credit limit is the total amount of credit available to a borrower, including any amount already borrowed. |
OBExternalStatementAmountType1Code | UK.OBIE.CurrentPayment | The total payments received since the last period. |
OBExternalStatementAmountType1Code | UK.OBIE.DirectDebitPaymentDue | The total direct debit payments due for current statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.FSCSInsurance | The amount under which the FSCS scheme will protect consumers when authorised financial services firms fail. |
OBExternalStatementAmountType1Code | UK.OBIE.MinimumPaymentDue | The minimum payment required for the current statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.PendingTransactionsBalance | The total pending transactions balance at the end of the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.PreviousClosingBalance | The closing balance of the previous statement. |
OBExternalStatementAmountType1Code | UK.OBIE.PreviousPayment | The previous payment amount in the last statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.PurchaseClosingBalance | The component of balance that relates to purchases at the end of the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.StartingBalance | The new balance or starting balance carried forward since last statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.TotalAdjustments | Total adjustments to the account during the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.TotalCashAdvances | A cash advance is a short-term loan from a bank or alternative lender. The term also refers to a service provided by many credit card issuers allowing cardholders to withdraw a certain amount of cash. |
OBExternalStatementAmountType1Code | UK.OBIE.TotalCharges | The total charges including interest, late payment fee during the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.TotalCredits | Total amount credited in the account during the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.TotalDebits | Total amount debited (money taken out from account) from the account during the statement period. |
OBExternalStatementAmountType1Code | UK.OBIE.TotalPurchases | The total transactions made during that statement period. |
OBExternalStatementBenefitType1Code | UK.OBIE.Cashback | Cash back amount received during the statement period. |
OBExternalStatementBenefitType1Code | UK.OBIE.Insurance | Insurance amount during the statement period. |
OBExternalStatementBenefitType1Code | UK.OBIE.TravelDiscount | Trave discound amount received during the statement period. |
OBExternalStatementBenefitType1Code | UK.OBIE.TravelInsurance | Travel insurance amount during the statement period. |
OBExternalStatementDateTimeType1Code | UK.OBIE.BalanceTransferPromoEnd | The date the balance transfer promo rate will end. |
OBExternalStatementDateTimeType1Code | UK.OBIE.DirectDebitDue | The date that the direct debit payment is due for the current statement. |
OBExternalStatementDateTimeType1Code | UK.OBIE.LastPayment | The date than an account holder must make the payment for the previous statement period. |
OBExternalStatementDateTimeType1Code | UK.OBIE.LastStatement | The date on which the last statement was made available to account holder. |
OBExternalStatementDateTimeType1Code | UK.OBIE.NextStatement | The date on which the next statement will be made available to account holder. |
OBExternalStatementDateTimeType1Code | UK.OBIE.PaymentDue | The date than an account holder must make the payment for the current statement period. |
OBExternalStatementDateTimeType1Code | UK.OBIE.PurchasePromoEnd | The date the purchase promo rate will end. |
OBExternalStatementDateTimeType1Code | UK.OBIE.StatementAvailable | The date on which the current statement was made available to account holder. |
OBExternalStatementFeeType1Code | UK.OBIE.Annual | Annual fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.BalanceTransfer | Balance transfer fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.CashAdvance | Cash advance fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.CashTransaction | Cash transaction fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.ForeignCashTransaction | Foreign cash transaction fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.ForeignTransaction | Foreign transaction fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.Gambling | Gambling transaction fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.LatePayment | Late payment fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.MoneyTransfer | Money transfer fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.Monthly | Monthly account fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.Overlimit | Over limit fees charged during the statement period.. |
OBExternalStatementFeeType1Code | UK.OBIE.PostalOrder | Postal order fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.PrizeEntry | Prize entry fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.StatementCopy | Statement copy fees charged during the statement period. |
OBExternalStatementFeeType1Code | UK.OBIE.Total | Total fees charges during the statement period. |
OBExternalStatementInterestType1Code | UK.OBIE.BalanceTransfer | Interest on balance transfers. |
OBExternalStatementInterestType1Code | UK.OBIE.Cash | Interest on cash advances. |
OBExternalStatementInterestType1Code | UK.OBIE.EstimatedNext | The estimated interest that will be charged if the closing balance is not paid in full. |
OBExternalStatementInterestType1Code | UK.OBIE.Purchase | Interest on purchases. |
OBExternalStatementInterestType1Code | UK.OBIE.Total | Total interest charges during the statement period. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualBalanceTransfer | Annual interest rate charged on balance transfer from other service provider. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualBalanceTransferAfterPromo | Annual interest rate charged on balance transfer from other service provider after promotional period. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualBalanceTransferPromo | Annual interest rate charged on balance transfer from other service provider during promotional period. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualCash | Annual interest rate charged on cash advance. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualPurchase | Annual interest rate charged on purchases. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualPurchaseAfterPromo | Annual interest rate charged on purchases from after promotional period. |
OBExternalStatementRateType1Code | UK.OBIE.AnnualPurchasePromo | Annual interest rate charged on purchases from during promotional period. |
OBExternalStatementRateType1Code | UK.OBIE.MonthlyBalanceTransfer | Monthly interest rate charged on balance transfer from other service provider. |
OBExternalStatementRateType1Code | UK.OBIE.MonthlyCash | Monthly interest rate charged on cash advance. |
OBExternalStatementRateType1Code | UK.OBIE.MonthlyPurchase | Monthly interest rate charged on purchases. |
OBExternalStatementValueType1Code | UK.OBIE.AirMilesPoints | Air miles points at the end of the statement period. |
OBExternalStatementValueType1Code | UK.OBIE.AirMilesPointsBalance | Air miles points at the end of the statement period. |
OBExternalStatementValueType1Code | UK.OBIE.Credits | Total number of credits in statement period. |
OBExternalStatementValueType1Code | UK.OBIE.Debits | Total number of debits in statement period. |
OBExternalStatementValueType1Code | UK.OBIE.HotelPoints | Hotel points at the end of the statement period. |
OBExternalStatementValueType1Code | UK.OBIE.HotelPointsBalance | Hotel points at the end of the statement period. |
OBExternalStatementValueType1Code | UK.OBIE.RetailShoppingPoints | Retail shopping points at the end of the statement period. |
OBExternalStatementValueType1Code | UK.OBIE.RetailShoppingPointsBalance | Retail shopping points at the end of the statement period. |
Swagger Specification
The Swagger Specification for Account Information APIs can be downloaded from the following links:
...