Logo

API EXPLORER

PSD2 APIs v1.4.0 (all tags) (9)

Bank

Accounts

Views

Counterparties

Transactions

Get accounts at all banks (Authenticated + Anonymous access).

Returns the list of accounts at that the user has access to at all banks. For each account the API returns the account ID and the available views.

If the user is not authenticated via OAuth, the list will contain only the accounts providing public views. If the user is authenticated, the list will contain Private accounts to which the user has access, in addition to all public accounts.

Note for those upgrading from v1.2: The v1.2 version of this call was buggy in that it did not include public accounts if an authenticated user made the call. If you need the previous behaviour, please use the API call for private accounts (..../accounts/private).

Typical Successful Response:

								
									
{ "id":"123", "label":"OBP", "views_available":[{ "id":"123", "short_name":"short_name", "description":"description", "is_public":true, "alias":"None", "hide_metadata_if_alias_used":true, "can_add_comment":true, "can_add_corporate_location":true, "can_add_image":true, "can_add_image_url":true, "can_add_more_info":true, "can_add_open_corporates_url":true, "can_add_physical_location":true, "can_add_private_alias":true, "can_add_public_alias":true, "can_add_tag":true, "can_add_url":true, "can_add_where_tag":true, "can_delete_comment":true, "can_delete_corporate_location":true, "can_delete_image":true, "can_delete_physical_location":true, "can_delete_tag":true, "can_delete_where_tag":true, "can_edit_owner_comment":true, "can_see_bank_account_balance":true, "can_see_bank_account_bank_name":true, "can_see_bank_account_currency":true, "can_see_bank_account_iban":true, "can_see_bank_account_label":true, "can_see_bank_account_national_identifier":true, "can_see_bank_account_number":true, "can_see_bank_account_owners":true, "can_see_bank_account_swift_bic":true, "can_see_bank_account_type":true, "can_see_comments":true, "can_see_corporate_location":true, "can_see_image_url":true, "can_see_images":true, "can_see_more_info":true, "can_see_open_corporates_url":true, "can_see_other_account_bank_name":true, "can_see_other_account_iban":true, "can_see_other_account_kind":true, "can_see_other_account_metadata":true, "can_see_other_account_national_identifier":true, "can_see_other_account_number":true, "can_see_other_account_swift_bic":true, "can_see_owner_comment":true, "can_see_physical_location":true, "can_see_private_alias":true, "can_see_public_alias":true, "can_see_tags":true, "can_see_transaction_amount":true, "can_see_transaction_balance":true, "can_see_transaction_currency":true, "can_see_transaction_description":true, "can_see_transaction_finish_date":true, "can_see_transaction_metadata":true, "can_see_transaction_other_bank_account":true, "can_see_transaction_start_date":true, "can_see_transaction_this_bank_account":true, "can_see_transaction_type":true, "can_see_url":true, "can_see_where_tag":true }], "bank_id":"gh.uk.db" }
Possible Errors:
  • OBP-50000: Unknown Error.
Implmented in 1_2_1 by allAccountsAllBanks

Get private accounts at all banks (Authenticated access).

Returns the list of private accounts the user has access to at all banks. For each account the API returns the ID and the available views.

Authentication via OAuth is required.

Typical Successful Response:

								
									
