v5.1.0 filtered by tag: Bank (23 APIs)

Bank
Accounts
Views
Counterparties
Transactions

Create Bank

Create a new bank (Authenticated access).

The user creating this will be automatically assigned the Role CanCreateEntitlementAtOneBank.
Thus the User can manage the bank they create and assign Roles to other Users.

Only SANDBOX mode
The settlement accounts are created specified by the bank in the POST body.
Name and account id are created in accordance to the next rules:
- Incoming account (name: Default incoming settlement account, Account ID: OBP_DEFAULT_INCOMING_ACCOUNT_ID, currency: EUR)
- Outgoing account (name: Default outgoing settlement account, Account ID: OBP_DEFAULT_OUTGOING_ACCOUNT_ID, currency: EUR)

Authentication is Mandatory

JSON request body fields:

address:

bank_code: CGHZ

scheme: OBP

bank_routings: bank routing in form of (scheme, address)

full_name: full name string

id: d8839721-ad8f-45dd-9f78-2080414b93f9

logo: logo url

website: www.openbankproject.com

JSON response body fields:

address:

bank_code: CGHZ

bank_routings: bank routing in form of (scheme, address)

full_name: full name string

id: d8839721-ad8f-45dd-9f78-2080414b93f9

logo: logo url

name: ACCOUNT_MANAGEMENT_FEE

scheme: OBP

value: 5987953

website: www.openbankproject.com

attributes: attribute value in form of (name, value)

Typical Successful Response:

								
									
{ "id":"gh.29.uk", "bank_code":"CGHZ", "full_name":"bank fullName string", "logo":"bank logoUrl string", "website":"bank logoUrl string", "bank_routings":[{ "scheme":"OBP", "address":"gh.29.uk" }], "attributes":[{ "name":"ACCOUNT_MANAGEMENT_FEE", "value":"5987953" }] }
Required Roles:
  • CanCreateBank - Please login to request this Role
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-30210: Insufficient authorisation to Create Bank. You do not have the role CanCreateBank.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv5.0.0, function_name: by createBank, operation_id: OBPv5.0.0-createBank Tags: Bank,

Create Bank Attribute

Create Bank Attribute

Typical product attributes might be:

ISIN (for International bonds)
VKN (for German bonds)
REDCODE (markit short code for credit derivative)
LOAN_ID (e.g. used for Anacredit reporting)

ISSUE_DATE (When the bond was issued in the market)
MATURITY_DATE (End of life time of a product)
TRADABLE

See FPML for more examples.

The type field must be one of "STRING", "INTEGER", "DOUBLE" or DATE_WITH_DAY"

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON request body fields:

name: ACCOUNT_MANAGEMENT_FEE

type:

value: 5987953

is_active: false

JSON response body fields:

bank_attribute_id: bank_attribute_id

bank_id: gh.29.uk

name: ACCOUNT_MANAGEMENT_FEE

type:

value: 5987953

is_active: false

Typical Successful Response:

								
									
