> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fintoc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get an onboarding

> Retrieves the onboarding with the given `id` for the entity. Only onboardings belonging to the organization of the API key used are visible. Requesting an onboarding that does not exist or belongs to another organization or entity returns a `404 Not Found` error.

**`v2`** · Base URL `https://api.fintoc.com/v2`


## OpenAPI

````yaml reference/fintoc-api-v2.json GET /entities/{entity_id}/onboardings/{id}
openapi: 3.1.0
info:
  title: fintoc-api-v2
  version: v2026-02-01
servers:
  - url: https://api.fintoc.com/v2
security: []
paths:
  /entities/{entity_id}/onboardings/{id}:
    get:
      tags:
        - Onboardings
      summary: Get an onboarding
      description: >-
        Retrieves the onboarding with the given `id` for the entity. Only
        onboardings belonging to the organization of the API key used are
        visible. Requesting an onboarding that does not exist or belongs to
        another organization or entity returns a `404 Not Found` error.
      operationId: entities-onboardings-get
      parameters:
        - name: entity_id
          in: path
          description: >-
            The unique identifier of the entity (for example
            `ent_8anBwgZktbZH6ydyHa6Tm0eM`).
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: >-
            The unique identifier of the onboarding (for example
            `onbprc_0ujsswThIGTUYm2K8FjOOfXtY1K`).
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            Returns the onboarding object with its current status, reviewed
            data, declared legal representatives and shareholders, and the
            status of every required document slot.
          content:
            application/json:
              examples:
                onboarding:
                  value:
                    id: onbprc_0ujsswThIGTUYm2K8FjOOfXtY1K
                    object: onboarding
                    entity_id: ent_8anBwgZktbZH6ydyHa6Tm0eM
                    status: in_progress
                    source: api
                    submitted_at: null
                    reviewed_at: null
                    submittable: false
                    data:
                      company_information:
                        incorporation_date: '2020-01-15T00:00:00.000Z'
                        business_activity: Servicios financieros
                        fiscal_address: Av. Reforma 123, CDMX
                        business_address: Av. Insurgentes 456, CDMX
                        settlement_account: '000000000000000000'
                        phone: '+521111111111'
                      transactional_profile:
                        resource_origins:
                          - trusts
                          - investments
                        monthly_amount_range: '1_500000'
                        monthly_operations_range: '1_15000'
                        declaration_accepted: true
                    legal_representatives:
                      - id: onblr_0ujsswThIGTUYm2K8FjOOfXtY1K
                        object: onboarding_legal_representative
                        first_name: Test Customer 1
                        last_name: Customer
                        email: rep@example.com
                        nationality: mx
                        identification_number: AAAA010101HDFAAA01
                        position: Director General
                        documents:
                          - slot_key: identification
                            status: missing
                          - slot_key: power_of_attorney
                            status: missing
                    shareholders:
                      - id: onbsh_0ujsswThIGTUYm2K8FjOOfXtY1K
                        object: onboarding_shareholder
                        type: natural_person
                        name: Test Customer 2
                        last_name: Customer
                        percentage: 60
                        holder_id: AAAA010101AAA
                        parent_id: null
                        document:
                          slot_key: identification
                          status: missing
                      - id: onbsh_8anBwgZktbZH6ydyHa6Tm0eM
                        object: onboarding_shareholder
                        type: legal_entity
                        name: Acme SA
                        percentage: 40
                        holder_id: AAA010101AAA
                        parent_id: null
                        document:
                          slot_key: articles_of_incorporation
                          status: missing
                      - id: onbsh_9bnCxhAlucAI7zezIb7Un1fN
                        object: onboarding_shareholder
                        type: natural_person
                        name: Test Customer 3
                        last_name: Customer
                        percentage: 80
                        holder_id: AAAA010101AAA
                        parent_id: onbsh_8anBwgZktbZH6ydyHa6Tm0eM
                        document:
                          slot_key: identification
                          status: missing
                    documents:
                      - slot_key: tax_registration_certificate
                        status: missing
                      - slot_key: settlement_bank_statement
                        status: missing
                      - slot_key: proof_of_address
                        status: missing
                      - slot_key: shareholder_structure
                        status: missing
                      - slot_key: articles_of_incorporation
                        status: missing
              schema:
                $ref: '#/components/schemas/onboarding'
        '401':
          description: Invalid or missing API key.
          content:
            application/json:
              examples:
                invalid_api_key:
                  value:
                    error:
                      type: authentication_error
                      code: invalid_api_key
                      message: 'Invalid API Key: invalid-*oken'
              schema:
                $ref: '#/components/schemas/error_object'
        '404':
          description: >-
            The onboarding does not exist, or belongs to another organization or
            entity.
          content:
            application/json:
              examples:
                onboarding_not_found:
                  value:
                    error:
                      type: invalid_request_error
                      code: missing_resource
                      param: id
                      message: 'No such onboarding: onbprc_0ujsswThIGTUYm2K8FjOOfXtY1K'
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/error_object'
      security:
        - api_key: []
