Create Settlement Account
POST /obp/v7.0.0/banks/BANK_ID/settlement-accounts
OBPv4.0.0-createSettlementAccount Roles: CanCreateSettlementAccountAtOneBank(per bank) Bank
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.
User Authentication is Required. The User must be logged in. The Application must also be authenticated.
URL Parameters:
BANK_ID: gh.29.uk
JSON request body fields (10)
- 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 (18)
- 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
Example request body
{
"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"
}
]
}Example success 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"
}
]
}Possible errors (8)
- 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. Expected a 3-letter ISO Currency Code (e.g., 'USD', 'EUR'), 'lovelace' (Cardano), or 'ETH' (Ethereum). Refer to ISO 4217 currency codes: https://www.iso.org/iso-4217-currency-codes.html
- OBP-50000: Unknown Error.