Skip to main content
POST
Create a bank account

Authorizations

Authorization
string
header
required

API key issued per entity via Settings > Developers > API Keys. Each key carries scopes (e.g. orders:read, products:write). Bearer token format: Authorization: Bearer ark_live_ent_Test keys use ark_test_ent_. Both are issued per entity
via Settings > Developers > API Keys.

Body

application/json
name
string
required
gl_account_id
string<uuid>
required

Must be a valid GL account owned by this entity

institution
string
account_type
enum<string>
Available options:
checking,
savings,
credit,
loan,
other
is_ap_account
boolean

When true this account is used for AP payments

deposit_layout
object

Response

Created bank account

A bank account linked to a GL account. Used for bank reconciliation and Plaid-based transaction sync. Plaid fields are read-only and managed by routes/plaid.mjs exclusively. Verified against live dev RDS accounting.bank_accounts.

id
string<uuid>
read-only
entity_id
string<uuid>
read-only
gl_account_id
string<uuid>
read-only

Immutable post-create

gl_account_number
string
read-only
gl_account_name
string
read-only
name
string
institution
string | null
account_type
enum<string> | null
Available options:
checking,
savings,
credit,
loan,
other
account_number_last4
string | null
read-only
is_active
boolean
is_ap_account
boolean
current_balance
number | null
read-only

Plaid-synced balance

last_synced_at
string<date-time> | null
read-only
sync_status
string | null
read-only
deposit_layout
object | null
created_at
string<date-time>
read-only
updated_at
string<date-time>
read-only