Bank Accounts
Create a bank account for a customer or account using a processor token (e.g. from Plaid).
Callable with a secret API key or an onboarding-session client secret (onb_sess_). A client secret always provisions onto its own account: account_id and customer_id are ignored.
export FRAME_API_KEY='sk_sandbox_...'
The Bank Account object
Attributes
checking or savings
{
"id": null,
"object": "bank_account",
"routing_number": null,
"account_number_last_4": null,
"account_type": null,
"bank_name": null,
"processor_name": null,
"status": null,
"customer_id": null,
"account_id": null,
"livemode": false,
"created": 0,
"updated": 0
}
Create bank account
Create a bank account for a customer or account using a processor token (e.g. from Plaid).
Callable with a secret API key or an onboarding-session client secret (onb_sess_). A client secret always provisions onto its own account: account_id and customer_id are ignored.
Body parameters
Processor name (e.g. plaid)
Token from the processor (e.g. Plaid public token)
Customer ID to attach the bank account to (mutually exclusive with account_id)
Account ID to attach the bank account to (mutually exclusive with customer_id)
Returns
Bank account created successfully
curl --request POST \
--url https://api.framepayments.com/v1/bank_accounts \
--header 'Authorization: Bearer API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"processor": "plaid",
"processor_token": null
}'
{
"id": "00000000-0000-4000-8000-000000000001",
"routing_number": "021000021",
"account_number_last_4": "4242",
"account_type": "checking",
"bank_name": null,
"processor_name": "plaid",
"status": "pending",
"object": "bank_account",
"customer_id": "00000000-0000-4000-8000-000000000002",
"account_id": null,
"created": 1745107200,
"updated": 1745107200,
"livemode": false
}
Retrieve bank account
Retrieve a bank account by ID. Scoped to the authenticated merchant's customers and accounts.
Callable with a secret API key or an onboarding-session client secret (onb_sess_). A client secret sees only its own account's bank accounts; anything else returns 404.
Path parameters
Bank account ID
Returns
Bank account retrieved successfully
curl --request GET \
--url https://api.framepayments.com/v1/bank_accounts/a70cd72f-e74a-40f2-96a2-3f60714aac4a \
--header 'Authorization: Bearer API_KEY'
{
"id": "00000000-0000-4000-8000-000000000001",
"routing_number": "021000021",
"account_number_last_4": "4242",
"account_type": "checking",
"bank_name": null,
"processor_name": "plaid",
"status": "pending",
"object": "bank_account",
"customer_id": "00000000-0000-4000-8000-000000000002",
"account_id": null,
"created": 1745107200,
"updated": 1745107200,
"livemode": false
}