Bank Accounts
Bank Accounts API calls
Used to create, edit and archive bank accounts.
When creating payments you can either submit a payment record with the customer and bank accounts details or create a bank account here and then assign a customer_id
and bank_account_id
to a payment record.
Create
API call to create new bank accounts(s) as single or batch records.
Path
POST
/bank-accounts/create
Request Body
{
"records": [{
"customer_id": "ban_abc123...",
"bank_account_holder_name": "J DOE",
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005,
"bank_account_status_lookups_id": "loo_abc123...",
}]
}
Response Body
{
"status": true,
"results": [{
"id": "ban_abc123...",
"customer_id": "cus_abc123...",
"bank_account_holder_name": "J DOE",
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005,
"bank_account_status_lookups_id": "loo_abc123...",
"updated_at": null,
"created_at": "2024-02-27 09:11:23"
}, ...]
}
Parameters
Field | Required | Type | Description | Example |
---|---|---|---|---|
id | n/a | String(32) | Record id returned | ban_abc123... |
customer_id | Y | String(32) | Customer ID | cus_abc123... |
bank_account_holder_name | Y | String(30) | Bank account holder name for the bank account to be collected from | J DOE |
bank_account_number | Y | String(17) | Bank account number to be collected from | 10004291601 |
bank_account_type_lookups_id | Y | String(32) | Lookups ID relating to a bank account type e.g. Cheque. | loo_abc123... |
bank_name_lookups_id | Y | String(32) | Lookups ID relating to the bank name of the account number e.g. ABSA | loo_abc123... |
bank_branch_code | Y | Integer | Bank branch code for the account number | 632005 |
bank_account_status_lookups_id | n/a | String(32) | Status of bank account from the lookups table. | loo_abc123... |
created_at | n/a | Datetime | Date and time record was created | 2024-02-27 09:11:23 |
Update
API call to update existing bank accounts(s) as single or batch records. Records can not be deleted, only archived.
Path
POST
/bank-accounts/update
WARNINGWhen updating bank account details it will not update a DebiCheck mandate, to update mandates check the mandates or payment update section.
If you disable a bank account then it will not cancel a DebiCheck mandate. You can not disable a bank account if there are connected payments that are currently running, you need to stop the payments first before disabling the bank account.
Likewise bank account updates will only update the connected payments if those payments are running EFT debit orders and not DebiCheck.
Request Body
Only include fields you wish to change (besides id used to find the record).
{
"records": [{
"id": "ban_abc123...",
"bank_account_holder_name": "J DOE",
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005,
"bank_account_status_lookups_id": "loo_abc123...",
}]
}
Response Body
{
"status": true,
"results": [{
"id": "ban_abc123...",
"customer_id": "cus_abs123...",
"bank_account_holder_name": "J DOE",
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005,
"bank_account_status_lookups_id": "loo_abc123...",
"updated_at": "2024-03-17 12:35:24",
"created_at": "2024-02-27 09:11:23"
}, ...]
}
Parameters
Field | Required | Type | Description | Example |
---|---|---|---|---|
id | n/a | String(32) | Record id to update | ban_abc123... |
customer_id | n/a | String(32) | Customer ID | cus_abc123... |
bank_account_holder_name | Y | String(30) | Bank account holder name for the bank account to be collected from | J DOE |
bank_account_number | Y | String(17) | Bank account number to be collected from | 10004291601 |
bank_account_type_lookups_id | Y | String(32) | Lookups ID relating to a bank account type e.g. Cheque. | loo_abc123... |
bank_name_lookups_id | Y | String(32) | Lookups ID relating to the bank name of the account number e.g. ABSA | loo_abc123... |
bank_branch_code | Y | Integer | Bank branch code for the account number | 632005 |
bank_account_status_lookups_id | n/a | String(32) | Status of bank account from the lookups table. | loo_abc123... |
created_at | n/a | Datetime | Date and time record was created | 2024-02-27 09:11:23 |
List
List bank accounts loaded on the platform.
Path
GET
/bank-accounts/list?{params}
Query Parameters
Field | Type | Required | Description | Example |
---|---|---|---|---|
bank_account_status_lookups_id | String(32) | N | Filter for a specific bank account status. Lookups type must be 'bank_account_status'. | loo_abc123... |
customer_id | String(32) | N | Filter for a specific customer id. | cus_abc123... |
date_start | Date(YYYY-MM-DD) | N | Filter for records that have a created date after this date specified. | 2024-09-13 |
date_end | Date(YYYY-MM-DD) | N | Filter for records that have an created date before this specified date | 2025-04-24 |
Response Body
{
"status": true,
"results": [{
"id": "ban_abc123...",
"customer_id": "cus_abs123...",
"bank_account_holder_name": "J DOE",
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005,
"bank_account_status_lookups_id": "loo_abc123...",
"updated_at": "2024-03-17 12:35:24",
"created_at": "2024-02-27 09:11:23",
}, ...]
}