Skip to navigation

Submit Applicant

View as Markdown

Submit applicant details for a customer application.

Available to: All authenticated users

Environments: Live

Rate Limit: No endpoint-specific limit

Submit the applicant’s personal, financial, and regulatory details for a customer application. Call this after starting the application with startCustomerApplication, using the returned application id as customerApplicationId.

Provide at least one applicant object matching the application’s legal status:

  • individual — for Individual and IRA applications
  • jointApplicant — for the second applicant on Joint applications
  • corporate — for entity applications (Corporation, LLC, LLP, LP, PTR, Trust)

The request is rejected if all three applicant objects are empty. Only the primary applicant’s login can submit or change applicant details.

Set dryRun to save the applicant details without finalizing the submission — useful for persisting progress while the applicant is still filling out the application.

A successful response returns the created applicant record ID (individualApplicantId or corporateApplicantId). The response can also include duplicateMetadata — if duplicateFound is true, the details matched an existing application or account, and the metadata references the conflicting customerApplicationId or accountId.

Business Rules

The submission is rejected when:

  • The applicant selects the Hedger margin type — only Speculator accounts are supported.
  • The applicant reports a previous bankruptcy filing (debtorInBankruptcy).
  • The applicant is under 18 years old, or birthDate is missing for an individual applicant.
  • The applicant’s country does not match the user’s country of residence (applies to applications in certain jurisdictions).

Common Failure Scenarios

  • customerApplicationId does not reference an existing application.
  • All of individual, jointApplicant, and corporate are empty.
  • The caller is not the primary applicant on the application.
  • The caller belongs to a reliance-agreement organization and cannot sign on behalf of customers.

Error Messages

errorTextTrigger
"Thank you for your interest in opening an account. Unfortunately, we do not support Hedgers. Please choose Speculator to continue your application."The applicant’s marginType is Hedger.
"Thank you for your interest in opening an account. Unfortunately, we have a policy to not open accounts for clients that have had a previous Bankruptcy filing. If you have further questions, please contact our compliance department."The applicant reports debtorInBankruptcy.
"Please specify birth date"individual is provided without a parseable birthDate.
"Thank you for your interest in opening an account, however, the minimum age to open an account is 18."The applicant’s birthDate is less than 18 years ago.
"Country must match your country of residence. Start a new application and select your correct country of residence."The individual applicant’s country conflicts with the user’s country of residence.
"Applicant info cannot be changed after signing by primary applicant"The caller’s session is not the primary applicant’s session.
"This operation should be performed by your organization"The caller’s organization has a reliance agreement, and the caller cannot sign on behalf of customers.

Next Steps

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Request

This endpoint expects an object.
customerApplicationIdlongRequired
individualobjectOptional
jointApplicantobjectOptional
corporateobjectOptional
dryRunbooleanOptional
ecbsvAuthorizedbooleanOptional

Response

ApplicantResponse
errorTextstringOptional<=8192 characters

Non-empty if the request failed

individualApplicantIdlongOptional
corporateApplicantIdlongOptional
duplicateMetadataobjectOptional
ecbsvAuthorizedbooleanOptional