-
API
-
The terms `API` (Application Programming Interface) and `Endpoint` are used somewhat interchangeablyMore...
- Get API Info (root)
-
-
Account
-
The thing that tokens of value (money) come in and out of. An account has one or more `owners` whichMore...
- Create View
- Get access for specific user
- Get account by id
- Get accounts at all banks (Private, inc views)
- Get accounts at bank (Private)
- Get private accounts at all banks (Authenticated access)
- Get private accounts at one bank
- Get public accounts at all banks (Anonymous access)
- Update Account Label
- Update View
-
-
Bank
-
A Bank (aka Space) represents a financial institution, brand or organizational unit under which resMore...
- Get Bank
- Get Bank ATMS
- Get Bank Products
- Get Banks
-
-
Counterparty Metadata
- Add Corporate Location to Counterparty
- Add Counterparty More Info
- Add Open Corporates URL to Counterparty
- Add image url to other bank account
- Add physical location to other bank account
- Add public alias to other bank account
- Add url to other bank account
- Create Other Account Private Alias
- Delete Counterparty Corporate Location
- Delete Counterparty Image URL
- Delete Counterparty Open Corporates URL
- Delete Counterparty Physical Location
- Delete Counterparty Private Alias
- Delete Counterparty Public Alias
- Delete more info of other bank account
- Delete url of other bank account
- Get Other Account Metadata
- Get Other Account Private Alias
- Get public alias of other bank account
- Update Counterparty Corporate Location
- Update Counterparty Image Url
- Update Counterparty More Info
- Update Counterparty Physical Location
- Update Counterparty Private Alias
- Update Open Corporates Url of Counterparty
- Update public alias of other bank account
- Update url of other bank account
-
Customer
-
The legal entity that has the relationship to the bank. Customers are linked to Users via `User CusMore...
- Add a customer
- Get CRM Events
- Get customer for logged in user
-
-
Transaction
-
Records of successful movements of money from / to an `Account`. OBP Transactions don't contain anyMore...
- Get Other Account of Transaction
- Get Transaction by Id
- Get Transactions for Account (Full)
-
-
Transaction Metadata
- Add a Transaction Comment
- Add a Transaction Image
- Add a Transaction Narrative
- Add a Transaction Tag
- Add a Transaction where Tag
- Delete a Transaction Comment
- Delete a Transaction Image
- Delete a Transaction Narrative
- Delete a Transaction Tag
- Delete a Transaction Tag
- Get Transaction Comments
- Get Transaction Images
- Get Transaction Tags
- Get a Transaction Narrative
- Get a Transaction where Tag
- Update a Transaction Narrative
- Update a Transaction where Tag
-
API
-
Account
-
Create View
-
Get access for specific user
-
Get account by id
-
Get accounts at all banks (Private, inc views)
-
Get accounts at bank (Private)
-
Get private accounts at all banks (Authenticated access)
-
Get private accounts at one bank
-
Get public accounts at all banks (Anonymous access)
-
Update Account Label
-
Update View
-
Create View
-
Account Public
-
Bank
-
Branch
-
Card
-
Counterparty
-
Counterparty Metadata
-
Add Corporate Location to Counterparty
-
Add Counterparty More Info
-
Add Open Corporates URL to Counterparty
-
Add image url to other bank account
-
Add physical location to other bank account
-
Add public alias to other bank account
-
Add url to other bank account
-
Create Other Account Private Alias
-
Delete Counterparty Corporate Location
-
Delete Counterparty Image URL
-
Delete Counterparty Open Corporates URL
-
Delete Counterparty Physical Location
-
Delete Counterparty Private Alias
-
Delete Counterparty Public Alias
-
Delete more info of other bank account
-
Delete url of other bank account
-
Get Other Account Metadata
-
Get Other Account Private Alias
-
Get public alias of other bank account
-
Update Counterparty Corporate Location
-
Update Counterparty Image Url
-
Update Counterparty More Info
-
Update Counterparty Physical Location
-
Update Counterparty Private Alias
-
Update Open Corporates Url of Counterparty
-
Update public alias of other bank account
-
Update url of other bank account
-
Add Corporate Location to Counterparty
-
Customer
-
Customer Message
-
Documentation
-
Transaction
-
Transaction Metadata
-
Add a Transaction Comment
-
Add a Transaction Image
-
Add a Transaction Narrative
-
Add a Transaction Tag
-
Add a Transaction where Tag
-
Delete a Transaction Comment
-
Delete a Transaction Image
-
Delete a Transaction Narrative
-
Delete a Transaction Tag
-
Delete a Transaction Tag
-
Get Transaction Comments
-
Get Transaction Images
-
Get Transaction Tags
-
Get a Transaction Narrative
-
Get a Transaction where Tag
-
Update a Transaction Narrative
-
Update a Transaction where Tag
-
Add a Transaction Comment
-
Transaction Request
-
Answer Transaction Request Challenge
-
Create Transaction Request
-
Get Transaction Request Types for Account
-
Get all Transaction Requests
-
Answer Transaction Request Challenge
-
View Custom
-
Delete View
-
Get Views for Account
-
Get access
-
Grant User access to View
-
Grant User access to a list of views
-
Revoke access to all Views on Account
-
Revoke access to one View
-
Delete View
v1.4.0 (87 APIs)
Answer Transaction Request Challenge
In Sandbox mode, any string that can be converted to a possitive integer will be accepted as an answer.
Authentication is Mandatory
URL Parameters:
-
ACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
BANK_ID: gh.29.uk
-
TRANSACTION_REQUEST_ID: 8138a7e4-6d02-40e3-a129-0b2bf89de9f1
-
TRANSACTION_REQUEST_TYPE: SEPA
-
VIEW_ID: owner
JSON request body fields:
JSON response body fields:
-
account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
amount: 10.12
-
bank_id: gh.29.uk
-
body: body
-
counterparty_id: 9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh
-
currency: EUR
-
description: This an optional field. Maximum length is 2000. It can be any characters here.
-
is_beneficiary: true
-
name: ACCOUNT_MANAGEMENT_FEE
-
start_date: 2020-01-27
-
value: 5987953
{
"id":{
"value":"123"
},
"type":"String",
"from":{
"bank_id":"String",
"account_id":"String"
},
"details":{
"to":{
"bank_id":"String",
"account_id":"String"
},
"value":{
"currency":"EUR",
"amount":"100"
},
"description":"String"
},
"body":{
"to":{
"bank_id":"String",
"account_id":"String"
},
"value":{
"currency":"EUR",
"amount":"100"
},
"description":"String"
},
"transaction_ids":"String",
"status":"String",
"start_date":"2017-09-19T00:00:00Z",
"end_date":"2017-09-19T00:00:00Z",
"challenge":{
"id":"String",
"allowed_attempts":4,
"challenge_type":"String"
},
"charge":{
"summary":"String",
"value":{
"currency":"EUR",
"amount":"100"
}
},
"charge_policy":"String",
"counterparty_id":{
"value":"9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh"
},
"name":"John Smith Ltd.",
"this_bank_id":{
"value":"gh.uk.9j"
},
"this_account_id":{
"value":"123"
},
"this_view_id":{
"value":"owner"
},
"other_account_routing_scheme":"OBP",
"other_account_routing_address":"36f8a9e6-c2b1-407a-8bd0-421b7119307e",
"other_bank_routing_scheme":"OBP",
"other_bank_routing_address":"gh.29.uk",
"is_beneficiary":true
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- 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
- OBP-40018: 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.
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.
Authentication is Mandatory
URL Parameters:
-
ACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
BANK_ID: gh.29.uk
-
TRANSACTION_REQUEST_TYPE: SEPA
-
VIEW_ID: owner
JSON request body fields:
-
account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
amount: 10.12
-
bank_id: gh.29.uk
-
currency: EUR
-
description: This an optional field. Maximum length is 2000. It can be any characters here.
-
value: 5987953
JSON response body fields:
-
account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
amount: 10.12
-
bank_id: gh.29.uk
-
body: body
-
counterparty_id: 9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh
-
currency: EUR
-
description: This an optional field. Maximum length is 2000. It can be any characters here.
-
is_beneficiary: true
-
name: ACCOUNT_MANAGEMENT_FEE
-
start_date: 2020-01-27
-
value: 5987953
{
"id":{
"value":"123"
},
"type":"String",
"from":{
"bank_id":"String",
"account_id":"String"
},
"details":{
"to":{
"bank_id":"String",
"account_id":"String"
},
"value":{
"currency":"EUR",
"amount":"100"
},
"description":"String"
},
"body":{
"to":{
"bank_id":"String",
"account_id":"String"
},
"value":{
"currency":"EUR",
"amount":"100"
},
"description":"String"
},
"transaction_ids":"String",
"status":"String",
"start_date":"2017-09-19T00:00:00Z",
"end_date":"2017-09-19T00:00:00Z",
"challenge":{
"id":"String",
"allowed_attempts":4,
"challenge_type":"String"
},
"charge":{
"summary":"String",
"value":{
"currency":"EUR",
"amount":"100"
}
},
"charge_policy":"String",
"counterparty_id":{
"value":"9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh"
},
"name":"John Smith Ltd.",
"this_bank_id":{
"value":"gh.uk.9j"
},
"this_account_id":{
"value":"123"
},
"this_view_id":{
"value":"owner"
},
"other_account_routing_scheme":"OBP",
"other_account_routing_address":"36f8a9e6-c2b1-407a-8bd0-421b7119307e",
"other_bank_routing_scheme":"OBP",
"other_bank_routing_address":"gh.29.uk",
"is_beneficiary":true
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- 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.
- OBP-40018: Sorry, Transaction Requests are not enabled in this API instance.
- OBP-50000: Unknown Error.
Get Transaction Request Types for Account
Returns the Transaction 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.
Authentication is Mandatory
URL Parameters:
-
ACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
BANK_ID: gh.29.uk
-
VIEW_ID: owner
JSON response body fields:
{
"transaction_request_types":[{
"value":"10",
"charge":{
"summary":"The bank fixed charge",
"value":{
"currency":"EUR",
"amount":"0"
}
}
}]
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- 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
- OBP-40018: Sorry, Transaction Requests are not enabled in this API instance.
- OBP-50000: Unknown Error.
Get all Transaction Requests
Authentication is Mandatory
URL Parameters:
-
ACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
BANK_ID: gh.29.uk
-
VIEW_ID: owner
JSON response body fields:
-
account_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
-
amount: 10.12
-
bank_id: gh.29.uk
-
body: body
-
counterparty_id: 9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh
-
currency: EUR
-
date_of_birth: 2018-03-09
-
description: This an optional field. Maximum length is 2000. It can be any characters here.
-
future_date: 2020-01-27
-
iban: DE91 1000 0000 0123 4567 89
-
instructedAmount: 100
-
is_beneficiary: true
-
legal_name: Eveline Tripman
-
[message](/glossary#Message Doc): 123456
-
name: ACCOUNT_MANAGEMENT_FEE
-
start_date: 2020-01-27
-
value: 5987953
{
"id":{
"value":"123"
},
"type":"String",
"from":{
"bank_id":"String",
"account_id":"String"
},
"body":{
"to_sandbox_tan":{
"bank_id":"String",
"account_id":"String"
},
"to_sepa":{
"iban":"String"
},
"to_counterparty":{
"counterparty_id":"9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh"
},
"to_transfer_to_phone":{
"value":{
"currency":"EUR",
"amount":"0"
},
"description":"String",
"message":"String",
"from":{
"mobile_phone_number":"+44 07972 444 876",
"nickname":"String"
},
"to":{
"mobile_phone_number":"+44 07972 444 876"
}
},
"to_transfer_to_atm":{
"value":{
"currency":"EUR",
"amount":"0"
},
"description":"String",
"message":"String",
"from":{
"mobile_phone_number":"+44 07972 444 876",
"nickname":"String"
},
"to":{
"legal_name":"Eveline Tripman",
"date_of_birth":"20181230",
"mobile_phone_number":"+44 07972 444 876",
"kyc_document":{
"type":"String",
"number":"String"
}
}
},
"to_transfer_to_account":{
"value":{
"currency":"EUR",
"amount":"0"
},
"description":"String",
"transfer_type":"String",
"future_date":"20181230",
"to":{
"name":"String",
"bank_code":"String",
"branch_number":"String",
"account":{
"number":"String",
"iban":"String"
}
}
},
"to_sepa_credit_transfers":{
"debtorAccount":{
"iban":"12345"
},
"instructedAmount":{
"currency":"EUR",
"amount":"0"
},
"creditorAccount":{
"iban":"54321"
},
"creditorName":"John Miles"
},
"value":{
"currency":"EUR",
"amount":"100"
},
"description":"String"
},
"transaction_ids":"String",
"status":"String",
"start_date":"2017-09-19T00:00:00Z",
"end_date":"2017-09-19T00:00:00Z",
"challenge":{
"id":"String",
"allowed_attempts":4,
"challenge_type":"String"
},
"charge":{
"summary":"String",
"value":{
"currency":"EUR",
"amount":"100"
}
},
"charge_policy":"String",
"counterparty_id":{
"value":"9fg8a7e4-6d02-40e3-a129-0b2bf89de8uh"
},
"name":"String",
"this_bank_id":{
"value":"gh.uk.9j"
},
"this_account_id":{
"value":"123"
},
"this_view_id":{
"value":"owner"
},
"other_account_routing_scheme":"OBP",
"other_account_routing_address":"36f8a9e6-c2b1-407a-8bd0-421b7119307e",
"other_bank_routing_scheme":"OBP",
"other_bank_routing_address":"gh.29.uk",
"is_beneficiary":true,
"future_date":"20881230"
}
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- 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.