Bank Account

Get a list of Bank Accounts

get

Retrieve all bank accounts associated with the specified merchant.

Note: The response includes details for all types of bank accounts present for the merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
encryptedAccountNumberbooleanOptional

Specifies whether the bank account number provided in the request is encrypted. Default: false

Default: false
lastFourAccountNumberbooleanOptional

Specifies whether to return only the last four digits of the account number. Default: false

Default: false
effectiveAccountbooleanOptional

Specifies whether to return only active (effective) accounts. Default: true

Default: true
Responses
200

Returns a list of bank accounts successfully.

application/json
get
/api/demographics/v1/BankAccounts/{merchantNumber}
GET /api/demographics/v1/BankAccounts/{merchantNumber} HTTP/1.1
Host: 
Accept: */*
{
  "content": [
    {
      "bankAccountID": "43543634",
      "bankName": "Bank of America",
      "nameOnAccount": "John A. Doe",
      "accountHolderFirstName": "John",
      "accountHolderLastName": "Doe",
      "bankAccountTypeID": "1",
      "bankAccountNameTypeID": 123,
      "aba": "091000019",
      "accountNumber": "123456789",
      "lastFourAccountNumber": "6789",
      "encryptedAccountNumber": "32652752350******",
      "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
      "hasFees": true,
      "hasFunds": true,
      "hasChargebacks": false,
      "isNameSameAsLegalOrDBAName": "true",
      "currency": "USD",
      "purpose": "Settlement",
      "lastUpdatedUtc": "2025-01-27T10:30:00Z"
    }
  ]
}

Create Bank Account

post

Create a new bank account for the merchant with detailed validations and feature-specific behavior.

Note: The request validates the merchantNumber and bank account details to perform cross-validation, and ensures the merchant account is not locked.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
encryptedAccountNumberbooleanOptional

Specifies whether the bank account number provided in the request is encrypted. Default: false

Default: false
lastFourAccountNumberbooleanOptional

Specifies whether to return only the last four digits of the account number. Default: false

Default: false
Body
bankAccountIDstring | nullableOptional

Unique identifier for the bank account.

Example: 43543634
bankNamestring · min: 1Required

Name of the bank associated with the account.

Example: Bank of America
nameOnAccountstring | nullableOptional

The name on the bank account.

Example: John A. Doe
accountHolderFirstNamestring | nullableOptional

The first name of the account holder.

Example: John
accountHolderLastNamestring | nullableOptional

The last name of the account holder.

Example: Doe
bankAccountTypeIDstring · min: 1 · max: 3Required

Type of bank account. Possible values: 1 - Checking 2 - Savings

Example: 1
bankAccountNameTypeIDinteger · int32 · min: 1 · max: 2147483647Required

Name type ID for the bank account.

Example: 123
abastring · min: 1Required

The routing number associated with the bank account. In different regions, this may represent BIC (EU) or Sort Code (UK).
Mandatory for US and UK; optional for EU.

Example: 091000019
accountNumberstring · min: 1Required

The account number associated with the bank account.

Example: 123456789
lastFourAccountNumberstring | nullableOptional

The last four digits of the bank account number.

Example: 6789
encryptedAccountNumberstring · byte | nullableOptional

Encrypted version of the bank account number.

Example: 32652752350******
voidedCheckDocumentIDstring · uuidOptional

Document ID for the voided check linked to the bank account.

Example: 123e4567-e89b-12d3-a456-426614174000
hasFeesbooleanRequired

Indicates if the account has fees associated with it.

Example: true
hasFundsbooleanRequired

Indicates if the account has available funds.

Example: true
hasChargebacksbooleanRequired

Indicates if the account has a history of chargebacks.

Example: false
isNameSameAsLegalOrDBANamestring | nullableOptional

Indicates if the account name is the same as the legal or DBA name.

Example: true
currencystring | nullableOptional

The account currency in ISO 4217 code

Example: USD
purposestring · enumOptionalPossible values:
lastUpdatedUtcstring | nullableOptional

UTC date and time when the account was last updated.

Example: 2025-01-27T10:30:00Z
Responses
201

Created a new bank account successfully.

application/json
post
/api/demographics/v1/BankAccounts/{merchantNumber}
POST /api/demographics/v1/BankAccounts/{merchantNumber} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 556

{
  "bankAccountID": "43543634",
  "bankName": "Bank of America",
  "nameOnAccount": "John A. Doe",
  "accountHolderFirstName": "John",
  "accountHolderLastName": "Doe",
  "bankAccountTypeID": "1",
  "bankAccountNameTypeID": 123,
  "aba": "091000019",
  "accountNumber": "123456789",
  "lastFourAccountNumber": "6789",
  "encryptedAccountNumber": "32652752350******",
  "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
  "hasFees": true,
  "hasFunds": true,
  "hasChargebacks": false,
  "isNameSameAsLegalOrDBAName": "true",
  "currency": "USD",
  "purpose": "Settlement",
  "lastUpdatedUtc": "2025-01-27T10:30:00Z"
}
{
  "bankAccountID": "43543634",
  "bankName": "Bank of America",
  "nameOnAccount": "John A. Doe",
  "accountHolderFirstName": "John",
  "accountHolderLastName": "Doe",
  "bankAccountTypeID": "1",
  "bankAccountNameTypeID": 123,
  "aba": "091000019",
  "accountNumber": "123456789",
  "lastFourAccountNumber": "6789",
  "encryptedAccountNumber": "32652752350******",
  "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
  "hasFees": true,
  "hasFunds": true,
  "hasChargebacks": false,
  "isNameSameAsLegalOrDBAName": "true",
  "currency": "USD",
  "purpose": "Settlement",
  "lastUpdatedUtc": "2025-01-27T10:30:00Z"
}

Update Bank Accounts

put

Update the bank account details for the specified merchant identified by merchantNumber.

Note: Update process will be performed after validations through a secure channel.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

Query parameters
encryptedAccountNumberbooleanOptional

Specifies whether the bank account number provided in the request is encrypted. Default: false

Default: false
lastFourAccountNumberbooleanOptional

Specifies whether to return only the last four digits of the account number. Default: false

Default: false
Body
Responses
200

Successfully updated a bank account.

application/json
put
/api/demographics/v1/BankAccounts/{merchantNumber}
PUT /api/demographics/v1/BankAccounts/{merchantNumber} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 570

{
  "content": [
    {
      "bankAccountID": "43543634",
      "bankName": "Bank of America",
      "nameOnAccount": "John A. Doe",
      "accountHolderFirstName": "John",
      "accountHolderLastName": "Doe",
      "bankAccountTypeID": "1",
      "bankAccountNameTypeID": 123,
      "aba": "091000019",
      "accountNumber": "123456789",
      "lastFourAccountNumber": "6789",
      "encryptedAccountNumber": "32652752350******",
      "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
      "hasFees": true,
      "hasFunds": true,
      "hasChargebacks": false,
      "isNameSameAsLegalOrDBAName": "true",
      "currency": "USD",
      "purpose": "Settlement",
      "lastUpdatedUtc": "2025-01-27T10:30:00Z"
    }
  ]
}
{
  "content": [
    {
      "bankAccountID": "43543634",
      "bankName": "Bank of America",
      "nameOnAccount": "John A. Doe",
      "accountHolderFirstName": "John",
      "accountHolderLastName": "Doe",
      "bankAccountTypeID": "1",
      "bankAccountNameTypeID": 123,
      "aba": "091000019",
      "accountNumber": "123456789",
      "lastFourAccountNumber": "6789",
      "encryptedAccountNumber": "32652752350******",
      "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
      "hasFees": true,
      "hasFunds": true,
      "hasChargebacks": false,
      "isNameSameAsLegalOrDBAName": "true",
      "currency": "USD",
      "purpose": "Settlement",
      "lastUpdatedUtc": "2025-01-27T10:30:00Z"
    }
  ]
}

Delete Bank Account

delete

Delete a bank account associated with the specified merchant using the provided bankAccountId.

Note: The merchant account must not be locked. Proper authorization based on the MID policy is required.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

bankAccountIdinteger · int32Required

The unique identifier of the bank account.

Responses
200

Successfully deleted a bank account.

No content

delete
/api/demographics/v1/BankAccounts/{merchantNumber}
DELETE /api/demographics/v1/BankAccounts/{merchantNumber} HTTP/1.1
Host: 
Accept: */*

