API Explorer

v3.0.0 (165 APIs)

Bank
Accounts
Views
Counterparties
Transactions

Create Account

Create Account at bank specified by BANK_ID with Id specified by ACCOUNT_ID.

The User can create an Account for themself or an Account for another User if they have CanCreateAccount role.

If USER_ID is not specified the account will be owned by the logged in User.

The type field should be a product_code from Product.

Note: The Amount must be zero.

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1", "label":"Label", "type":"CURRENT", "balance":{ "currency":"EUR", "amount":"0" }, "branch_id":"1234", "account_routing":{ "scheme":"OBP", "address":"UK123456" } }
Required Roles:
  • CanCreateAccount - Please login to request this Role
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-10001: Incorrect json format.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30107: Invalid User Id.
  • OBP-30110: Invalid Account Id. The ACCOUNT_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.
  • OBP-20005: User not found. Please specify a valid value for USER_ID.
  • OBP-20006: User is missing one or more roles:
  • OBP-30106: Invalid Balance Amount.
  • OBP-30112: Invalid Number. Initial balance must be a number, e.g 1000.00
  • OBP-30109: Initial Balance of Account must be Zero (0).
  • OBP-30105: Invalid Balance Currency.
  • OBP-30208: Account_ID already exists at the Bank.
  • OBP-50000: Unknown Error.
Version: OBPv2.2.0, function_name: by createAccount, operation_id: OBPv2.2.0-createAccount Tags: Account, Onboarding, New-Style,

Get Account by Id (Core)

Information returned about the account specified by ACCOUNT_ID:

  • Number - The human readable account number given by the bank that identifies the account.
  • Label - A label given by the owner of the account
  • Owners - Users that own this account
  • Type - The type of account
  • Balance - Currency and Value
  • Account Routings - A list that might include IBAN or national account identifiers
  • Account Rules - A list that might include Overdraft and other bank specific rules

This call returns the owner view and requires access to that view.

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0", "bank_id":"gh.29.uk", "label":"My Account", "number":"546387432", "owners":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"http://127.0.0.1:8080", "display_name":"OBP" }], "type":"AC", "balance":{ "currency":"EUR", "amount":"0" }, "account_routings":[{ "scheme":"AccountNumber", "address":"4930396" }], "views_basic":[{ "id":"owner", "short_name":"Owner", "description":"This view is for the owner for the account.", "is_public":false }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-30018: Bank Account not found. Please specify valid values for BANK_ID and ACCOUNT_ID.
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
Version: OBPv3.0.0, function_name: by getCoreAccountById, operation_id: OBPv3.0.0-getCoreAccountById Tags: Account, Account Information Service (AIS), New-Style, PSD2,

Get Account by Id (Full)

Information returned about an account specified by ACCOUNT_ID as moderated by the view (VIEW_ID):

  • Number
  • Owners
  • Type
  • Balance
  • IBAN
  • Available views (sorted by short_name)

More details about the data moderation by the view here.

PSD2 Context: PSD2 requires customers to have access to their account information via third party applications.
This call provides balance and other account information via delegated authentication using OAuth.

Authentication is required if the 'is_public' field in view (VIEW_ID) is not set to true.