{ "bank_id":"gh.29.uk", "bank_attribute_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "name":"OVERDRAFT_START_DATE", "type":"DATE_WITH_DAY", "value":"2012-04-23", "is_active":true }
Required Roles:
  • CanCreateBankAttribute - Please login to request this Role
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-10001: Incorrect json format.
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv4.0.0, function_name: by createBankAttribute, operation_id: OBPv4.0.0-createBankAttribute Tags: Bank,

Create Settlement Account

Create a new settlement account at a bank.

The created settlement account id will be the concatenation of the payment system and the account currency.
For examples: SEPA_SETTLEMENT_ACCOUNT_EUR, CARD_SETTLEMENT_ACCOUNT_USD

By default, when you create a new bank, two settlements accounts are created automatically: OBP_DEFAULT_INCOMING_ACCOUNT_ID and OBP_DEFAULT_OUTGOING_ACCOUNT_ID
Those two accounts have EUR as default currency.

If you want to create default settlement account for a specific currency, you can fill the payment_system field with the DEFAULT value.

When a transaction is saved in OBP through the mapped connector, OBP-API look for the account to save the double-entry transaction.
If no OBP account can be found from the counterparty, the double-entry transaction will be saved on a bank settlement account.
- First, the mapped connector looks for a settlement account specific to the payment system and currency. E.g SEPA_SETTLEMENT_ACCOUNT_EUR.
- If we don't find any specific settlement account with the payment system, we look for a default settlement account for the counterparty currency. E.g DEFAULT_SETTLEMENT_ACCOUNT_EUR.
- Else, we select one of the two OBP default settlement accounts (OBP_DEFAULT_INCOMING_ACCOUNT_ID/OBP_DEFAULT_OUTGOING_ACCOUNT_ID) according to the transaction direction.

If the POST body USER_ID is specified, the logged in user must have the Role CanCreateAccount. Once created, the Account will be owned by the User specified by USER_ID.

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

Note: The Amount MUST be zero.

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON request body fields:

account_routings:

address:

amount: 10.12

balance: 10

branch_id: DERBY6

currency: EUR

label: My Account

payment_system: SEPA

scheme: OBP

user_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1

JSON response body fields:

account_attribute_id:

account_attributes:

account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0

account_routings:

address:

amount: 10.12

balance: 10

branch_id: DERBY6

currency: EUR

label: My Account

name: ACCOUNT_MANAGEMENT_FEE

payment_system: SEPA

product_code: 1234BW

scheme: OBP

type:

user_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1

value: 5987953

product_instance_code: product_instance_code

Typical Successful Response:

								
									
{ "account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0", "user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1", "payment_system":"SEPA", "balance":{ "currency":"EUR", "amount":"0" }, "label":"My Account", "branch_id":"DERBY6", "account_routings":[{ "scheme":"OBP", "address":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0" }], "account_attributes":[{ "product_code":"1234BW", "account_attribute_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "name":"OVERDRAFT_START_DATE", "type":"DATE_WITH_DAY", "value":"2012-04-23", "product_instance_code":"LKJL98769F" }] }
Required Roles:
  • CanCreateSettlementAccountAtOneBank - Please login to request this Role
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-20006: User is missing one or more roles:
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • 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-10003: Invalid Currency Value. It should be three letters ISO Currency Code.
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv4.0.0, function_name: by createSettlementAccount, operation_id: OBPv4.0.0-createSettlementAccount Tags: Bank,

Create Transaction Type at bank

Create Transaction Types for the bank specified by BANK_ID:

  • id : Unique transaction type id across the API instance. SHOULD be a UUID. MUST be unique.
  • bank_id : The bank that supports this TransactionType
  • short_code : A short code (SHOULD have no-spaces) which MUST be unique across the bank. May be stored with Transactions to link here
  • summary : A succinct summary
  • description : A longer description
  • charge : The charge to the customer for each one of these

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

amount: 10.12

bankId:

charge:

currency: EUR

description: Description of the object. Maximum length is 2000. It can be any characters here.

id: d8839721-ad8f-45dd-9f78-2080414b93f9

shortCode:

summary:

value: 5987953

Typical Successful Response:

								
									
{ "id":{ "value":"123" }, "bankId":{ "value":"gh.uk.9j" }, "shortCode":"80080", "summary":"SANDBOX_TAN", "description":"This is the sandbox mode, charging litter money.", "charge":{ "currency":"EUR", "amount":"100" } }
Required Roles:
  • CanCreateTransactionType - 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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-10001: Incorrect json format.
  • OBP-40005: Insufficient authorisation to Create Transaction Type offered by the bank. The Request could not be created because you don't have access to CanCreateTransactionType.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv2.1.0, function_name: by createTransactionType, operation_id: OBPv2.1.0-createTransactionType Tags: Bank,

Create or Update Bank Attribute Definition

Create or Update Bank Attribute Definition

The category field must be Bank

The type field must be one of; DOUBLE, STRING, INTEGER and DATE_WITH_DAY

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

alias:

attribute_definition_id:

bank_id: gh.29.uk

can_be_seen_on_views: false

category:

description: Description of the object. Maximum length is 2000. It can be any characters here.

is_active: false

name: ACCOUNT_MANAGEMENT_FEE

type:

Typical Successful Response:

								
									
{ "attribute_definition_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1", "bank_id":"gh.29.uk", "name":"SPECIAL_TAX_NUMBER", "category":"Bank", "type":"STRING", "description":"description", "alias":"STRING", "can_be_seen_on_views":["bank"], "is_active":true }
Required Roles:
  • CanCreateBankAttributeDefinitionAtOneBank - 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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-10001: Incorrect json format.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv4.0.0, function_name: by createOrUpdateBankAttributeDefinition, operation_id: OBPv4.0.0-createOrUpdateBankAttributeDefinition Tags: Bank,

Delete Bank Attribute

Delete Bank Attribute

Delete a Bank Attribute by its id.

Authentication is Mandatory

URL Parameters:

BANK_ATTRIBUTE_ID: BANK_ATTRIBUTE_ID

BANK_ID: gh.29.uk

JSON response body fields:

Typical Successful Response:

								
									
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!
Connector Methods:
Version: OBPv4.0.0, function_name: by deleteBankAttribute, operation_id: OBPv4.0.0-deleteBankAttribute Tags: Bank,

Delete Bank Cascade

Delete a Bank Cascade specified by BANK_ID.

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

Typical Successful Response:

								
									
Required Roles:
  • CanDeleteBankCascade - 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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-20006: User is missing one or more roles:
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv4.0.0, function_name: by deleteBankCascade, operation_id: OBPv4.0.0-deleteBankCascade Tags: Bank,

Get Bank

Get the bank specified by BANK_ID
Returns information about a single bank specified by BANK_ID including:

  • Bank code and full name of bank
  • Logo URL
  • Website

Authentication is Optional

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

address:

bank_code: CGHZ

bank_routings: bank routing in form of (scheme, address)

full_name: full name string

id: d8839721-ad8f-45dd-9f78-2080414b93f9

logo: logo url

name: ACCOUNT_MANAGEMENT_FEE

scheme: OBP

value: 5987953

website: www.openbankproject.com

attributes: attribute value in form of (name, value)

Typical Successful Response:

								
									
{ "id":"gh.29.uk", "bank_code":"CGHZ", "full_name":"bank fullName string", "logo":"bank logoUrl string", "website":"bank logoUrl string", "bank_routings":[{ "scheme":"OBP", "address":"gh.29.uk" }], "attributes":[{ "name":"ACCOUNT_MANAGEMENT_FEE", "value":"5987953" }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
Connector Methods:
Version: OBPv5.0.0, function_name: by getBank, operation_id: OBPv5.0.0-getBank Tags: Bank, Account Information Service (AIS), PSD2,

Get Bank Attribute By BANK_ATTRIBUTE_ID

Get Bank Attribute By BANK_ATTRIBUTE_ID

Authentication is Mandatory

URL Parameters:

BANK_ATTRIBUTE_ID: BANK_ATTRIBUTE_ID

BANK_ID: gh.29.uk

JSON response body fields:

bank_attribute_id: bank_attribute_id

bank_id: gh.29.uk

name: ACCOUNT_MANAGEMENT_FEE

type:

value: 5987953

is_active: false

Typical Successful Response:

								
									
{ "bank_id":"gh.29.uk", "bank_attribute_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "name":"OVERDRAFT_START_DATE", "type":"DATE_WITH_DAY", "value":"2012-04-23", "is_active":true }
Required Roles:
  • CanGetBankAttribute - 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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-10001: Incorrect json format.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv4.0.0, function_name: by getBankAttribute, operation_id: OBPv4.0.0-getBankAttribute Tags: Bank,

Get Bank Attributes

Get Bank Attributes

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

bank_attribute_id: bank_attribute_id

bank_attributes: bank_attributes

bank_id: gh.29.uk

name: ACCOUNT_MANAGEMENT_FEE

type:

value: 5987953

is_active: false

Typical Successful Response:

								
									
{ "bank_attributes":[{ "bank_id":"gh.29.uk", "bank_attribute_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "name":"OVERDRAFT_START_DATE", "type":"DATE_WITH_DAY", "value":"2012-04-23", "is_active":true }] }
Required Roles:
  • CanGetBankAttribute - 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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-10001: Incorrect json format.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv4.0.0, function_name: by getBankAttributes, operation_id: OBPv4.0.0-getBankAttributes Tags: Bank,

Get Banks

Get banks on this API instance
Returns a list of banks supported on this server:

  • ID used as parameter in URLs
  • Short and full name of bank
  • Logo URL
  • Website

Authentication is Optional

JSON response body fields:

address:

bank_routings: bank routing in form of (scheme, address)

banks:

full_name: full name string

id: d8839721-ad8f-45dd-9f78-2080414b93f9

logo: logo url

name: ACCOUNT_MANAGEMENT_FEE

scheme: OBP

short_name:

value: 5987953

website: www.openbankproject.com

attributes: attribute value in form of (name, value)

Typical Successful Response:

								
									
{ "banks":[{ "id":"gh.29.uk", "short_name":"short_name ", "full_name":"full_name", "logo":"logo", "website":"www.openbankproject.com", "bank_routings":[{ "scheme":"OBP", "address":"gh.29.uk" }], "attributes":[{ "name":"ACCOUNT_MANAGEMENT_FEE", "value":"5987953" }] }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv4.0.0, function_name: by getBanks, operation_id: OBPv4.0.0-getBanks Tags: Bank, Account Information Service (AIS), PSD2,

Get Settlement accounts at Bank

Get settlement accounts on this API instance
Returns a list of settlement accounts at this Bank

Note: a settlement account is considered as a bank account.
So you can update it and add account attributes to it using the regular account endpoints

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

account_attribute_id:

account_attributes:

account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0

account_routings:

address:

amount: 10.12

balance: 10

branch_id: DERBY6

currency: EUR

label: My Account

name: ACCOUNT_MANAGEMENT_FEE

payment_system: SEPA

product_code: 1234BW

scheme: OBP

settlement_accounts:

type:

value: 5987953

product_instance_code: product_instance_code

Typical Successful Response:

								
									
{ "settlement_accounts":[{ "account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0", "payment_system":"SEPA", "balance":{ "currency":"EUR", "amount":"0" }, "label":"My Account", "branch_id":"DERBY6", "account_routings":[{ "scheme":"OBP", "address":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0" }], "account_attributes":[{ "product_code":"1234BW", "account_attribute_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "name":"OVERDRAFT_START_DATE", "type":"DATE_WITH_DAY", "value":"2012-04-23", "product_instance_code":"LKJL98769F" }] }] }
Required Roles:
  • CanGetSettlementAccountAtOneBank - 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-20006: User is missing one or more roles:
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv4.0.0, function_name: by getSettlementAccounts, operation_id: OBPv4.0.0-getSettlementAccounts Tags: Bank, PSD2,

Get Transaction Types at Bank

Get Transaction Types for the bank specified by BANK_ID:

Lists the possible Transaction Types available at the bank (as opposed to Transaction Request Types which are the possible ways Transactions can be created by this API Server).

  • id : Unique transaction type id across the API instance. SHOULD be a UUID. MUST be unique.
  • bank_id : The bank that supports this TransactionType
  • short_code : A short code (SHOULD have no-spaces) which MUST be unique across the bank. May be stored with Transactions to link here
  • summary : A succinct summary
  • description : A longer description
  • charge : The charge to the customer for each one of these

Authentication is Optional

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

amount: 10.12

bank_id: gh.29.uk

charge:

currency: EUR

description: Description of the object. Maximum length is 2000. It can be any characters here.

id: d8839721-ad8f-45dd-9f78-2080414b93f9

short_code:

summary:

transaction_types:

value: 5987953

Typical Successful Response:

								
									
{ "transaction_types":[{ "id":{ "value":"123" }, "bank_id":"gh.29.uk", "short_code":"PlaceholderString", "summary":"PlaceholderString", "description":"PlaceholderString", "charge":{ "currency":"EUR", "amount":"0" } }] }
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.
Connector Methods:
Version: OBPv2.0.0, function_name: by getTransactionTypes, operation_id: OBPv2.0.0-getTransactionTypes Tags: Bank, Account Information Service (AIS), PSD2,

Update Bank

Update an existing bank (Authenticated access).

Authentication is Mandatory

JSON response body fields:

address:

bank_code: CGHZ

bank_routings: bank routing in form of (scheme, address)

full_name: full name string

id: d8839721-ad8f-45dd-9f78-2080414b93f9

logo: logo url

name: ACCOUNT_MANAGEMENT_FEE

scheme: OBP

value: 5987953

website: www.openbankproject.com

attributes: attribute value in form of (name, value)

Typical Successful Response:

								
									
{ "id":"gh.29.uk", "bank_code":"CGHZ", "full_name":"bank fullName string", "logo":"bank logoUrl string", "website":"bank logoUrl string", "bank_routings":[{ "scheme":"OBP", "address":"gh.29.uk" }], "attributes":[{ "name":"ACCOUNT_MANAGEMENT_FEE", "value":"5987953" }] }
Required Roles:
  • CanCreateBank - Please login to request this Role
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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-34001: Could not update the Bank
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv5.0.0, function_name: by updateBank, operation_id: OBPv5.0.0-updateBank Tags: Bank,

Update Bank Attribute

Update Bank Attribute.

Update one Bak Attribute by its id.

Authentication is Mandatory

URL Parameters:

BANK_ATTRIBUTE_ID: BANK_ATTRIBUTE_ID

BANK_ID: gh.29.uk

JSON response body fields:

alias:

can_be_seen_on_views: false

category:

description: Description of the object. Maximum length is 2000. It can be any characters here.

is_active: false

name: ACCOUNT_MANAGEMENT_FEE

type:

Typical Successful Response:

								
									
{ "name":"SPECIAL_TAX_NUMBER", "category":"Bank", "type":"STRING", "description":"description", "alias":"STRING", "can_be_seen_on_views":["bank"], "is_active":true }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
Connector Methods:
Version: OBPv4.0.0, function_name: by updateBankAttribute, operation_id: OBPv4.0.0-updateBankAttribute Tags: Bank,

Get Branch

Returns information about a single Branch specified by BANK_ID and BRANCH_ID including:

  • Name
  • Address
  • Geo Location
  • License the data under this endpoint is released under.

Authentication is Optional

URL Parameters:

BANK_ID: gh.29.uk

BRANCH_ID: DERBY6

JSON response body fields:

accessibleFeatures:

address:

bank_id: gh.29.uk

branch_routing:

branch_type:

city:

closing_time: 2020-01-27

country_code: 1254

county:

drive_up:

friday:

id: d8839721-ad8f-45dd-9f78-2080414b93f9

is_accessible: false

latitude: 38.8951

license:

line_1:

line_2:

line_3:

lobby:

location:

longitude: -77.0364

meta:

monday:

more_info: More information about this fee

name: ACCOUNT_MANAGEMENT_FEE

opening_time:

phone_number:

postcode:

saturday:

scheme: OBP

state:

sunday:

thursday:

tuesday:

wednesday:

Typical Successful Response:

								
									
{ "id":"branch-id-123", "bank_id":"bank-id-123", "name":"Branch by the Lake", "address":{ "line_1":"No 1 the Road", "line_2":"The Place", "line_3":"The Hill", "city":"Berlin", "county":"String", "state":"Brandenburg", "postcode":"13359", "country_code":"DE" }, "location":{ "latitude":10.0, "longitude":10.0 }, "meta":{ "license":{ "id":"ODbL-1.0", "name":"Open Database License" } }, "lobby":{ "monday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "tuesday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "wednesday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "thursday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "friday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "saturday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "sunday":[{ "opening_time":"10:00", "closing_time":"18:00" }] }, "drive_up":{ "monday":{ "opening_time":"10:00", "closing_time":"18:00" }, "tuesday":{ "opening_time":"10:00", "closing_time":"18:00" }, "wednesday":{ "opening_time":"10:00", "closing_time":"18:00" }, "thursday":{ "opening_time":"10:00", "closing_time":"18:00" }, "friday":{ "opening_time":"10:00", "closing_time":"18:00" }, "saturday":{ "opening_time":"10:00", "closing_time":"18:00" }, "sunday":{ "opening_time":"10:00", "closing_time":"18:00" } }, "branch_routing":{ "scheme":"OBP", "address":"123abc" }, "is_accessible":"true", "accessibleFeatures":"wheelchair, atm usuable by the visually impaired", "branch_type":"Full service store", "more_info":"short walk to the lake from here", "phone_number":"+381631954907" }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-300010: Branch not found. Please specify a valid value for BRANCH_ID. Or License may not be set. meta.license.id and meta.license.name can not be empty
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv3.0.0, function_name: by getBranch, operation_id: OBPv3.0.0-getBranch Tags: Branch, Bank,

Get Branches for a Bank

Returns information about branches for a single bank specified by BANK_ID including:

  • Name
  • Address
  • Geo Location
  • License the data under this endpoint is released under
  • Structured opening hours
  • Accessible flag
  • Branch Type
  • More Info

Pagination:

By default, 50 records are returned.

You can use the url query parameters limit and offset for pagination
You can also use the follow url query parameters:

  • city - string, find Branches those in this city, optional

  • withinMetersOf - number, find Branches within given meters distance, optional

  • nearLatitude - number, a position of latitude value, cooperate with withMetersOf do query filter, optional
  • nearLongitude - number, a position of longitude value, cooperate with withMetersOf do query filter, optional

note: withinMetersOf, nearLatitude and nearLongitude either all empty or all have value.

Authentication is Optional

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

accessibleFeatures:

address:

bank_id: gh.29.uk

branch_routing:

branch_type:

branches:

city:

closing_time: 2020-01-27

country_code: 1254

county:

drive_up:

friday:

id: d8839721-ad8f-45dd-9f78-2080414b93f9

is_accessible: false

latitude: 38.8951

license:

line_1:

line_2:

line_3:

lobby:

location:

longitude: -77.0364

meta:

monday:

more_info: More information about this fee

name: ACCOUNT_MANAGEMENT_FEE

opening_time:

phone_number:

postcode:

saturday:

scheme: OBP

state:

sunday:

thursday:

tuesday:

wednesday:

Typical Successful Response:

								
									
{ "branches":[{ "id":"branch-id-123", "bank_id":"bank-id-123", "name":"Branch by the Lake", "address":{ "line_1":"No 1 the Road", "line_2":"The Place", "line_3":"The Hill", "city":"Berlin", "county":"String", "state":"Brandenburg", "postcode":"13359", "country_code":"DE" }, "location":{ "latitude":10.0, "longitude":10.0 }, "meta":{ "license":{ "id":"ODbL-1.0", "name":"Open Database License" } }, "lobby":{ "monday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "tuesday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "wednesday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "thursday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "friday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "saturday":[{ "opening_time":"10:00", "closing_time":"18:00" }], "sunday":[{ "opening_time":"10:00", "closing_time":"18:00" }] }, "drive_up":{ "monday":{ "opening_time":"10:00", "closing_time":"18:00" }, "tuesday":{ "opening_time":"10:00", "closing_time":"18:00" }, "wednesday":{ "opening_time":"10:00", "closing_time":"18:00" }, "thursday":{ "opening_time":"10:00", "closing_time":"18:00" }, "friday":{ "opening_time":"10:00", "closing_time":"18:00" }, "saturday":{ "opening_time":"10:00", "closing_time":"18:00" }, "sunday":{ "opening_time":"10:00", "closing_time":"18:00" } }, "branch_routing":{ "scheme":"OBP", "address":"123abc" }, "is_accessible":"true", "accessibleFeatures":"wheelchair, atm usuable by the visually impaired", "branch_type":"Full service store", "more_info":"short walk to the lake from here", "phone_number":"+381631954907" }] }
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-32001: No branches available. License may not be set.
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv3.0.0, function_name: by getBranches, operation_id: OBPv3.0.0-getBranches Tags: Branch, Bank,

Get Transaction Request Types at Bank

Get the list of the Transaction Request Types supported by the bank.

Authentication is Optional

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

transaction_request_type: SEPA

transaction_request_types:

Typical Successful Response:

								
									
{ "transaction_request_types":[{ "transaction_request_type":"SandboxTan" }] }
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv2.1.0, function_name: by getTransactionRequestTypesSupportedByBank, operation_id: OBPv2.1.0-getTransactionRequestTypesSupportedByBank Tags: Transaction-Request, Bank,

Create an Account Webhook

Create an Account Webhook

Webhooks are used to call external URLs when certain events happen.

Account Webhooks focus on events around accounts.

For instance, a webhook could be used to notify an external service if a balance changes on an account.

This functionality is work in progress! Please note that only implemented trigger is: OnBalanceChange

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON request body fields:

account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0

http_method: GET

http_protocol:

is_active: false

trigger_name:

url: http://www.example.com/id-docs/123/image.png

JSON response body fields:

account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0

account_webhook_id:

bank_id: gh.29.uk

created_by_user_id:

http_method: GET

http_protocol:

is_active: false

trigger_name:

url: http://www.example.com/id-docs/123/image.png

Typical Successful Response:

								
									
{ "account_webhook_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "bank_id":"gh.29.uk", "account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0", "trigger_name":"OnBalanceChange", "url":"https://localhost.openbankproject.com", "http_method":"POST", "http_protocol":"HTTP/1.1", "created_by_user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1", "is_active":true }
Required Roles:
  • CanCreateWebhook - Please login to request this Role
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv3.1.0, function_name: by createAccountWebhook, operation_id: OBPv3.1.0-createAccountWebhook Tags: Webhook, Bank,

Create bank level Account Notification Webhook

Create a notification Webhook that will fire for all accounts on the specified Bank.

Webhooks are used to call external web services when certain events happen.

For instance, a webhook can be used to notify an external service if a transaction is created on an account.

When an account notification webhook fires it will POST to the URL you specify during the creation of the webhook.

Inside the payload you will find account_id and transaction_id and also user_ids and customer_ids of the Users / Customers linked to the Account.

The webhook will POST the following structure to your service:

{
"event_name": "OnCreateTransaction",
"event_id": "9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"bank_id": "gh.29.uk",
"account_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"transaction_id": "7ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"related_entities": [
{
"user_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"customer_ids": ["3ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"]
}
]
}

Thus, your service should accept the above POST body structure.

In this way, your web service can be informed about an event on an account and act accordingly.

Further information about the account, transaction or related entities can then be retrieved using the standard REST APIs.

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON request body fields:

http_method: GET

http_protocol:

url: http://www.example.com/id-docs/123/image.png

JSON response body fields:

bank_id: gh.29.uk

created_by_user_id:

http_method: GET

http_protocol:

trigger_name:

url: http://www.example.com/id-docs/123/image.png

webhook_id: webhook_id

Typical Successful Response:

								
									
{ "webhook_id":"fc23a7e2-7dd2-4bdf-a0b4-ae31232a4762", "bank_id":"gh.29.uk", "trigger_name":"OnCreateTransaction", "url":"https://localhost.openbankproject.com", "http_method":"POST", "http_protocol":"HTTP/1.1", "created_by_user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1" }
Required Roles:
  • CanCreateAccountNotificationWebhookAtOneBank - 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-30001: Bank not found. Please specify a valid value for BANK_ID.
  • OBP-50000: Unknown Error.
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv4.0.0, function_name: by createBankAccountNotificationWebhook, operation_id: OBPv4.0.0-createBankAccountNotificationWebhook Tags: Webhook, Bank,

Create system level Account Notification Webhook

Create a notification Webhook that will fire for all accounts on the system.

Webhooks are used to call external web services when certain events happen.

For instance, a webhook can be used to notify an external service if a transaction is created on an account.

When an account notification webhook fires it will POST to the URL you specify during the creation of the webhook.

Inside the payload you will find account_id and transaction_id and also user_ids and customer_ids of the Users / Customers linked to the Account.

The webhook will POST the following structure to your service:

{
"event_name": "OnCreateTransaction",
"event_id": "9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"bank_id": "gh.29.uk",
"account_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"transaction_id": "7ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"related_entities": [
{
"user_id": "8ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"customer_ids": ["3ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"]
}
]
}

Thus, your service should accept the above POST body structure.

In this way, your web service can be informed about an event on an account and act accordingly.

Further information about the account, transaction or related entities can then be retrieved using the standard REST APIs.

Authentication is Mandatory

JSON request body fields:

http_method: GET

http_protocol:

url: http://www.example.com/id-docs/123/image.png

JSON response body fields:

created_by_user_id:

http_method: GET

http_protocol:

trigger_name:

url: http://www.example.com/id-docs/123/image.png

webhook_id: webhook_id

Typical Successful Response:

								
									
{ "webhook_id":"fc23a7e2-7dd2-4bdf-a0b4-ae31232a4762", "trigger_name":"OnCreateTransaction", "url":"https://localhost.openbankproject.com", "http_method":"POST", "http_protocol":"HTTP/1.1", "created_by_user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1" }
Required Roles:
  • CanCreateSystemAccountNotificationWebhook - Please login to request this Role
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv4.0.0, function_name: by createSystemAccountNotificationWebhook, operation_id: OBPv4.0.0-createSystemAccountNotificationWebhook Tags: Webhook, Bank,

Enable/Disable an Account Webhook

Enable/Disable an Account Webhook

Webhooks are used to call external URLs when certain events happen.

Account Webhooks focus on events around accounts.

For instance, a webhook could be used to notify an external service if a balance changes on an account.

This functionality is work in progress! Please note that only implemented trigger is: OnBalanceChange

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0

account_webhook_id:

bank_id: gh.29.uk

created_by_user_id:

http_method: GET

http_protocol:

is_active: false

trigger_name:

url: http://www.example.com/id-docs/123/image.png

Typical Successful Response:

								
									
{ "account_webhook_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "bank_id":"gh.29.uk", "account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0", "trigger_name":"OnBalanceChange", "url":"https://localhost.openbankproject.com", "http_method":"POST", "http_protocol":"HTTP/1.1", "created_by_user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1", "is_active":true }
Required Roles:
  • CanUpdateWebhook - Please login to request this Role
Validations:
  • Required JSON Validation: No
  • Allowed Authentication Types: Not set
Possible Errors:
  • OBP-50000: Unknown Error.
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-20006: User is missing one or more roles:
Connector Methods:
Version: OBPv3.1.0, function_name: by enableDisableAccountWebhook, operation_id: OBPv3.1.0-enableDisableAccountWebhook Tags: Webhook, Bank,

Get Account Webhooks

Get Account Webhooks.

Possible custom URL parameters for pagination:

Possible custom url parameters for pagination:

  • limit=NUMBER ==> default value: 50
  • offset=NUMBER ==> default value: 0

eg1:?limit=100&offset=0

  • account_id=STRING (if null ignore)
  • user_id=STRING (if null ignore)

Authentication is Mandatory

URL Parameters:

BANK_ID: gh.29.uk

JSON response body fields:

account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0

account_webhook_id:

bank_id: gh.29.uk

created_by_user_id:

http_method: GET

http_protocol:

is_active: false

trigger_name:

url: http://www.example.com/id-docs/123/image.png

web_hooks:

Typical Successful Response:

								
									
{ "web_hooks":[{ "account_webhook_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f", "bank_id":"gh.29.uk", "account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0", "trigger_name":"OnBalanceChange", "url":"https://localhost.openbankproject.com", "http_method":"POST", "http_protocol":"HTTP/1.1", "created_by_user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1", "is_active":true }] }
Required Roles:
  • CanGetWebhooks - 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-20006: User is missing one or more roles:
  • OBP-50000: Unknown Error.
Connector Methods:
Version: OBPv3.1.0, function_name: by getAccountWebhooks, operation_id: OBPv3.1.0-getAccountWebhooks Tags: Webhook, Bank,