Skip to main content

Bank accounts (1.0)

Download OpenAPI specification:Download

Bank accounts API requests specification

Bank accounts API requests specification

Manage your bank account , which you can later use for payments

Webhooks

Webhooks API requests specification

Payment status update Webhook

Webhook notification about payment status update

Request Body schema: application/json

Webhook payload

One of
scope
string
Value: "bank-accounts"

The scope of the webhook

event_name
string
Value: "status-update"

event_name

id
string

ID of the bank account

sortCode
string (sortCode) ^[0-9]{6}$

Sort code of the bank account. Must be 6 digits long

accountNumber
string (accountNumber) ^[0-9]{8}$

Account number of the bank account. Must be 8 digits long

name
string (bankAccountName)

Bank account name

provider
string (bankAccountProviderName)
Enum: "ob-natwest" "ob-lloyds-personal" "ob-rbs" "ob-tsb" "ob-halifax-personal" "ob-mettle" "ob-bos-personal" "ob-hsbc-personal" "ob-barclays-business" "ob-revolut" "starling" "ob-bos-business" "ob-first-direct" "ob-nationwide" "ob-monzo" "ob-lloyds-business" "ob-santander" "ob-virgin-money" "ob-hsbc-business" "ob-barclays-personal" "ob-tide" "ob-ulster" "other" "ob-chase" "ob-aibni-retail" "ob-aibni-corporate" "ob-aibgb-retail" "ob-aibgb-corporate" "ob-boi-uk-b365" "ob-boi-uk-bol"

provider id

isDefault
boolean

Is this bank account default for the company

status
string (bankAccountStatus)

Bank account status

string or string or string (bankAccountConnectionType)

Bank account connection type

createdAt
string (createdAt)

Date when entity was created

bankStatementAttachmentURL
string <url>

Bank account statement

bankConsentExpired
string
Enum: "day-30" "day-14" "day-1" "expired" "up-to-date"

Bank account consent status. Determines if the bank account consent is expired or in which days it will expire. If the bank account is up-to-date reconsent is not needed

Responses

Request samples

Content type
application/json
{
  • "scope": "bank-accounts",
  • "event_name": "status-update",
  • "id": "62b48c5b6ba2cd6a040b20a8",
  • "sortCode": "123456",
  • "accountNumber": "12345678",
  • "name": "Default account",
  • "provider": "other",
  • "isDefault": true,
  • "status": "verified",
  • "connectionType": "manual",
  • "createdAt": "2022-12-24T00:00:00Z",
  • "bankStatementAttachmentURL": "string",
  • "bankConsentExpired": "day-30"
}

Bank accounts

Create a new bank account

Create a new bank account

header Parameters
terminal-secret
required
string <uuid>
Example: 3858f642-e92f-431c-9d38-46d15efb7fba
terminal-id
required
string
Example: 62b48adf6ba2cd6a040b1eec
Request Body schema: application/json
sortCode
required
string (sortCode) ^[0-9]{6}$

Sort code of the bank account. Must be 6 digits long

accountNumber
required
string (accountNumber) ^[0-9]{8}$

Account number of the bank account. Must be 8 digits long

name
required
string (bankAccountName)

Bank account name

provider
required
string (bankAccountProviderName)
Enum: "ob-natwest" "ob-lloyds-personal" "ob-rbs" "ob-tsb" "ob-halifax-personal" "ob-mettle" "ob-bos-personal" "ob-hsbc-personal" "ob-barclays-business" "ob-revolut" "starling" "ob-bos-business" "ob-first-direct" "ob-nationwide" "ob-monzo" "ob-lloyds-business" "ob-santander" "ob-virgin-money" "ob-hsbc-business" "ob-barclays-personal" "ob-tide" "ob-ulster" "other" "ob-chase" "ob-aibni-retail" "ob-aibni-corporate" "ob-aibgb-retail" "ob-aibgb-corporate" "ob-boi-uk-b365" "ob-boi-uk-bol"

provider id

bankStatementAttachmentURL
required
string <url> (BankAccountAttachment)

Link to the bank account statement attachment file

Responses