No content

Update Specific Bank Account

put

Update the details of an existing bank account identified by bankAccountId of the specified merchant.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

bankAccountIdinteger · int32Required

The unique identifier of the bank account.

Query parameters
encryptedAccountNumberbooleanOptional

Specifies whether the bank account number provided in the request is encrypted. Default: false

Default: false
lastFourAccountNumberbooleanOptional

Specifies whether to return only the last four digits of the account number. Default: false

Default: false
Body
bankAccountIDstring | nullableOptional

Unique identifier for the bank account.

Example: 43543634
bankNamestring · min: 1Required

Name of the bank associated with the account.

Example: Bank of America
nameOnAccountstring | nullableOptional

The name on the bank account.

Example: John A. Doe
accountHolderFirstNamestring | nullableOptional

The first name of the account holder.

Example: John
accountHolderLastNamestring | nullableOptional

The last name of the account holder.

Example: Doe
bankAccountTypeIDstring · min: 1 · max: 3Required

Type of bank account. Possible values: 1 - Checking 2 - Savings

Example: 1
bankAccountNameTypeIDinteger · int32 · min: 1 · max: 2147483647Required

Name type ID for the bank account.

Example: 123
abastring · min: 1Required

The routing number associated with the bank account. In different regions, this may represent BIC (EU) or Sort Code (UK).
Mandatory for US and UK; optional for EU.

