Entities

Submit Entity Application

Submit a fully prepared business entity for review. Choose the checking account product to open. The application must have everything it needs first (check next_step.can_submit on the onboarding status); otherwise this returns the outstanding requirements. Once submitted, the application moves to review and can no longer be edited. Pass product_features to request additional products alongside the checking account (for example stablecoins for USDC access); they are enabled once the application is approved. Returns the updated onboarding status, including a consent_url: share it with the primary representative so they can review and accept the required agreements, disclosures, and attestations in their browser (no login needed). The same link is also returned on GET /entities/{entity_id} after submission.

post/entities/{entity_id}/submit

Request

Path parameters

entity_idstring required

The entity being onboarded.

Request body

banking_account_product_type'grasshopper' | 'crb' required
product_featuresOnboardingProductFeature[]

Additional products to request for this entity alongside the checking account. stablecoins requests USDC stablecoin access. The primary representative accepts each requested product's terms on the consent_url page; the product is enabled once they have accepted and the application is approved.

Response

Successful Response

entity_idstring uuid required

Public ID of the onboarded business entity, stable across the onboarding lifecycle and matching the entity_id used in the Customer API, MCP, and webhook payloads.

status'pending_document_upload' | 'pending_user_action' | 'submitted' | 'under_review' | 'approved' | 'rejected' required
business_namestring nullable required

Legal business name.

created_atstring date-time required

ISO 8601 date-time in the format YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm] (per IETF RFC 3339).

updated_atstring date-time required

ISO 8601 date-time in the format YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm] (per IETF RFC 3339).

kyc_status'not_started' | 'pending' | 'action_required' | 'approved' | 'rejected' required
onboarding_type'api' | 'smb' | 'mcp' | 'partner' required
consent_urlstring nullable required

Link where the primary representative reviews and accepts the required agreements and disclosures in their browser. Populated once the application has been submitted; share it with the primary representative. The link needs no login and anyone holding it can accept on the business's behalf, so treat it as a secret.

Changes

No recorded changes to this operation across all 1 revision of this API.