Paths
/accounts
Gets Account
objects.
ID of the request, unique to the call, as determined by the initiating party.
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP.
Is contained if and only if the "Signature" element is contained in the header of the request.
A signature of the request by the TPP on application level. This might be mandated by ASPSP.
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained.
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU.
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. Examples
- Android: "Myappa/1.2 Dalvik/2.1.0 (Linux; U; Android 6.0.1; vivo 1610 Build/MMB29M)"
- iOS: "MyApp/1 iPhone5,2 iOS/10_1 CFNetwork/808.3 Darwin/16.3.0"
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
- GET
- POST
- PUT
- PATCH
- DELETE
{
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
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 an installation identification this ID need to be unaltered until removal from device.
The forwarded Geo Location of the corresponding http request between PSU and TPP if available.
{
"pattern": "(GEO:)[0-9]{1,3}\\.[-][0-9]{6}\\,[-][0-9]{1,3}\\.[0-9]{6}"
}
Successful response
Bad Request
Not Found
Request Timeout
Internal Server Error
/accounts/{account-id}
Gets Account
objects.
This identification is denoting the addressed account. The account-id is retrieved by using a "Read Account List" call. The account-id is the "id" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent.
ID of the request, unique to the call, as determined by the initiating party.
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP.
Is contained if and only if the "Signature" element is contained in the header of the request.
A signature of the request by the TPP on application level. This might be mandated by ASPSP.
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained.
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU.
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. Examples
- Android: "Myappa/1.2 Dalvik/2.1.0 (Linux; U; Android 6.0.1; vivo 1610 Build/MMB29M)"
- iOS: "MyApp/1 iPhone5,2 iOS/10_1 CFNetwork/808.3 Darwin/16.3.0"
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
- GET
- POST
- PUT
- PATCH
- DELETE
{
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
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 an installation identification this ID need to be unaltered until removal from device.
The forwarded Geo Location of the corresponding http request between PSU and TPP if available.
{
"pattern": "(GEO:)[0-9]{1,3}\\.[-][0-9]{6}\\,[-][0-9]{1,3}\\.[0-9]{6}"
}
Successful response
Bad Request
Not Found
Request Timeout
Internal Server Error
/accounts/{account-id}/balances
Gets Balance
objects.
This identification is denoting the addressed account. The account-id is retrieved by using a "Read Account List" call. The account-id is the "id" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent.
ID of the request, unique to the call, as determined by the initiating party.
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
Is contained if and only if the "Signature" element is contained in the header of the request.
A signature of the request by the TPP on application level. This might be mandated by ASPSP.
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained.
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU.
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. Examples
- Android: "Myappa/1.2 Dalvik/2.1.0 (Linux; U; Android 6.0.1; vivo 1610 Build/MMB29M)"
- iOS: "MyApp/1 iPhone5,2 iOS/10_1 CFNetwork/808.3 Darwin/16.3.0"
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
- GET
- POST
- PUT
- PATCH
- DELETE
{
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
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 an installation identification this ID need to be unaltered until removal from device.
The forwarded Geo Location of the corresponding http request between PSU and TPP if available.
{
"pattern": "(GEO:)[0-9]{1,3}\\.[-][0-9]{6}\\,[-][0-9]{1,3}\\.[0-9]{6}"
}
Successful response
Bad Request
Not Found
Request Timeout
Internal Server Error
/accounts/{account-id}/transactions
Gets Transaction
objects. By default if no dateFrom and dateTo are sent, it will retrieve the transaction history for the last 90 days.
This identification is denoting the addressed account. The account-id is retrieved by using a "Read Account List" call. The account-id is the "id" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent.
Permitted codes are
- "booked",
- "pending" and
- "both" "booked" shall be supported by the ASPSP. To support the "pending" and "both" feature is optional for the ASPSP, Error code if not supported in the online banking frontend
{
"enum": [
"booked",
"pending",
"both"
]
}
ID of the request, unique to the call, as determined by the initiating party.
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
Conditional: Starting date (inclusive the date dateFrom) of the transaction list, mandated if no delta access is required.
For booked transactions, the relevant date is the booking date.
For pending transactions, the relevant date is the entry date, which may not be transparent neither in this API nor other channels of the ASPSP.
End date (inclusive the data dateTo) of the transaction list, default is "now" if not given.
Might be ignored if a delta function is used.
For booked transactions, the relevant date is the booking date.
For pending transactions, the relevant date is the entry date, which may not be transparent neither in this API nor other channels of the ASPSP.
This data attribute is indicating that the AISP is in favour to get all transactions after the transaction with identification entryReferenceFrom alternatively to the above defined period. This is a implementation of a delta access. If this data element is contained, the entries "dateFrom" and "dateTo" might be ignored by the ASPSP if a delta report is supported.
Optional if supported by API provider.
This data attribute is indicating that the AISP is in favour to get all transactions after the last report access for this PSU on the addressed account. This is another implementation of a delta access-report. This delta indicator might be rejected by the ASPSP if this function is not supported. Optional if supported by API provider
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP.
Current page of the list of transactions.
Is contained if and only if the "Signature" element is contained in the header of the request.
A signature of the request by the TPP on application level. This might be mandated by ASPSP.
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained.
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU.
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. Examples
- Android: "Myappa/1.2 Dalvik/2.1.0 (Linux; U; Android 6.0.1; vivo 1610 Build/MMB29M)"
- iOS: "MyApp/1 iPhone5,2 iOS/10_1 CFNetwork/808.3 Darwin/16.3.0"
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
- GET
- POST
- PUT
- PATCH
- DELETE
{
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE"
]
}
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 an installation identification this ID need to be unaltered until removal from device.
The forwarded Geo Location of the corresponding http request between PSU and TPP if available.
{
"pattern": "(GEO:)[0-9]{1,3}\\.[-][0-9]{6}\\,[-][0-9]{1,3}\\.[0-9]{6}"
}
Successful response
Bad Request
Not Found
Request Timeout
Internal Server Error
Definitions
{
"type": "object",
"properties": {
"errorCode": {
"type": "string",
"description": "Optional error code for reporting purposes."
},
"errorDescription": {
"type": "string",
"description": "The description of the error."
}
}
}
{
"type": "object",
"properties": {
"account": {
"$ref": "#/definitions/XS2A_Berlin_Account"
}
}
}
{
"type": "object",
"properties": {
"resourceId": {
"type": "string",
"maxLength": 35,
"description": "Id of te account",
"example": "EX09999999"
},
"iban": {
"type": "string",
"pattern": "[A-Z]{2}[0-9]{2}[A-Z0-9]{12,30}",
"description": "Iban of the account",
"example": "AT611904300234573201"
},
"currency": {
"type": "string",
"description": "Account Currency",
"pattern": "^[A-Z]{3,3}$",
"example": "EUR"
},
"name": {
"type": "string",
"maxLength": 35,
"description": "Account name.",
"example": "Main Account"
},
"product": {
"type": "string",
"maxLength": 35,
"description": "Product Name of the Bank for this account, proprietary definition.",
"example": "Main Product"
},
"cashAccountType": {
"type": "string",
"enum": [
"CACC",
"SVGS"
],
"description": "CreditAccount relates to a Credit Account type. Account Type. CurrentAccount relates to a Current Account."
},
"bic": {
"type": "string",
"maxLength": 11,
"description": "The BIC associated to the account.",
"example": "DABAIE2D"
},
"balances": {
"description": "Optional. Fetched list of balances only if the withBalance is requested in the query parameters and the consent has been granted.",
"type": "array",
"items": {
"$ref": "#/definitions/XS2A_Berlin_Balance"
}
},
"_links": {
"type": "object",
"description": "Relative Links to the balances and to the Transactions",
"properties": {
"balances": {
"type": "string",
"description": "relative link to the balances of the accounts",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"
},
"transactions": {
"type": "string",
"description": "relative link to the transactions of the accounts",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"
}
}
},
"ownerName": {
"$ref": "#/definitions/ownerName"
}
},
"required": [
"resourceId",
"currency"
]
}
Response for the new balances
{
"type": "object",
"properties": {
"account": {
"type": "object",
"properties": {
"iban": {
"type": "string",
"pattern": "[A-Z]{2}[0-9]{2}[A-Z0-9]{12,30}",
"description": "Account IBAN.",
"example": "AT611904300234573201"
}
}
},
"balances": {
"description": "Optional. Fetched list of balances only if the withBalance is requested in the query parameters and the consent has been granted.",
"type": "array",
"items": {
"$ref": "#/definitions/XS2A_Berlin_Balance"
}
}
}
}
{
"type": "object",
"properties": {
"balanceType": {
"type": "string",
"enum": [
"expected",
"interimAvailable"
]
},
"balanceAmount": {
"$ref": "#/definitions/XS2A_Berlin_Amount"
},
"referenceDate": {
"description": "Date for the Balance Type",
"type": "string",
"format": "YYYY-MM-DD",
"example": "2017-10-25"
}
}
}
Amount of the transaction in the Account's currency.
{
"type": "object",
"properties": {
"amount": {
"description": "Amount for the Balance Type",
"type": "string"
},
"currency": {
"type": "string",
"description": "Balance Currency",
"pattern": "^[A-Z]{3,3}$",
"example": "EUR"
}
},
"required": [
"amount",
"currency"
]
}
List of accounts
{
"type": "object",
"properties": {
"accounts": {
"description": "List of eligible accounts",
"type": "array",
"items": {
"$ref": "#/definitions/XS2A_Berlin_Account"
}
}
},
"required": [
"accounts"
]
}
{
"type": "object",
"properties": {
"transactionId": {
"description": "Unique Identifier of the transaction.",
"type": "string",
"example": "123000000"
},
"endToEndId": {
"description": "Unique reference from the initiating party to beneficiary party.",
"type": "string",
"maxLength": 35
},
"mandateId": {
"description": "Identification of Mandates, e.g. a SEPA Mandate ID.",
"type": "string",
"maxLength": 35
},
"bookingDate": {
"description": "Date the transaction was created.",
"type": "string",
"format": "date",
"example": "2018-01-01"
},
"valueDate": {
"description": "Date the transaction was created.",
"type": "string",
"format": "date",
"example": "2018-01-02"
},
"transactionAmount": {
"$ref": "#/definitions/XS2A_Berlin_Amount"
},
"exchangeRate": {
"type": "array",
"items": {
"$ref": "#/definitions/XS2A_Berlin_ExchangeRate"
}
},
"creditorName": {
"description": "Name of the creditor if a Debited transaction",
"type": "string",
"maxLength": 70
},
"creditorAccount": {
"$ref": "#/definitions/XS2A_Berlin_AccountIdentification"
},
"ultimateCreditor": {
"type": "string"
},
"debtorName": {
"description": "Name of the debtor if a Credited transaction",
"type": "string"
},
"debtorAccount": {
"$ref": "#/definitions/XS2A_Berlin_AccountIdentification"
},
"ultimateDebtor": {
"type": "string"
},
"remittanceInformationUnstructured": {
"description": "The description of the transaction.",
"type": "string",
"maxLength": 140
},
"remittanceInformationStructured": {
"description": "Other information.",
"type": "string",
"maxLength": 140
},
"purposeCode": {
"type": "string"
},
"bankTransactionCode": {
"type": "string"
}
},
"required": [
"transactionAmount"
]
}
Exchange rate
{
"type": "object",
"properties": {
"sourceCurrency": {
"$ref": "#/definitions/XS2A_Berlin_CurrencyCode"
},
"unitCurrency": {
"type": "string"
},
"exchangeRate": {
"type": "string",
"example": 0.241
},
"targetCurrency": {
"$ref": "#/definitions/XS2A_Berlin_CurrencyCode"
},
"quotationDate": {
"type": "string",
"format": "date"
},
"contractIdentification": {
"type": "string"
}
},
"required": [
"sourceCurrency",
"exchangeRate",
"unitCurrency",
"targetCurrency",
"quotationDate"
]
}
List of Transactions and associated links
{
"type": "object",
"properties": {
"transactions": {
"$ref": "#/definitions/XS2A_Berlin_TransactionsListAll"
}
}
}
link to be added
{
"type": "object",
"properties": {
"viewAccount": {
"type": "string",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f"
},
"firstPage": {
"type": "string",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions?page=0"
},
"secondPage": {
"type": "string",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions?page=1"
},
"currentPage": {
"type": "string",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions?page=3"
},
"nextPage": {
"type": "string",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions?page=4"
},
"lastPage": {
"type": "string",
"example": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions?page=10"
}
}
}
List of transactions
{
"type": "object",
"properties": {
"booked": {
"$ref": "#/definitions/XS2A_Berlin_TransactionList"
},
"pending": {
"$ref": "#/definitions/XS2A_Berlin_TransactionList"
},
"_links": {
"$ref": "#/definitions/XS2A_Berlin_Link"
}
}
}
List of transactions
{
"type": "array",
"items": {
"$ref": "#/definitions/XS2A_Berlin_Transaction"
}
}
Identifies an account through a number or an IBAN.
{
"type": "object",
"properties": {
"accountNumber": {
"type": "string",
"description": "Account number.",
"example": "99999/9999"
},
"iban": {
"type": "string",
"pattern": "[A-Z]{2}[0-9]{2}[A-Z0-9]{12,30}",
"description": "Account IBAN.",
"example": "AT611904300234573201"
}
}
}
ISO 4217 Alpha 3 currency code
{
"type": "object",
"properties": {
"CurrencyCode": {
"type": "string",
"pattern": "[A-Z]{3}",
"example": "EUR"
}
}
}
Name of the legal account owner. If there is more than one owner, then e.g. two names might be noted here.
For a corporate account, the corporate name is used for this attribute. Even if supported by the ASPSP, the provision of this field might depend on the fact whether an explicit consent to this specific additional account information has been given by the PSU.
{
"type": "string",
"maxLength": 140,
"example": "John Doe"
}