Authentication is Optional

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "bank_id":"String", "label":"String", "number":"String", "owners":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"http://127.0.0.1:8080", "display_name":"OBP" }], "type":"String", "balance":{ "currency":"EUR", "amount":"0" }, "account_routings":[{ "scheme":"AccountNumber", "address":"4930396" }], "account_rules":[{ "scheme":"OVERDRAFT", "value":"10" }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-30003: Account not found. Please specify a valid value for ACCOUNT_ID.
  • OBP-30005: View not found for Account. Please specify a valid value for VIEW_ID
  • OBP-20017: Current user does not have access to the view. Please specify a valid value for VIEW_ID.
  • OBP-50000: Unknown Error.
Version: OBPv3.0.0, function_name: by getPrivateAccountById, operation_id: OBPv3.0.0-getPrivateAccountById Tags: Account, New-Style,

Get Accounts Held

Get Accounts held by the current User if even the User has not been assigned the owner View yet.

Can be used to onboard the account to the API - since all other account and transaction endpoints require views to be assigned.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/banks/BANK_ID/accounts-held?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "accounts":[{ "id":"12314", "label":"My Account", "bank_id":"123", "number":"123", "account_routings":[{ "scheme":"AccountNumber", "address":"4930396" }] }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-50000: Unknown Error.
Version: OBPv3.0.0, function_name: by getAccountsHeld, operation_id: OBPv3.0.0-getAccountsHeld Tags: Account, Account Information Service (AIS), View-Custom, PSD2, New-Style,

Get Accounts at Bank

Returns the list of accounts at BANK_ID that the user has access to.
For each account the API returns the account ID and the views available to the user..
Each account must have at least one private View.

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "accounts":[{ "id":"8ca8a7e4-6d02-48e3-a029-0b2bf89de9f0", "label":"NoneLabel", "bank_id":"gh.29.uk", "views_available":[{ "id":"1", "short_name":"HHH", "is_public":true }] }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
Version: OBPv2.0.0, function_name: by getPrivateAccountsAtOneBank, operation_id: OBPv2.0.0-getPrivateAccountsAtOneBank Tags: Account, PrivateData, PublicData, New-Style,

Get Accounts at Bank (IDs only)

Returns only the list of accounts ids at BANK_ID that the user has access to.

Each account must have at least one private View.

For each account the API returns its account ID.

If you want to see more information on the Views, use the Account Detail call.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/banks/BANK_ID/accounts/account_ids/private?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "accounts":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf" }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-50000: Unknown Error.
Version: OBPv3.0.0, function_name: by getPrivateAccountIdsbyBankId, operation_id: OBPv3.0.0-getPrivateAccountIdsbyBankId Tags: Account, Account Information Service (AIS), PSD2, New-Style,

Get Accounts at Bank (Minimal)

Returns the minimal list of private accounts at BANK_ID that the user has access to.
For each account, the API returns the ID, routing addresses and the views available to the current user.

If you want to see more information on the Views, use the Account Detail call.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/banks/BANK_ID/accounts/private?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "accounts":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "label":"String", "bank_id":"gh.29.uk", "account_type":"330", "account_routings":[{ "scheme":"AccountNumber", "address":"4930396" }], "views":[{ "id":"owner", "short_name":"Owner", "description":"This view is for the owner for the account.", "is_public":false }] }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-50000: Unknown Error.
Version: OBPv3.0.0, function_name: by privateAccountsAtOneBank, operation_id: OBPv3.0.0-privateAccountsAtOneBank Tags: Account, Account Information Service (AIS), New-Style, PSD2,

Get Accounts at all Banks (private)

Returns the list of accounts containing private views for the user.
Each account lists the views available to the user.

optional request parameters:

  • account_type_filter: one or many accountType value, split by comma
  • account_type_filter_operation: the filter type of account_type_filter, value must be INCLUDE or EXCLUDE

whole url example:
/my/accounts?account_type_filter=330,CURRENT+PLUS&account_type_filter_operation=INCLUDE

Authentication is Mandatory

JSON response body fields:

Typical Successful Response:

								
									
{ "accounts":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "label":"String", "bank_id":"gh.29.uk", "account_type":"330", "account_routings":[{ "scheme":"AccountNumber", "address":"4930396" }], "views":[{ "id":"owner", "short_name":"Owner", "description":"This view is for the owner for the account.", "is_public":false }] }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-50000: Unknown Error.
Version: OBPv3.0.0, function_name: by corePrivateAccountsAllBanks, operation_id: OBPv3.0.0-corePrivateAccountsAllBanks Tags: Account, Account Information Service (AIS), PrivateData, PSD2, New-Style,

Get Firehose Accounts at Bank

Get Accounts which have a firehose view assigned to them.

This endpoint allows bulk access to accounts.

Requires the CanUseFirehoseAtAnyBank Role

To be shown on the list, each Account must have a firehose View linked to it.

A firehose view has is_firehose = true

For VIEW_ID try 'owner'

optional request parameters for filter with attributes
URL params example:
/banks/some-bank-id/firehose/accounts/views/owner?manager=John&count=8

to invalid Browser cache, add timestamp query parameter as follow, the parameter name must be _timestamp_
URL params example:
/banks/some-bank-id/firehose/accounts/views/owner?manager=John&count=8&_timestamp_=1596762180358

Authentication is Mandatory

URL Parameters:

JSON response body fields:

Typical Successful Response:

								
									
{ "accounts":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "bank_id":"String", "label":"String", "number":"String", "owners":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"http://127.0.0.1:8080", "display_name":"OBP" }], "type":"String", "balance":{ "currency":"EUR", "amount":"0" }, "account_routings":[{ "scheme":"AccountNumber", "address":"4930396" }], "account_rules":[{ "scheme":"OVERDRAFT", "value":"10" }] }] }
Required Roles:
  • CanUseAccountFirehoseAtAnyBank - Please login to request this Role
  • CanUseAccountFirehose - Please login to request this Role
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-00009: Account firehose is not allowed on this instance. Please set allow_account_firehose = true in props files.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Version: OBPv3.0.0, function_name: by getFirehoseAccountsAtOneBank, operation_id: OBPv3.0.0-getFirehoseAccountsAtOneBank Tags: Account, Account-Firehose, FirehoseData, New-Style,

Update Account Label

Update the label for the account. The label is how the account is known to the account owner e.g. 'My savings account'

Authentication is Mandatory

URL Parameters:

JSON request body fields:

JSON response body fields:

Typical Successful Response:

								
									
{ "success":"Success" }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-10001: Incorrect json format.
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-50000: Unknown Error.
  • OBP-30018: Bank Account not found. Please specify valid values for BANK_ID and ACCOUNT_ID.
  • user does not have access to owner view on account
Version: OBPv1.2.1, function_name: by updateAccountLabel, operation_id: OBPv1.2.1-updateAccountLabel Tags: Account, New-Style,