user_account_id.
The bank accounts your program runs on, such as your FBO and operating accounts, are core accounts and are documented under Core Account.
The creation of a user account for your end-user first happens in your system, and the user account record is how you communicate the terms of the product offered to your end-user to Lead. See Executing vs. Reporting.
The User Accounts API is currently in preview with a planned beta release in December 2026. Preview APIs are not yet available in sandbox or production and can change before beta. Use these pages to plan an integration, not to build one. Once released in beta, it will be available to all partners in sandbox, and in production for select programs. Beta APIs may change without a version increment, and changes will be announced in advance. See Versioning and backwards compatibility.
Features
Every user account has one or more features that tell Lead how the user account is going to be used:deposit, credit_with_underwriting, or credit_without_underwriting. You ask for them in requested_features when you create the user account, and the user account returns them as features.
- If you intend to create User Deposit Balances under the user account, the
depositfeature must be requested. - If you intend to create User Credit Balances under the user account and your product has an explicit underwriting process where the end-user can be rejected (e.g., a business loan, a personal credit card), then request
credit_with_underwriting. - If you intend to create User Credit Balances under the user account and your product does not have an explicit underwriting process where the end-user can be rejected (e.g., courtesy overdraft), then request
credit_without_underwriting.
Product config and balance sheet model
Two fields are new on the user account:product_config_idis required on every create request. It identifies the product configuration your Lead team set up for your program. Your Technical Account Manager gives you the ID. You cannot change it after creation.balance_sheet_modelis required when the user account has a credit feature:held_for_investmentorheld_for_sale. Lead checks it against the models your program allows. It isnullon deposit-only user accounts.
Who holds a user account
Each user account lists its account holders, authorized signers, and authorized users by entity ID. Lead derivesaccount_holder_type from the holders: consumer for individuals, commercial for businesses and sole proprietors. Commercial user accounts need at least one authorized signer. The User Account Object page documents more on this in the entities block.
Where it fits in onboarding
A user account can be created after its entities exist. For underwritten credit products, it can be created after the application is approved. Before your firstPOST request, get your product_config_id from your Technical Account Manager. Every POST request requires it. You cannot look it up through the API for now, but a Product Configuration API is planned. Here is the typical path you’ll follow:
1
Entity API
Create an entity for each account holder, authorized signer, and authorized user of a product that you are creating. Successful
POSTs return an entity_id.2
Applications API
For underwritten credit products only. Report the final underwriting decision to inform Lead of the outcome. Successful
POSTs return an application_id.3
User Accounts API
Create the user account. Reference the entity IDs, plus the
application_id if the user account you are creating has the credit_with_underwriting feature.How user accounts relate to the rest of the model
- Entities. Every person or business on the user account is an entity. Create entities first before attempting to create a user account.
- Applications. A user account with the
credit_with_underwritingfeature requires an approved application. - User credit balances. User credit balances sit beneath the user account and reference a
user_account_id. - User deposit balances. User deposit balances sit beneath the user account and reference a
user_account_id. - Cards. Cards reference the user account by
user_account_id.
What you can do
POST /v2/user_accounts: Create a user account.GET /v2/user_accounts/{id}: Retrieve a user account.GET /v2/user_accounts?client_account_id={client_account_id}: Retrieve a user account by theclient_account_idyou assigned in an Account file. Use this to find theuser_account_idfor user accounts you created through Account files if you are moving to the API from files.PATCH /v2/user_accounts/{id}: Update a set of allowable fields.POST /v2/user_accounts/{id}/activate: Update the status of a user account toactive.POST /v2/user_accounts/{id}/deactivate: Update the status of a user account toinactive.POST /v2/user_accounts/{id}/close: Close a user account.GET /v2/user_accounts/{id}/entity_relationships: List the entities linked to a user account and their relationship types.POST /v2/user_accounts/{id}/entity_relationships/batch: Add entities to a user account.DELETE /v2/user_accounts/{id}/entity_relationships/{entity_id}: Remove an entity from a user account.
Authentication
user_account/read_writefor create, update, status changes, and adding or removing entities. Also grants read access.user_account/readfor theGETendpoints only. Use it when your integration only needs to read user accounts.
What you cannot do
- Mix old and new objects. User Accounts are designed to be adopted together with User Credit Balances, and with User Deposit Balances and Cards once they are available. Your Lead team will coordinate your move.
- Remove a feature. Features only grow. If a user account was opened with the wrong feature, close it and open a new one.
- Change
product_config_idorbalance_sheet_model. Both are set at creation. Lead may updatebalance_sheet_modelif required by the terms of your program. - Change status with
PATCH. Use the activate, deactivate, and close endpoints. See User Account Statuses. - Subscribe to User Account webhooks. There are no User Account webhook events. Your system sets every status, so read the User Account with
GETwhen you need it.

