Bank account
The Bank Account entity in Treasury.
A bank account is a US checking or savings account on either side of a payout — a funding account that you (the merchant) own and debit, or a payment method attached to a Recipient that you credit. Both sides use the same underlying tokenization: account and routing numbers are exchanged for a token at creation time, and only the token + last-four are stored on Easy. Your application never needs to handle raw account numbers.
Lifecycle
- Linked — Created via one of three paths:
- Plaid (server, your funding account):
GET /treasury/bank-accounts/link-tokento start, thenPOST /treasury/bank-accounts/linkwith the resultingplaid_processor_token. - Plaid (recipient self-service): the invite flow uses
POST /treasury/recipients/plaid/link-tokenandPOST /treasury/recipients/plaid/exchangeagainst the recipient's invitation token. See recipient-plaid. - Manual entry:
POST /treasury/recipients/{id}/payment-methodswithrouting_number+account_number. The account number is tokenized server-side before persistence.
- Plaid (server, your funding account):
- Active — Usable as a
source_account_id(funding) or as a recipient payment method.GET /treasury/bank-accountslists your funding accounts. - Removed —
DELETE /treasury/bank-accounts/{id}(funding) detaches the account. Existing payouts that already reference it complete normally.
The link endpoint is idempotent on the underlying instrument — re-linking
the same Plaid account returns the existing record instead of duplicating it.
Relationships
Each bank account belongs to either your company (funding) or one
Recipient (payment method). It is referenced by zero-to-many
Payouts (as either source_account_id or destination via the
recipient).
Fields that matter
method_type("ach" | "wire") — which rail this account is reachable on.account_type("checking" | "savings") — required for ACH origination.routing_number(string, 9 digits) — ABA routing number. Validated against the FRB list.account_number_last4(string, 4 digits) — only the last four are retained after tokenization.institution_name,account_name,account_mask— optional display metadata supplied by Plaid for UI presentation.