HomeGuidesRecipesAPI ExplorerForumSupport
Partner Portal
Partner Portal

Manage bank accounts

Learn how to manage the entities' bank accounts.

Overview

Entities that represent the customers of Monite API partners can have their bank account information associated with them. These bank accounts can be set as default for payment in different currencies.

Add a bank account to an entity

To add a bank account to an entity, call POST /bank_accounts and provide the bank account details. All bank accounts require the currency and country. Other required fields depend on the currency:

EUR accountsGBP accountsUSD accountsOther currencies
- iban- account_holder_name
- account_number
- sort_code
- account_holder_name
- account_number
- routing_number
One of:
- iban
- account_number and sort_code
- account_number and routing_number

Sample request:

curl -X POST 'https://api.sandbox.monite.com/v1/bank_accounts' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer ACCESS_TOKEN' \
     -H 'Content-Type: application/json' \
     -d '{
       "iban": "DE74500700100100000900",
       "bic": "DEUTDEFFXXX",
       "bank_name": "DEUTSCHE BANK AG",
       "display_name": "Primary account",
       "is_default_for_currency": true,
       "account_holder_name": "Tobias Weingart",
       "currency": "EUR",
       "country": "DE"
     }'
curl -X POST 'https://api.sandbox.monite.com/v1/bank_accounts' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer ACCESS_TOKEN' \
     -H 'Content-Type: application/json' \
     -d '{
       "iban": "GB15HBUK40312412345678",
       "bic": "HBUKGB4B",
       "bank_name": "HSBC UK BANK PLC",
       "display_name": "Primary account",
       "is_default_for_currency": true,
       "account_holder_name": "Esther Walsh",
       "account_number": "12345678",
       "sort_code": 403124,
       "currency": "GBP",
       "country": "GB"
     }'
curl -X POST 'https://api.sandbox.monite.com/v1/bank_accounts' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer ACCESS_TOKEN' \
     -H 'Content-Type: application/json' \
     -d '{
       "bank_name": "WELLS FARGO",
       "display_name": "Primary account",
       "is_default_for_currency": true,
       "account_holder_name": "Bob Jones",
       "account_number": "2571714302",
       "routing_number": "061000227",
       "currency": "USD",
       "country": "US"
     }'

The successful response returns the unique id assigned to the added bank account, along with other details:

{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "was_created_by_user_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  ...
}

Set the default bank account

Once the bank accounts are added to the entity, set a default bank account for each currency by calling POST /bank_accounts/{bank_account_id}/make_default:

curl -X POST 'https://api.sandbox.monite.com/v1/bank_accounts/3fa8...f66afa6/make_default' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer ACCESS_TOKEN'

πŸ“˜

The default entity bank account is set for each currency. Only one default bank account per currency is allowed.

If a new bank account is added to a currency with no default bank account set, the newly added bank account is automatically set as the default for that currency.

List all bank accounts

To get information about all bank accounts associated with the specified entity, call GET /bank_accounts.

Retrieve a bank account

To get information about a specific bank account associated with the specified entity, call GET /bank_accounts/{entity_bank_account_id}.

Edit a bank account

You can update the account_holder_name and display_name of existing entity bank accounts. To do this, call PATCH /bank_accounts/{entity_bank_account_id} and provide the new values.

To update other bank account details (for example, iban), you will need to delete the existing bank account and create a new one instead.

πŸ“˜

The account_holder_name of existing GBP and USD bank accounts cannot be changed to an empty string since it is a required field.

Delete a bank account

To delete an existing bank account from the list of bank accounts associated with the specified entity, call DELETE /bank_accounts/{entity_bank_account_id}.