Balances v2.0.0

Version Control

VersionDateAuthorComments
2.0-rc2 Open Banking Read/Write API Team

This is the initial version following specification restructuring.

Updates:

  • Added new limit types to OBExternalLimitType2Code:
    • Credit
    • Available
  • Modified usage examples:
    • Removed references to x-jws-signature
    • Updated link URLs
    • Name-spaced AccountRequestIds in usage examples - as IntentIds are name-spaced in other usage examples. ASPSPs may construct the IntentId as they wish.
2.0-rc3 Open Banking Read/Write API Team

This is the initial version for release candidate 3

Updates:

  • Updated mandatory, conditional or optional as per Design Principles
2.0.0Open Banking Read/Write API TeamThis is the baseline version. No changes from v2.0-rc3.

Endpoints


ResourceHTTP OperationEndpointMandatory?ScopeGrant TypeIdempotentParametersRequest ObjectResponse Object
1balancesGETGET /accounts/{AccountId}/balancesMandatoryaccountsAuthorization Code


OBReadBalance1
2balancesGETGET /balancesOptionalaccountsAuthorization Code
Pagination
OBReadBalance1

GET /accounts/{AccountId}/balances

An AISP may retrieve the account balance information resource for a specific AccountId (which is retrieved in the call to GET /accounts).

GET /balances

If an ASPSP has implemented the bulk retrieval endpoints - an AISP may optionally retrieve the account information resources in bulk.

This will retrieve the resources for all authorised accounts linked to the account-request.

Data Model

The OBReadBalance1 object will be used for the call to: 

  • GET /accounts/{AccountId}/balances
  • GET /balances

Resource Definition

This resource represents the net increases and decreases in an account (AccountId) at a specific point in time.

An account (AccountId) may have multiple balance types (these follow the standard ISO 20022 balance type enumerations). If an ASPSP includes a credit line in an available balance - then the balance representation will have a section for the credit line amount and type.

UML Diagram

Notes:

  • Multiple balances may be returned (each with a different value for Type) for an account. This is for ASPSPs that show multiple balances in their online channels.
  • The CreditLine section may be repeated - as multiple credit lines may be included in an available balance.
  • A DateTime element has been used instead of a complex choice element of Date and DateTime. Where time elements do not exist in ASPSP systems - the time portion of the DateTime element will be defaulted to 00:00:00+00:00

Data Dictionary

NameOccurrenceXPathEnhancedDefinitionClassCodesPattern
OBReadBalance1
OBReadBalance1
OBReadBalance1

Data1..1OBReadBalance1/Data
OBReadDataBalance1

Balance1..nOBReadBalance1/Data/BalanceSet of elements used to define the balance details.OBCashBalance1

AccountId1..1OBReadBalance1/Data/Balance/AccountIdA unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner.Max40Text

Amount1..1OBReadBalance1/Data/Balance/AmountAmount of money of the cash balance.ActiveOrHistoricCurrencyAndAmount

Currency1..1OBReadBalance1/Data/Balance/Amount/CurrencyA 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 "Codes for the representation of currencies and funds".ActiveOrHistoricCurrencyCode
^[A-Z]{3,3}$
CreditDebitIndicator1..1OBReadBalance1/Data/Balance/CreditDebitIndicatorIndicates whether the balance is a credit or a debit balance.
Usage: A zero balance is considered to be a credit balance.
OBCreditDebitCodeCredit
Debit

Type1..1OBReadBalance1/Data/Balance/TypeBalance type, in a coded form.OBBalanceType1CodeClosingAvailable
ClosingBooked
Expected
ForwardAvailable
Information
InterimAvailable
InterimBooked
OpeningAvailable
OpeningBooked
PreviouslyClosedBooked

DateTime1..1OBReadBalance1/Data/Balance/DateTimeIndicates the date (and time) of the balance.ISODateTime

CreditLine0..nOBReadBalance1/Data/Balance/CreditLineSet of elements used to provide details on the credit line.OBCreditLine1

Included1..1OBReadBalance1/Data/Balance/CreditLine/IncludedIndicates whether or not the credit line is included in the balance of the account.

Usage: If not present, credit line is not included in the balance amount of the account.
xs:boolean

Amount0..1OBReadBalance1/Data/Balance/CreditLine/AmountAmount of money of the credit line.ActiveOrHistoricCurrencyAndAmount

