v1

latestOpenAPI 3.1.02026-07-243113441.2 MB
Bank Accounts

Verify a company bank account

Verify a company bank account by confirming the two micro-deposits sent to the bank account.

Note that the order of the two deposits specified in request parameters does not matter. There's a maximum of 5 verification attempts, after which we will automatically initiate a new set of micro-deposits and require the bank account to be verified with the new micro-deposits.

Bank account verification in demo

In the demo environment, use the POST /v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/send_test_deposits endpoint to simulate the micro-deposits transfer and return the two amounts in the response. You can call this endpoint as many times as you wish to retrieve the values of the two micro-deposits.

Webhooks

  • company.bank_account.verified: Fires when the company bank account is successfully verified.

Related guides

scope: company_bank_accounts:write

put/v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/verify

Path parameters

company_idstring required

The UUID of the company

bank_account_uuidstring required

The UUID of the company bank account

Headers

X-Gusto-API-Version'2026-06-15'

Determines the date-based API version associated with your API call. If none is provided, your application's minimum API version is used.

Request body

deposit_1number float required

The first micro-deposit amount (order does not matter).

deposit_2number float required

The second micro-deposit amount (order does not matter).

Response

Successful

uuidstring required

UUID of the bank account

company_uuidstring

UUID of the company

account_type'Checking' | 'Savings'

Bank account type

routing_numberstring

The bank account's routing number

hidden_account_numberstring

Masked bank account number

verification_status'awaiting_deposits' | 'ready_for_verification' | 'verified'

The verification status of the bank account.

'awaiting_deposits' means the bank account is just created and money is being transferred. 'ready_for_verification' means the micro-deposits are completed and the verification process can begin by using the verify endpoint. 'verified' means the bank account is verified.

verification_type'bank_deposits' | 'plaid' | 'plaid_external'

The verification type of the bank account.

'bank_deposits' means the bank account is connected by entering routing and accounting numbers and verifying through micro-deposits. 'plaid' means the bank account is connected through Plaid.

plaid_status'connected' | 'disconnected' nullable

The Plaid connection status of the bank account. Only applies when verification type is Plaid.

last_cached_balancestring nullable

The last fetch balance for the bank account. Please be aware that this amount does not reflect the most up-to-date balance and only applies when the verification type is Plaid.

balance_fetched_datestring nullable

The balance fetch date associated with the last_cached_balance. Only applies when verification type is Plaid.

namestring

Name of bank account

reverse_wire_enabledboolean nullable

Whether the company has at least one bank account with active reverse-wire funding. The same value is returned on every bank-account row in this response.