components:
  schemas:
    onboarding:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the onboarding.
          example: onbprc_0ujsswThIGTUYm2K8FjOOfXtY1K
        object:
          const: onboarding
          description: Type of the object. Always `onboarding`.
        data:
          type: object
          description: >-
            Reviewed data for the onboarding, grouped by type. Onboardings
            created through the API include `company_information` and
            `transactional_profile`. Fintoc sets `declaration_accepted` to
            `true` on creation and returns `incorporation_date` as an ISO 8601
            datetime in UTC.
          example:
            company_information:
              incorporation_date: '2020-01-15T00:00:00.000Z'
              business_activity: Servicios financieros
              fiscal_address: Av. Reforma 123, CDMX
              business_address: Av. Insurgentes 456, CDMX
              settlement_account: '000000000000000000'
              phone: '+521111111111'
            transactional_profile:
              resource_origins:
                - trusts
                - investments
              monthly_amount_range: '1_500000'
              monthly_operations_range: '1_15000'
              declaration_accepted: true
        documents:
          type: array
          description: Document slots for the onboarding, with their upload status.
          items:
            $ref: '#/components/schemas/onboarding_document'
        entity_id:
          type:
            - string
            - 'null'
          description: >-
            Identifier of the entity this onboarding belongs to. `null` if not
            associated with an entity.
          example: ent_8anBwgZktbZH6ydyHa6Tm0eM
        legal_representatives:
          type: array
          description: Legal representatives declared for the entity.
          items:
            $ref: '#/components/schemas/onboarding_legal_representative'
        reviewed_at:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            ISO 8601 datetime, in UTC, of when the onboarding was reviewed.
            `null` until it is reviewed.
          example: '2026-01-16T09:00:00Z'
        shareholders:
          type: array
          description: Shareholders declared for the entity.
          items:
            $ref: '#/components/schemas/onboarding_shareholder'
        source:
          type: string
          enum:
            - api
            - dashboard
          description: >-
            Channel the onboarding is being completed through. One of `api` or
            `dashboard`.
          example: api
        status:
          type: string
          enum:
            - pending
            - in_progress
            - submitted
            - approved
            - rejected
            - cancelled
          description: >-
            Current status of the onboarding. One of `pending`, `in_progress`,
            `submitted`, `approved`, `rejected` or `cancelled`.
          example: pending
        submittable:
          type: boolean
          description: >-
            Whether the onboarding has every required field and document
            completed and can be submitted for review.
          example: false
        submitted_at:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            ISO 8601 datetime, in UTC, of when the onboarding was submitted for
            review. `null` until it is submitted.
          example: '2026-01-15T14:30:00Z'
      required:
        - id
        - object
        - entity_id
        - status
        - source
        - submitted_at
        - reviewed_at
        - submittable
        - data
        - legal_representatives
        - shareholders
        - documents
    error_object:
      type: object
      properties:
        error:
          type: object
          description: Details of the error that caused the request to fail.
          properties:
            code:
              type: string
              description: >-
                Machine-readable code identifying the specific error, for
                example `invalid_api_key`. Not returned by every error.
              example: invalid_api_key
            doc_url:
              type: string
              description: >-
                URL of a documentation page with more details about the error.
                Not returned by every error.
              example: https://docs.fintoc.com/reference/errors
            message:
              type: string
              description: Human-readable message describing the error.
              example: 'Invalid API Key: invalid-*oken'
            param:
              type:
                - string
                - 'null'
              description: >-
                Name of the request parameter that caused the error. `null` when
                the error cannot be tied to a single parameter, and not returned
                by every error.
              example: amount
            type:
              type: string
              description: >-
                Category of the error, for example `invalid_request_error`,
                `authentication_error`, or `api_error`.
              example: invalid_request_error
          required:
            - type
            - message
    onboarding_document:
      type: object
      properties:
        filename:
          type: string
          description: >-
            Original filename of the uploaded document. Only present when
            `status` is `uploaded`.
          example: csf.pdf
        slot_key:
          type: string
          description: Key identifying the document slot.
          example: tax_registration_certificate
        status:
          type: string
          enum:
            - uploaded
            - missing
          description: Whether the slot has a document. One of `uploaded` or `missing`.
          example: uploaded
        uploaded_at:
          type: string
          format: date-time
          description: >-
            ISO 8601 datetime, in UTC, of when the document was uploaded. Only
            present when `status` is `uploaded`.
          example: '2026-01-15T14:30:00Z'
      required:
        - slot_key
        - status
    onboarding_legal_representative:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the legal representative.
          example: onblr_0ujsswThIGTUYm2K8FjOOfXtY1K
        object:
          const: onboarding_legal_representative
          description: Type of the object. Always `onboarding_legal_representative`.
        documents:
          type: array
          description: >-
            Identification and power of attorney document slots for the
            representative, with their upload status.
          items:
            $ref: '#/components/schemas/onboarding_document'
        email:
          type: string
          description: Email address of the legal representative. Must use RFC 5322 format.
          example: rep@example.com
        first_name:
          type: string
          description: First name of the legal representative.
          example: Test Customer 1
        identification_number:
          type: string
          description: >-
            Mexican Unique Population Registry Code (CURP) of the legal
            representative. Must be 18 characters.
          example: AAAA010101HDFAAA01
        last_name:
          type: string
          description: Last name of the legal representative.
          example: Customer
        nationality:
          type: string
          description: Nationality as a two-letter ISO 3166-1 alpha-2 country code.
          example: mx
        position:
          type: string
          description: Position held in the company.
          example: Director General
      required:
        - id
        - object
        - first_name
        - last_name
        - email
        - nationality
        - identification_number
        - position
        - documents
    onboarding_shareholder:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the shareholder.
          example: onbsh_0ujsswThIGTUYm2K8FjOOfXtY1K
        object:
          const: onboarding_shareholder
          description: Type of the object. Always `onboarding_shareholder`.
        document:
          $ref: '#/components/schemas/onboarding_document'
        holder_id:
          type:
            - string
            - 'null'
          description: Mexican tax ID (RFC) of the shareholder. `null` if not provided.
          example: AAAA010101AAA
        last_name:
          type: string
          description: Last name. Only present when `type` is `natural_person`.
          example: Customer
        name:
          type: string
          description: Given name of a natural person, or business name of a legal entity.
          example: Test Customer 1
        parent_id:
          type:
            - string
            - 'null'
          description: >-
            Identifier of the parent shareholder when nested. `null` for root
            shareholders.
          example: onbsh_8anBwgZktbZH6ydyHa6Tm0eM
        percentage:
          type: number
          description: Participation percentage held by the shareholder.
          example: 40
        type:
          type: string
          enum:
            - natural_person
            - legal_entity
          description: Type of shareholder. One of `natural_person` or `legal_entity`.
          example: natural_person
      required:
        - id
        - object
        - type
        - name
        - percentage
        - holder_id
        - parent_id
        - document
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header

````