Currency1..1OBReadBalance1/Data/Balance/CreditLine/Amount/CurrencyA 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 "Codes for the representation of currencies and funds".ActiveOrHistoricCurrencyCode
^[A-Z]{3,3}$
Type0..1OBReadBalance1/Data/Balance/CreditLine/TypeLimit type, in a coded form.OBExternalLimitType1CodeAvailable
Credit
Emergency
Pre-Agreed
Temporary

Enumerations

Code ClassName Definition 
OBBalanceType1CodeClosingAvailable Closing balance of amount of money that is at the disposal of the account owner on the date specified. 
OBBalanceType1CodeClosingBooked 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. 
OBBalanceType1CodeExpected 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. 
OBBalanceType1CodeForwardAvailable Forward available balance of money that is at the disposal of the account owner on the date specified. 
OBBalanceType1CodeInformation Balance for informational purposes. 
OBBalanceType1CodeInterimAvailable 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. 
OBBalanceType1CodeInterimBooked 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. 
OBBalanceType1CodeOpeningAvailable Opening balance of amount of money that is at the disposal of the account owner on the date specified. 
OBBalanceType1CodeOpeningBooked Book balance of the account at the beginning of the account reporting period. It always equals the closing book balance from the previous report. 
OBBalanceType1CodePreviouslyClosedBooked 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. 
OBCreditDebitCodeCreditOperation is a credit
OBCreditDebitCodeDebitOperation is a debit
OBExternalLimitType2CodePre-AgreedThe amount of an arranged lending limit that has been agreed with the account holder
OBExternalLimitType2CodeTemporaryThe amount of a temporary lending limit that has been agreed with the account holder
OBExternalLimitType2CodeEmergencyThe amount of an arranged lending limit that can be borrowed on top of pre-agreed lending, that has been agreed with the account holder
OBExternalLimitType2CodeCreditThe amount of a credit limit that has been agreed with the account holder
OBExternalLimitType2CodeAvailableThe amount of credit limit available to the account holder

Usage Examples

Specific Account

Request

Get Account Balances Request
GET /accounts/22289/balances HTTP/1.1
Authorization: Bearer Az90SAOJklae
x-fapi-financial-id: OB/2017/001
x-fapi-customer-last-logged-time: Sun, 10 Sep 2017 19:43:31 UTC
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json

Response

Get Account Balances Response
HTTP/1.1 200 OK
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json

{
  "Data": {
    "Balance": [
      {
        "AccountId": "22289",
        "Amount": {
          "Amount": "1230.00",
          "Currency": "GBP"
        },
        "CreditDebitIndicator": "Credit",
        "Type": "InterimAvailable",
        "DateTime": "2017-04-05T10:43:07+00:00",
        "CreditLine": [
          {
            "Included": true,
            "Amount": {
              "Amount": "1000.00",
              "Currency": "GBP"
            },
            "Type": "Pre-Agreed"
          }
        ]
      }
    ]
  },
  "Links": {
    "Self": "https://api.alphabank.com/open-banking/v2.0/accounts/22289/balances/"
  },
  "Meta": {
    "TotalPages": 1
  }
}


Bulk

Request

Get Balances Request
GET /balances HTTP/1.1
Authorization: Bearer Az90SAOJklae
x-fapi-financial-id: OB/2017/001
x-fapi-customer-last-logged-time:  Sun, 10 Sep 2017 19:43:31 UTC
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json

Response

Get Balances Response
HTTP/1.1 200 OK
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json

{
  "Data": {
    "Balance": [
      {
        "AccountId": "22289",
        "Amount": {
          "Amount": "1230.00",
          "Currency": "GBP"
        },
        "CreditDebitIndicator": "Credit",
        "Type": "InterimAvailable",
        "DateTime": "2017-04-05T10:43:07+00:00",
        "CreditLine": [
          {
            "Included": true,
            "Amount": {
              "Amount": "1000.00",
              "Currency": "GBP"
            },
            "Type": "Pre-Agreed"
          }
        ]
      },
      {
        "AccountId": "31820",
        "Amount": {
          "Amount": "57.36",
          "Currency": "GBP"
        },
        "CreditDebitIndicator": "Debit",
        "Type": "InterimBooked",
        "DateTime": "2017-05-02T14:22:09+00:00"
      }
    ]
  },
  "Links": {
    "Self": "https://api.alphabank.com/open-banking/v2.0/balances/"
  },
  "Meta": {
    "TotalPages": 1
  }
}