Skip to main content
POST
Add payee account

Headers

X-Platform-ID
string<uuid>
required

Unique platform identifier (UUID). You receive this during onboarding. Must be sent with every API request.

X-Signature
string
required

HMAC-SHA256 request signature for authentication. Use your platform secret key to compute it as: METHOD + PATH + QUERY + BODY_HASH.

Path Parameters

user_id
string<uuid>
required

Unique identifier (UUID) of the user

Body

application/json
payee_id
string<uuid4>
required

Unique identifier (UUID) of the payee to whom this bank account belongs.

Example:

"f47ac10b-****-****-****-0e02b2c3d479"

account_holder_name
string
required

Full name of the account holder as it appears on the bank account.

Maximum string length: 100
Example:

"John A. Doe"

account_type
enum<string>
required

Type of account used to classify personal or business checking/savings.

Available options:
PERSONAL_SAVINGS,
BUSINESS_SAVINGS,
BUSINESS_CHECKING,
PERSONAL_CHECKING
Example:

"PERSONAL_CHECKING"

bank_nick_name
string
required

User-defined nickname to help identify this bank account (e.g., 'Payroll Account').

Maximum string length: 100
Example:

"Personal Checking - Wells Fargo"

account_number
string
required

Actual bank account number. Must be a valid number and stored securely.

Maximum string length: 20
Example:

"62**56**90**75"

routing_number
string
required

9-digit ABA routing number of the financial institution.

Maximum string length: 9
Example:

"021****21"

account_holder_address
string | null

Account holder address line 1 (required for RTP payouts).

Maximum string length: 500
Example:

"123 Main St"

account_holder_city
string | null

Account holder city (required for RTP payouts).

Maximum string length: 50
Example:

"New York"

account_holder_state
string | null

Account holder state (required for RTP payouts).

Maximum string length: 50
Example:

"NY"

account_holder_zip
string | null

Account holder ZIP/postal code (required for RTP payouts).

Maximum string length: 50
Example:

"10001"

account_holder_country
string | null

Account holder country (required for RTP payouts).

Maximum string length: 50
Example:

"US"

Response

Successful Response

success
boolean
default:true

Indicates whether the request was processed successfully.

Example:

true

message
string
default:Success

A short, human-readable message describing the result of the request.

Example:

"Operation completed."

data
ExternalContactBankAccountRead · object | null

The main response payload, if applicable

queryGeneratedTime
number | null
default:1783679844.273462

The Unix timestamp (in seconds) indicating when the response was generated.

Example:

1718006400