{ "id":"123", "label":"OBP", "views_available":[{ "id":"123", "short_name":"short_name", "description":"description", "is_public":true, "alias":"None", "hide_metadata_if_alias_used":true, "can_add_comment":true, "can_add_corporate_location":true, "can_add_image":true, "can_add_image_url":true, "can_add_more_info":true, "can_add_open_corporates_url":true, "can_add_physical_location":true, "can_add_private_alias":true, "can_add_public_alias":true, "can_add_tag":true, "can_add_url":true, "can_add_where_tag":true, "can_delete_comment":true, "can_delete_corporate_location":true, "can_delete_image":true, "can_delete_physical_location":true, "can_delete_tag":true, "can_delete_where_tag":true, "can_edit_owner_comment":true, "can_see_bank_account_balance":true, "can_see_bank_account_bank_name":true, "can_see_bank_account_currency":true, "can_see_bank_account_iban":true, "can_see_bank_account_label":true, "can_see_bank_account_national_identifier":true, "can_see_bank_account_number":true, "can_see_bank_account_owners":true, "can_see_bank_account_swift_bic":true, "can_see_bank_account_type":true, "can_see_comments":true, "can_see_corporate_location":true, "can_see_image_url":true, "can_see_images":true, "can_see_more_info":true, "can_see_open_corporates_url":true, "can_see_other_account_bank_name":true, "can_see_other_account_iban":true, "can_see_other_account_kind":true, "can_see_other_account_metadata":true, "can_see_other_account_national_identifier":true, "can_see_other_account_number":true, "can_see_other_account_swift_bic":true, "can_see_owner_comment":true, "can_see_physical_location":true, "can_see_private_alias":true, "can_see_public_alias":true, "can_see_tags":true, "can_see_transaction_amount":true, "can_see_transaction_balance":true, "can_see_transaction_currency":true, "can_see_transaction_description":true, "can_see_transaction_finish_date":true, "can_see_transaction_metadata":true, "can_see_transaction_other_bank_account":true, "can_see_transaction_start_date":true, "can_see_transaction_this_bank_account":true, "can_see_transaction_type":true, "can_see_url":true, "can_see_where_tag":true }], "bank_id":"gh.uk.db" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-50000: Unknown Error.
Implmented in 1_2_1 by privateAccountsAllBanks

Get private accounts at one bank.

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

Authentication is Mandatory

Typical Successful Response:

								
									
{ "id":"123", "label":"OBP", "views_available":[{ "id":"123", "short_name":"short_name", "description":"description", "is_public":true, "alias":"None", "hide_metadata_if_alias_used":true, "can_add_comment":true, "can_add_corporate_location":true, "can_add_image":true, "can_add_image_url":true, "can_add_more_info":true, "can_add_open_corporates_url":true, "can_add_physical_location":true, "can_add_private_alias":true, "can_add_public_alias":true, "can_add_tag":true, "can_add_url":true, "can_add_where_tag":true, "can_delete_comment":true, "can_delete_corporate_location":true, "can_delete_image":true, "can_delete_physical_location":true, "can_delete_tag":true, "can_delete_where_tag":true, "can_edit_owner_comment":true, "can_see_bank_account_balance":true, "can_see_bank_account_bank_name":true, "can_see_bank_account_currency":true, "can_see_bank_account_iban":true, "can_see_bank_account_label":true, "can_see_bank_account_national_identifier":true, "can_see_bank_account_number":true, "can_see_bank_account_owners":true, "can_see_bank_account_swift_bic":true, "can_see_bank_account_type":true, "can_see_comments":true, "can_see_corporate_location":true, "can_see_image_url":true, "can_see_images":true, "can_see_more_info":true, "can_see_open_corporates_url":true, "can_see_other_account_bank_name":true, "can_see_other_account_iban":true, "can_see_other_account_kind":true, "can_see_other_account_metadata":true, "can_see_other_account_national_identifier":true, "can_see_other_account_number":true, "can_see_other_account_swift_bic":true, "can_see_owner_comment":true, "can_see_physical_location":true, "can_see_private_alias":true, "can_see_public_alias":true, "can_see_tags":true, "can_see_transaction_amount":true, "can_see_transaction_balance":true, "can_see_transaction_currency":true, "can_see_transaction_description":true, "can_see_transaction_finish_date":true, "can_see_transaction_metadata":true, "can_see_transaction_other_bank_account":true, "can_see_transaction_start_date":true, "can_see_transaction_this_bank_account":true, "can_see_transaction_type":true, "can_see_url":true, "can_see_where_tag":true }], "bank_id":"gh.uk.db" }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-50000: Unknown Error.
  • OBP-30001: Bank not found. Please specify a valid value for BANK_ID.
Implmented in 1_2_1 by privateAccountsAtOneBank

Get Other Account by Id.

Returns data about the Other Account that has shared at least one transaction with ACCOUNT_ID at BANK_ID. Authentication is Optional Authentication is required if the view is not public.

Typical Successful Response:

								
									
{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "holder":{ "name":"OBP", "is_alias":true }, "number":"123", "kind":"3456", "IBAN":"UK234DB", "swift_bic":"UK12321DB", "bank":{ "national_identifier":"OBP", "name":"OBP" }, "metadata":{ "public_alias":"NONE", "private_alias":"NONE", "more_info":"www.openbankproject.com", "URL":"www.openbankproject.com", "image_URL":"www.openbankproject.com", "open_corporates_URL":"www.openbankproject.com", "corporate_location":{ "latitude":1.231, "longitude":1.231, "date":"2013-01-22T00:08:00Z", "user":{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"OBP", "display_name":"OBP" } }, "physical_location":{ "latitude":1.231, "longitude":1.231, "date":"2013-01-22T00:08:00Z", "user":{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"OBP", "display_name":"OBP" } } } }
Possible Errors:
  • OBP-30018: Bank Account not found. Please specify valid values for BANK_ID and ACCOUNT_ID.
  • OBP-50000: Unknown Error.
Implmented in 1_2_1 by getOtherAccountByIdForBankAccount

Get Other Accounts of one Account.

Returns data about all the other accounts that have shared at least one transaction with the ACCOUNT_ID at BANK_ID. Authentication is Optional Authentication is required if the view VIEW_ID is not public.

Typical Successful Response:

								
									
{ "other_accounts":[{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "holder":{ "name":"OBP", "is_alias":true }, "number":"123", "kind":"3456", "IBAN":"UK234DB", "swift_bic":"UK12321DB", "bank":{ "national_identifier":"OBP", "name":"OBP" }, "metadata":{ "public_alias":"NONE", "private_alias":"NONE", "more_info":"www.openbankproject.com", "URL":"www.openbankproject.com", "image_URL":"www.openbankproject.com", "open_corporates_URL":"www.openbankproject.com", "corporate_location":{ "latitude":1.231, "longitude":1.231, "date":"2013-01-22T00:08:00Z", "user":{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"OBP", "display_name":"OBP" } }, "physical_location":{ "latitude":1.231, "longitude":1.231, "date":"2013-01-22T00:08:00Z", "user":{ "id":"5995d6a2-01b3-423c-a173-5481df49bdaf", "provider":"OBP", "display_name":"OBP" } } } }] }
Possible Errors:
  • OBP-30018: Bank Account not found. Please specify valid values for BANK_ID and ACCOUNT_ID.
  • OBP-50000: Unknown Error.
Implmented in 1_2_1 by getOtherAccountsForBankAccount

Answer Transaction Request Challenge.

In Sandbox mode, any string that can be converted to a possitive integer will be accepted as an answer.

Typical Successful Response:

								
									
{ "id":{ "value":"123" }, "type":"String", "from":{ "bank_id":"String", "account_id":"String" }, "details":[], "body":{ "to":{ "bank_id":"String", "account_id":"String" }, "value":{ "currency":"EUR", "amount":"100" }, "description":"String" }, "transaction_ids":"String", "status":"String", "start_date":"2013-01-22T00:08:00Z", "end_date":"2013-01-22T00:08:00Z", "challenge":{ "id":"String", "allowed_attempts":4, "challenge_type":"String" }, "charge":{ "summary":"String", "value":{ "currency":"EUR", "amount":"100" } }, "charge_policy":"String", "counterparty_id":{ "value":"123" }, "name":"String", "this_bank_id":{ "value":"gh.uk.9j" }, "this_account_id":{ "value":"123" }, "this_view_id":{ "value":"owner" }, "other_account_routing_scheme":"String", "other_account_routing_address":"String", "other_bank_routing_scheme":"String", "other_bank_routing_address":"String", "is_beneficiary":true }
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-30018: Bank Account not found. Please specify valid values for BANK_ID and ACCOUNT_ID.
  • OBP-10001: Incorrect json format.
  • Current user does not have access to the view
  • Couldn't create Transaction
  • Sorry, Transaction Requests are not enabled in this API instance.
  • Need a non-empty answer
  • Need a numeric TAN
  • Need a positive TAN
  • unknown challenge type
  • Sorry, you've used up your allowed attempts.
  • Error getting Transaction Request
  • Transaction Request not found
  • Couldn't create Transaction
  • OBP-50000: Unknown Error.
Implmented in 1_4_0 by answerTransactionRequestChallenge

Create Transaction Request.

Initiate a Payment via a Transaction Request.

This is the preferred method to create a payment and supersedes makePayment in 1.2.1.

See this python code for a complete example of this flow.

In sandbox mode, if the amount is < 100 the transaction request will create a transaction without a challenge, else a challenge will need to be answered. If a challenge is created you must answer it using Answer Transaction Request Challenge before the Transaction is created.

Please see later versions of this call in 2.0.0 or 2.1.0.

Typical Successful Response:

								
									
{ "id":{ "value":"123" }, "type":"String", "from":{ "bank_id":"String", "account_id":"String" }, "details":[], "body":{ "to":{ "bank_id":"String", "account_id":"String" }, "value":{ "currency":"EUR", "amount":"100" }, "description":"String" }, "transaction_ids":"String", "status":"String", "start_date":"2013-01-22T00:08:00Z", "end_date":"2013-01-22T00:08:00Z", "challenge":{ "id":"String", "allowed_attempts":4, "challenge_type":"String" }, "charge":{ "summary":"String", "value":{ "currency":"EUR", "amount":"100" } }, "charge_policy":"String", "counterparty_id":{ "value":"123" }, "name":"String", "this_bank_id":{ "value":"gh.uk.9j" }, "this_account_id":{ "value":"123" }, "this_view_id":{ "value":"owner" }, "other_account_routing_scheme":"String", "other_account_routing_address":"String", "other_bank_routing_scheme":"String", "other_bank_routing_address":"String", "is_beneficiary":true }
Possible Errors:
  • OBP-20001: User not logged in. Authentication is required!
  • OBP-10001: Incorrect json format.
  • 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-30004: Counterparty not found. The BANK_ID / ACCOUNT_ID specified does not exist on this server.
  • Counterparty and holder accounts have differing currencies.
  • Request currency and holder account currency can't be different.
  • Amount not convertible to number
  • account ${fromAccount.accountId} not found at bank ${fromAccount.bankId}
  • user does not have access to owner view
  • amount ${body.value.amount} not convertible to number
  • Cannot send payment to account with different currency
  • Can't send a payment with a value of 0 or less.
  • Sorry, Transaction Requests are not enabled in this API instance.
  • OBP-50000: Unknown Error.
Implmented in 1_4_0 by createTransactionRequest

Get Transaction Request Types for Account

Returns the Transation Request Types that the account specified by ACCOUNT_ID and view specified by VIEW_ID has access to.

These are the ways this API Server can create a Transaction via a Transaction Request (as opposed to Transaction Types which include external types too e.g. for Transactions created by core banking etc.)

A Transaction Request Type internally determines:

  • the required Transaction Request 'body' i.e. fields that define the 'what' and 'to' of a Transaction Request,
  • the type of security challenge that may be be raised before the Transaction Request proceeds, and
  • the threshold of that challenge.

For instance in a 'SANDBOX_TAN' Transaction Request, for amounts over 1000 currency units, the user must supply a positive integer to complete the Transaction Request and create a Transaction.

This approach aims to provide only one endpoint for initiating transactions, and one that handles challenges, whilst still allowing flexibility with the payload and internal logic.

Typical Successful Response:

								
									
{ "transaction_request_types":[{ "value":"10", "charge":{ "summary":"Good", "value":{ "currency":"EUR", "amount":"10" } } }] }
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-30003: Account not found. Please specify a valid value for ACCOUNT_ID.
  • Please specify a valid value for CURRENCY of your Bank Account.
  • Current user does not have access to the view
  • account not found at bank
  • user does not have access to owner view
  • Sorry, Transaction Requests are not enabled in this API instance.
  • OBP-50000: Unknown Error.
Implmented in 1_4_0 by getTransactionRequestTypes

Get all Transaction Requests.

Typical Successful Response:

								
									
{ "id":{ "value":"123" }, "type":"String", "from":{ "bank_id":"String", "account_id":"String" }, "details":[], "body":{ "to":{ "bank_id":"String", "account_id":"String" }, "value":{ "currency":"EUR", "amount":"100" }, "description":"String" }, "transaction_ids":"String", "status":"String", "start_date":"2013-01-22T00:08:00Z", "end_date":"2013-01-22T00:08:00Z", "challenge":{ "id":"String", "allowed_attempts":4, "challenge_type":"String" }, "charge":{ "summary":"String", "value":{ "currency":"EUR", "amount":"100" } }, "charge_policy":"String", "counterparty_id":{ "value":"123" }, "name":"String", "this_bank_id":{ "value":"gh.uk.9j" }, "this_account_id":{ "value":"123" }, "this_view_id":{ "value":"owner" }, "other_account_routing_scheme":"String", "other_account_routing_address":"String", "other_bank_routing_scheme":"String", "other_bank_routing_address":"String", "is_beneficiary":true }
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-30003: Account not found. Please specify a valid value for ACCOUNT_ID.
  • Current user does not have access to the view
  • account not found at bank
  • user does not have access to owner view
  • OBP-50000: Unknown Error.
Implmented in 1_4_0 by getTransactionRequests