Skip to main content

Bank Accounts API Reference Beta

These endpoints let you retrieve bank account information for a consumer and collect ACH payment details for credential-less verification. When ACH details and transaction history are retrieved together during the initial connection, customers can generate multiple reports across our product offerings later without another step from the consumer.

Where to configure

To enable and configure functionality, please contact your Nova Credit Representative. Our support team will assist you in setting up the necessary configurations to use this functionality.

Authentication

All requests require a bearer token to be obtained by exchanging your client credentials. Use the same authentication flow as other Nova Endpoints.

Endpoints

Our API host is api.novacredit.com. (See Quickstart Guide for environment information.)

EndpointDescription
GET /connect/consumers/:consumer_id/bank-accountsRetrieves bank accounts for a consumer
GET /connect/consumers/:consumer_id/bank-accounts/:bank_account_id/ach-detailsRetrieves ACH details for a bank account

List Bank Accounts

Endpoint: GET /connect/consumers/:consumer_id/bank-accounts

This API is used to retrieve connected bank accounts for a consumer.

Path Params

ParamTypeRequiredDescription
Consumer IDString (UUID)TrueThe unique ID for the consumer

Response

Example
{
"accounts": [
{
"account_id": "550e8400-e29b-41d4-a716-446655440000",
"institution_name": "Chase",
"truncated_account_number": "****1234",
"owner_full_name": "John Doe",
"account_name": "Primary Checking",
"account_type": "CASH_EQUIVALENT",
"date_opened": "2020-03-15T00:00:00Z",
"routing_number": null,
"full_account_number": null
}
]
}
Accounts []
FieldFormatNotes
account_idString (UUID)The identifier for the account
institution_nameStringName of the institution providing the account. Example: "Chase", "Bank of America".
truncated_account_numberString | NullAccount display number
owner_full_nameStringLegal name on the bank account.
account_nameStringConsumer-defined name (e.g., "Main Checking").
account_typeEnumSee account types
date_openedISO 8601 | NullThe date the account was originally opened.
full_account_numberString | NullThe full account number or tokenized account number TAN of the selected bank account
routing_numberString | NullThe routing number from the selected bank account.
account_type

Values of the account_type field.

Note: We only support CASH_EQUIVALENT account types as these are Demand Deposit Accounts (DDA)

Value
CASH_EQUIVALENT
Errors
CodeTextDescription
400BAD_REQUESTInvalid request parameters
403FORBIDDENThe client_id and secret_key combination is not recognized. Please email support via support@novacredit.com
404NOT_FOUNDResource not found

Get ACH Details

Endpoint: GET /connect/consumers/:consumer_id/bank-accounts/:bank_account_id/ach-details

Use this endpoint to retrieve ACH payment details (routing number and full account number) for a specific bank account.

Note: ACH details are cached after first retrieval

Path Params

ParamTypeRequiredDescription
Consumer IDString (UUID)TrueThe unique ID for the consumer
Bank Account IDString (UUID)TrueThe unique ID for a bank account

Response

Example
{
"full_account_number": "1234567890",
"routing_number": "021000021"
}

ACH Details

FieldFormatNotes
full_account_numberStringThe full account number or tokenized account number TAN of the selected bank account
routing_numberStringThe routing number from the selected bank account.
Errors
CodeTextDescription
400BAD_REQUESTInvalid request parameters
403FORBIDDENThe client_id and secret_key combination is not recognized. Please email support via support@novacredit.com
403CONSENT_NOT_PROVIDEDConsumer has revoked consent
404NOT_FOUNDResource not found

Tokenized Account Numbers

Some financial institutions (e.g., Chase, PNC, and US Bank) return Tokenized Account Numbers (TANs) instead of the consumer’s actual account number. A TAN is a bank-issued substitute that can be used for ACH and other operations while keeping the real account number hidden.

TANs can be revoked if the consumer withdraws consent at the bank or if fraud is detected so your application should treat any account identifier as potentially revocable and handle cases where a previously successful TAN is no longer valid during a payment attempt.

Data Persistence

Connection Lifetime

To support long-lived TANs, connections may be maintained beyond the standard 14-day period.

Changelog

March 2026

  • Added documentation for v1 of Bank Accounts API