get/accounts/{accountResourceId}/balances
Retrieval of an account balances report (AISP)
OAuth2 scopes: aisp, aisp
Description
This call returns a set of balances for a given PSU account that is specified by the AISP through an account resource Identification
Prerequisites
- The TPP has been registered by the Registration Authority for the AISP role
- The TPP and the PSU have a contract that has been enrolled by the ASPSP
- At this step, the ASPSP has delivered an OAUTH2 “Authorization Code” or “Resource Owner Password” access token to the TPP (cf. § 3.4.2).
- The TPP and the ASPSP have successfully processed a mutual check and authentication
- The TPP has presented its OAUTH2 “Authorization Code” or “Resource Owner Password” access token which allows the ASPSP to identify the relevant PSU and retrieve the linked PSU context (cf. § 3.4.2) if any.
- The ASPSP takes into account the access token that establishes the link between the PSU and the AISP.
- The TPP has previously retrieved the list of available accounts for the PSU
Business flow
The AISP requests the ASPSP on one of the PSU’s accounts.
The ASPSP answers by providing a list of balances on this account.
- The ASPSP must provide at least the accounting balance on the account.
- The ASPSP can provide other balance restitutions, e.g. instant balance, as well, if possible.
- Actually, from the PSD2 perspective, any other balances that are provided through the Web-Banking service of the ASPSP must also be provided by this ASPSP through the API.
Parameters (17)
- Authorizationheaderstringrequired
Access token to be passed as a header
- accountResourceIdpathstringrequired
Identification of account resource to fetch
Constraints: pattern: ^([a-zA-Z0-9 /\-?:\()\.,']{1,35})$
- PSU-IP-Addressheaderstring
IP address used by the PSU's terminal when connecting to the TPP
- PSU-IP-Portheaderstring
IP port used by the PSU's terminal when connecting to the TPP
- PSU-HTTP-Methodheaderstring
Http method for the most relevant PSU’s terminal request to the TTP
- PSU-Dateheaderstring
Timestamp of the most relevant PSU’s terminal request to the TTP
- PSU-GEO-Locationheaderstring
Geographical location of the PSU as provided by the PSU mobile terminal if any to the TPP
- PSU-User-Agentheaderstring
"User-Agent" header field sent by the PSU terminal when connecting to the TPP
- PSU-Refererheaderstring
"Referer" header field sent by the PSU terminal when connecting to the TPP. Notice that an initial typo in RFC 1945 specifies that "referer" (incorrect spelling) is to be used. The correct spelling "referrer" can be used but might not be understood.
- PSU-Acceptheaderstring
"Accept" header field sent by the PSU terminal when connecting to the TPP
- PSU-Accept-Charsetheaderstring
"Accept-Charset" header field sent by the PSU terminal when connecting to the TPP
- PSU-Accept-Encodingheaderstring
"Accept-Encoding" header field sent by the PSU terminal when connecting to the TPP
- PSU-Accept-Languageheaderstring
"Accept-Language" header field sent by the PSU terminal when connecting to the TPP
- PSU-Device-IDheaderstring
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of installation identification this ID need to be unaltered until removal from device.
- Digestheaderstring
Digest of the body
- Signatureheaderstringrequired
http-signature of the request (cf. https://datatracker.ietf.org/doc/draft-cavage-http-signatures/) The keyId must specify the way to get the relevant qualified certificate. It is requested that this identifier is an URL aiming to provide the relevant Qualified Certificate.
- X-Request-IDheaderstringrequired
Correlation header to be set in a request and retrieved in the relevant response
Constraints: maxLength: 70
Responses
200
The ASPSP answers with a list of account balances
HalBalances
HYPERMEDIA structure used for returning the list of the relevant balances for a given account to the AISP
Fields (2)
- balancesarray<BalanceResource>required
List of account balances
Item: BalanceResource
Structure of an account balance
- namestringrequired
Label of the balance
Constraints: maxLength: 70
- balanceAmountAmountTyperequired
Structure aiming to embed the amount and the currency to be used.
Schema: AmountType
Structure aiming to embed the amount and the currency to be used.
Specifies the currency of the amount or of the account.
Schema: CurrencyCode
Specifies the currency of the amount or of the account. 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 "Codes for the representation of currencies and funds".
Type: string
Constraints: pattern: `^[A-Z]{3,3}$`
- amountstringrequired
ISO20022: Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
ISO20022: Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
Constraints: pattern: `^\-{0,1}[0-9]{1,13}(\.[0-9]{0,5}){0,1}$`
- balanceTypeBalanceStatusrequired
Type of balance
Schema: BalanceStatus
Code CLBDXPCDVALUOTHR Timestamp of the last change of the balance amount
Reference date for the balance
- lastCommittedTransactionstring
Identification of the last committed transaction. This is actually useful for instant balance.
Identification of the last committed transaction. This is actually useful for instant balance.
Constraints: maxLength: 40
- _linksBalancesLinksrequired
links that can be used for further navigation when browsing Account Information at one account level
Schema: BalancesLinks
links that can be used for further navigation when browsing Account Information at one account level
- self: link to the balances of a given account
- parent-list: link to the list of all available accounts
- transactions: link to the transactions of a given account
- selfGenericLinkrequired
hypertext reference
Schema: GenericLink
hypertext reference
- hrefstringrequired
URI to be used
Constraints: maxLength: 140
- templatedboolean
specifies "true" if href is a URI template, i.e. with parameters. Otherwise, this property is absent or set to false
- parent-listGenericLink
hypertext reference
Schema: GenericLink
hypertext reference
- hrefstringrequired
URI to be used
Constraints: maxLength: 140
- templatedboolean
specifies "true" if href is a URI template, i.e. with parameters. Otherwise, this property is absent or set to false
- transactionsGenericLink
hypertext reference
Schema: GenericLink
hypertext reference
- hrefstringrequired
URI to be used
Constraints: maxLength: 140
- templatedboolean
specifies "true" if href is a URI template, i.e. with parameters. Otherwise, this property is absent or set to false
204
No content.
Shared response definition: 204
400
Invalid status value
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
401
Unauthorized, authentication failure.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
403
Forbidden, authentication successful but access to resource is not allowed.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
404
Not found, no request available.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
405
Method Not Allowed.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
406
Not Acceptable.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
408
Request Timeout.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
429
Too many requests.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
500
Internal server error.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
503
Service unavailable.
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
Schemas used by this endpoint
Every structure referenced by this operation, listed once. Cross-references resolve to anchors on this page.
AmountType
Structure aiming to embed the amount and the currency to be used.
Fields (2)
Schema: CurrencyCode
- amountstringrequired
ISO20022: Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
ISO20022: Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
Constraints: pattern: `^\-{0,1}[0-9]{1,13}(\.[0-9]{0,5}){0,1}$`
BalanceResource
Structure of an account balance
Fields (6)
- namestringrequired
Label of the balance
Constraints: maxLength: 70
- balanceAmountAmountTyperequired
Schema: AmountType
- balanceTypeBalanceStatusrequired
Schema: BalanceStatus
Timestamp of the last change of the balance amount
Reference date for the balance
- lastCommittedTransactionstring
Identification of the last committed transaction. This is actually useful for instant balance.
Identification of the last committed transaction. This is actually useful for instant balance.
Constraints: maxLength: 40
BalancesLinks
links that can be used for further navigation when browsing Account Information at one account level
- self: link to the balances of a given account
- parent-list: link to the list of all available accounts
- transactions: link to the transactions of a given account
Fields (3)
- selfGenericLinkrequired
Schema: GenericLink
- parent-listGenericLink
Schema: GenericLink
- transactionsGenericLink
Schema: GenericLink
BalanceStatus
Type of balance
- CLBD: (ISO20022 ClosingBooked) Accounting Balance
- XPCD: (ISO20022 Expected) Instant Balance
- VALU: Value-date balance
- OTHR: Other Balance
| Code |
|---|
CLBD |
XPCD |
VALU |
OTHR |
CurrencyCode
Specifies the currency of the amount or of the account. 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 "Codes for the representation of currencies and funds".
ErrorModel
Generic error report structure
Fields (5)
current timestamp
- statusinteger (int32)required
HTTP error code
- errorstring
HTTP error text
Constraints: maxLength: 140
- messagestringrequired
HTTP textual reason phrase
Constraints: maxLength: 140
- pathstring
Relevant path that was used
Constraints: maxLength: 140
GenericLink
hypertext reference
Fields (2)
- hrefstringrequired
URI to be used
Constraints: maxLength: 140
- templatedboolean
specifies "true" if href is a URI template, i.e. with parameters. Otherwise, this property is absent or set to false
HalBalances
HYPERMEDIA structure used for returning the list of the relevant balances for a given account to the AISP
Fields (2)
- balancesarray<BalanceResource>required
List of account balances
Item: BalanceResource
- _linksBalancesLinksrequired
Schema: BalancesLinks