Request samples

Content type
application/json
{
  • "sortCode": "123456",
  • "accountNumber": "12345678",
  • "name": "Default account",
  • "provider": "other",
  • "bankStatementAttachmentURL": "https://example.com"
}

Response samples

Content type
application/json; charset=utf-8
{
  • "id": "62b48c5b6ba2cd6a040b20a8",
  • "sortCode": "123456",
  • "accountNumber": "12345678",
  • "name": "Default account",
  • "provider": "other",
  • "isDefault": true,
  • "status": "verified",
  • "connectionType": "manual",
  • "createdAt": "2022-12-24T00:00:00Z",
  • "bankStatementAttachmentURL": "string",
  • "bankConsentExpired": "day-30"
}

Get all Bank accounts

Get all Bank accounts

query Parameters
page
integer
Default: 1
Example: page=4

Current page number

limit
integer
Default: 25
Example: limit=10

Number of items per page

header Parameters
terminal-secret
required
string <uuid>
Example: 3858f642-e92f-431c-9d38-46d15efb7fba
terminal-id
required
string
Example: 62b48adf6ba2cd6a040b1eec

Responses

Response samples

Content type
application/json; charset=utf-8
{
  • "data": {
    }
}

Get a bank account by ID

Get a bank account by ID

path Parameters
id
required
string
Example: 62b48c5b6ba2cd6a040b20a8

Mongoose Object ID of the target entity

header Parameters
terminal-secret
required
string <uuid>
Example: 3858f642-e92f-431c-9d38-46d15efb7fba
terminal-id
required
string
Example: 62b48adf6ba2cd6a040b1eec

Responses

Response samples

Content type
application/json; charset=utf-8
{
  • "id": "62b48c5b6ba2cd6a040b20a8",
  • "sortCode": "123456",
  • "accountNumber": "12345678",
  • "name": "Default account",
  • "provider": "other",
  • "isDefault": true,
  • "status": "verified",
  • "connectionType": "manual",
  • "createdAt": "2022-12-24T00:00:00Z",
  • "bankStatementAttachmentURL": "string",
  • "bankConsentExpired": "day-30"
}

Update a bank account name by ID

Update a bank account name by ID

path Parameters
id
required
string
Example: 62b48c5b6ba2cd6a040b20a8

Mongoose Object ID of the target entity

header Parameters
terminal-secret
required
string <uuid>
Example: 3858f642-e92f-431c-9d38-46d15efb7fba
terminal-id
required
string
Example: 62b48adf6ba2cd6a040b1eec
Request Body schema: application/json
name
string (bankAccountName)

Bank account name

Responses

Request samples

Content type
application/json
{
  • "name": "Default account"
}

Response samples

Content type
application/json; charset=utf-8
{
  • "id": "62b48c5b6ba2cd6a040b20a8",
  • "sortCode": "123456",
  • "accountNumber": "12345678",
  • "name": "Default account",
  • "provider": "other",
  • "isDefault": true,
  • "status": "verified",
  • "connectionType": "manual",
  • "createdAt": "2022-12-24T00:00:00Z",
  • "bankStatementAttachmentURL": "string",
  • "bankConsentExpired": "day-30"
}

Set a bank account as default by ID

Set a bank account as default by ID

path Parameters
id
required
string
Example: 62b48c5b6ba2cd6a040b20a8

Mongoose Object ID of the target entity

header Parameters
terminal-secret
required
string <uuid>
Example: 3858f642-e92f-431c-9d38-46d15efb7fba
terminal-id
required
string
Example: 62b48adf6ba2cd6a040b1eec

Responses

Response samples

Content type
application/json; charset=utf-8
{
  • "id": "62b48c5b6ba2cd6a040b20a8",
  • "sortCode": "123456",
  • "accountNumber": "12345678",
  • "name": "Default account",
  • "provider": "other",
  • "isDefault": true,
  • "status": "verified",
  • "connectionType": "manual",
  • "createdAt": "2022-12-24T00:00:00Z",
  • "bankStatementAttachmentURL": "string",
  • "bankConsentExpired": "day-30"
}