Entity that can own Account objects after approval, without using the dashboard.
This flow is for platforms that create an Entity for each client, such as marketplaces or wallets that hold balances under each client’s legal name. To create Account objects under your own root Entity, see Create more accounts instead.
AvailabilityOnboarding by API supports Mexican
Entity objects. For entities outside Mexico, create the Entity from the dashboard.Before you start
You need a test secret key (sk_test_...). Find the key in the dashboard under Developers → API Keys. Run the whole flow in test mode first, then switch to your live key.
Step 1: Create the entity
AnEntity is the legal account holder. Create one for your client with their legal name and Mexican tax ID (RFC). Set country_code to mx, and set holder_id to the client’s RFC.
Response
Entity ID (ent_...); every onboarding call uses this value. See The Entity object for the full attribute list.
Step 2: Create the onboarding
TheOnboarding holds the Know Your Customer review for one Entity. The review includes company information, the legal representative, the transactional profile, and the shareholders. Create one onboarding per Entity and pass the structured data in the request.
Response
submittableisfalseuntil every required field and document is in place.documentslists each company document slot and itsstatus, eithermissingoruploaded. Read this array to identify outstanding documents.- Each shareholder has a
documentslot. Alegal_entityshareholder can include nestedchildren.
identification_number is a Mexican Unique Population Registry Code (CURP). The settlement_account is an 18-digit standardized Mexican bank account number (CLABE). See The Onboarding object for every field.
Step 3: Upload the company documents
Upload one file to each company document slot in thedocuments array. Send the file as multipart/form-data in the file field. Each file must be a PDF, JPEG, or PNG. The maximum file size is 20 MB. Uploading to a slot that already has a file replaces the existing file.
Response
settlement_bank_statement, proof_of_address, representative_identification, representative_power_of_attorney, and shareholder_structure.
Step 4: Upload each shareholder’s document
Each declared shareholder needs a document. Use the shareholderid (onbsh_...) from the Step 2 response. Upload identification for a natural_person shareholder. Upload articles_of_incorporation for a legal_entity shareholder. The file rules match Step 3.
Response
Step 5: Submit for review
Oncesubmittable is true, submit the onboarding for Fintoc to review. The onboarding must be in_progress and include every required field and document. After submission, the onboarding moves to submitted and can no longer be modified.
Response
in_progress, the call returns a 422 Unprocessable Entity error.
Step 6: Track the review
An onboarding moves throughpending, in_progress, submitted, and then approved, rejected, or cancelled. Fintoc sends one of these webhook events when it approves or rejects the onboarding:
Subscribe to these events in the dashboard under Developers → Webhooks, or poll the onboarding directly:
Response
status to track the onboarding. Once status is approved, the Entity is ready to transact.
Step 7: Create accounts once approved
After theEntity is approved, create one or more Account objects under the Entity. Pass the Entity ID as entity_id. Each Account has its own balance and root account number. Outbound transfer receipts show the client’s legal name. See Create more accounts for account creation details.
Response
Test the integration
Intest mode, run the full sequence above with your sk_test_... key. Create the Entity and onboarding, upload a sample file to every slot, and submit the onboarding. Confirm that submittable turns true only after every slot reports uploaded. Confirm that the onboarding reaches submitted, then track the review result as described in Step 6.
What’s next
- Create more accounts for an approved
Entity. - Review The Onboarding object and the onboarding endpoints in the API reference.