Example: 091000019
accountNumberstring · min: 1Required

The account number associated with the bank account.

Example: 123456789
lastFourAccountNumberstring | nullableOptional

The last four digits of the bank account number.

Example: 6789
encryptedAccountNumberstring · byte | nullableOptional

Encrypted version of the bank account number.

Example: 32652752350******
voidedCheckDocumentIDstring · uuidOptional

Document ID for the voided check linked to the bank account.

Example: 123e4567-e89b-12d3-a456-426614174000
hasFeesbooleanRequired

Indicates if the account has fees associated with it.

Example: true
hasFundsbooleanRequired

Indicates if the account has available funds.

Example: true
hasChargebacksbooleanRequired

Indicates if the account has a history of chargebacks.

Example: false
isNameSameAsLegalOrDBANamestring | nullableOptional

Indicates if the account name is the same as the legal or DBA name.

Example: true
currencystring | nullableOptional

The account currency in ISO 4217 code

Example: USD
purposestring · enumOptionalPossible values:
lastUpdatedUtcstring | nullableOptional

UTC date and time when the account was last updated.

Example: 2025-01-27T10:30:00Z
Responses
200

Successfully updated a bank account.

application/json
put
/api/demographics/v1/BankAccounts/{merchantNumber}/{bankAccountId}
PUT /api/demographics/v1/BankAccounts/{merchantNumber}/{bankAccountId} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 556

{
  "bankAccountID": "43543634",
  "bankName": "Bank of America",
  "nameOnAccount": "John A. Doe",
  "accountHolderFirstName": "John",
  "accountHolderLastName": "Doe",
  "bankAccountTypeID": "1",
  "bankAccountNameTypeID": 123,
  "aba": "091000019",
  "accountNumber": "123456789",
  "lastFourAccountNumber": "6789",
  "encryptedAccountNumber": "32652752350******",
  "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
  "hasFees": true,
  "hasFunds": true,
  "hasChargebacks": false,
  "isNameSameAsLegalOrDBAName": "true",
  "currency": "USD",
  "purpose": "Settlement",
  "lastUpdatedUtc": "2025-01-27T10:30:00Z"
}
{
  "bankAccountID": "43543634",
  "bankName": "Bank of America",
  "nameOnAccount": "John A. Doe",
  "accountHolderFirstName": "John",
  "accountHolderLastName": "Doe",
  "bankAccountTypeID": "1",
  "bankAccountNameTypeID": 123,
  "aba": "091000019",
  "accountNumber": "123456789",
  "lastFourAccountNumber": "6789",
  "encryptedAccountNumber": "32652752350******",
  "voidedCheckDocumentID": "123e4567-e89b-12d3-a456-426614174000",
  "hasFees": true,
  "hasFunds": true,
  "hasChargebacks": false,
  "isNameSameAsLegalOrDBAName": "true",
  "currency": "USD",
  "purpose": "Settlement",
  "lastUpdatedUtc": "2025-01-27T10:30:00Z"
}

Delete Bank Account

delete

Delete a bank account associated with the specified merchant using the provided bankAccountId.

Note: The merchant account must not be locked. Proper authorization based on the MID policy is required.

Path parameters
merchantNumberstringRequired

The merchant's unique identification number.

bankAccountIdinteger · int32Required

The unique identifier of the bank account.

Responses
200

Successfully deleted a bank account.

No content

delete
/api/demographics/v1/BankAccounts/{merchantNumber}/{bankAccountId}
DELETE /api/demographics/v1/BankAccounts/{merchantNumber}/{bankAccountId} HTTP/1.1
Host: 
Accept: */*

No content

Was this helpful?