Docs · Reference
Accounts
The business’s accounts and their balances. Numbers are masked to the last 4 digits.
List the accounts of the business your key is bound to
GET/v1/accounts
One checking account per business today; the response is a list so it can grow. Account and routing numbers are masked to the last 4 digits. Balances are signed: a negative balance means the account is overdrawn. Balances may lag by an unknown interval, and no as_of time is returned yet. If part of the answer can't be loaded, you get a 503 with Retry-After, never a partial 200.
Authentication
Bearer token whose client has the scope accounts:read
Response · a list of Account
dataThe page of results
Each item in data:
idrequiredThe account's id
nameMasked account name
typerequiredAccount type
statusrequiredAccount status
account_number_last4requiredLast 4 digits of the account number
routing_number_last4requiredLast 4 digits of the routing number
freeze_typeSet when the account is restricted. Omitted otherwise
balancerequiredThe account's balances
availablerequiredAvailable balance
amountrequiredDecimal string with two places. Negative when the account is overdrawn
currencyrequiredAlways USD
currentrequiredCurrent balance
amountrequiredDecimal string with two places. Negative when the account is overdrawn
currencyrequiredAlways USD
spendablerequiredAvailable balance minus reserved funds
amountrequiredDecimal string with two places. Negative when the account is overdrawn
currencyrequiredAlways USD
as_ofTime of the last balance change. Not returned yet
opened_atDate the account was opened
Responses
200OK401The token is missing, expired or unknown, or the client was revoked or switched off403The client lacks the scope, the owner's standing changed, or the API isn't enabled for this business429Too many requests. Wait for Retry-After500Something failed unexpectedly on Novo's side. Not retryable: quote request_id to support503Something the answer depends on is unavailable. Retry after Retry-After
curl "https://$NOVO_API_HOST/v1/accounts" \
-H "Authorization: Bearer $ACCESS_TOKEN"{
"data": [
{
"id": "acct_example_01",
"name": "xxxxxx1234",
"type": "EXAMPLE_TYPE",
"status": "EXAMPLE_STATUS",
"account_number_last4": "1234",
"routing_number_last4": "5678",
"balance": {
"available": {
"amount": "1250.00",
"currency": "USD"
},
"current": {
"amount": "1300.00",
"currency": "USD"
},
"spendable": {
"amount": "1150.00",
"currency": "USD"
}
},
"opened_at": "2024-03-14"
}
]
}Get one account
GET/v1/accounts/{account_id}
The same account object as in the list.
Authentication
Bearer token whose client has the scope accounts:read
Parameters
account_idrequiredThe account's id
Response · Account
idrequiredThe account's id
nameMasked account name
typerequiredAccount type
statusrequiredAccount status
account_number_last4requiredLast 4 digits of the account number
routing_number_last4requiredLast 4 digits of the routing number
freeze_typeSet when the account is restricted. Omitted otherwise
balancerequiredThe account's balances
availablerequiredAvailable balance
amountrequiredDecimal string with two places. Negative when the account is overdrawn
currencyrequiredAlways USD
currentrequiredCurrent balance
amountrequiredDecimal string with two places. Negative when the account is overdrawn
currencyrequiredAlways USD
spendablerequiredAvailable balance minus reserved funds
amountrequiredDecimal string with two places. Negative when the account is overdrawn
currencyrequiredAlways USD
as_ofTime of the last balance change. Not returned yet
opened_atDate the account was opened
Responses
200OK401The token is missing, expired or unknown, or the client was revoked or switched off403The client lacks the scope, the owner's standing changed, or the API isn't enabled for this business404Nothing with that id in the bound business429Too many requests. Wait for Retry-After500Something failed unexpectedly on Novo's side. Not retryable: quote request_id to support503Something the answer depends on is unavailable. Retry after Retry-After
curl "https://$NOVO_API_HOST/v1/accounts/acct_example_01" \
-H "Authorization: Bearer $ACCESS_TOKEN"{
"id": "acct_example_01",
"name": "xxxxxx1234",
"type": "EXAMPLE_TYPE",
"status": "EXAMPLE_STATUS",
"account_number_last4": "1234",
"routing_number_last4": "5678",
"balance": {
"available": {
"amount": "1250.00",
"currency": "USD"
},
"current": {
"amount": "1300.00",
"currency": "USD"
},
"spendable": {
"amount": "1150.00",
"currency": "USD"
}
},
"opened_at": "2024-03-14"
}Planned for accounts
- Change account details
Not available yet, and no endpoints are published for it. They’ll appear here once the contract defines them. Anything marked “needs your approval” waits for the account owner to approve it on their phone, every time. Tell us what you need first when you ask for a seat.