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

# user_onboarded

> Disparado quando o onboarding do usuário é concluído.

**Quando ocorre:**
- Envio de documentos de verificação (KYC)
- Conclusão do processo de onboarding

**Observação:** O formato do payload varia conforme o tipo do usuário:
- **Pessoa Física (person):** inclui `cpf`, `birth`, documentos pessoais
- **Pessoa Jurídica (company):** inclui `cnpj`, `social_name`, contrato social




## OpenAPI

````yaml /api-reference/openapi.yaml post /webhook-events/user_onboarded
openapi: 3.0.3
info:
  title: Nexus
  version: 1.0.2
  description: >
    API para integração entre Ticto e clientes externos


    # Autenticação


    Para autenticar as solicitações aos endpoints descritos a seguir, por favor,
    siga os passos abaixo:


    1. **Solicite** seu cadastro como cliente através do e-mail
    **infraestrutura@ticto.com.br** para obter seu `client_id` e `token`.

    2. **Use** seu token e ID de cliente para fazer login no Nexus e obter seu
    `client_token`.

    3. **Em todas as outras requisições**, envie seu `client_token` no header
    como `X-Api-Client-Token`.

    4. **Crie** seus usuários na rota de criação de usuário. Para cada usuário,
    será retornado um `public_token` único.

    5. **Para endpoints que não estão em public.php**, adicione o `public_token`
    do usuário no cabeçalho **Authorization** utilizando o formato:

       ```http
       Authorization: Bearer {public_token}
       ```

    ## Restrição de origem


    O acesso a esta API não está disponível para todos os sellers. Seu uso é
    estritamente permitido para parceiros comerciais que a utilizarão em
    cenários específicos. Por este motivo, o acesso será restrito a endereços IP
    e domínios previamente informados por esses parceiros. Essa medida visa
    proporcionar um ambiente mais controlado e seguro para todos os nossos
    usuários e parceiros.


    ### O que isso significa para os desenvolvedores?


    - **Acesso Limitado:**
      Somente os IPs e domínios pré-autorizados poderão realizar chamadas à API. Qualquer tentativa de acesso de um IP ou domínio não listado será automaticamente rejeitada.

    - **Processo de Autorização:**
      Para garantir a continuidade do acesso à API sem interrupções, é essencial que os desenvolvedores enviem os endereços IP ou domínios que necessitam de acesso diretamente à nossa equipe de suporte.

    - **Como Solicitar Acesso:**
      Envie um e-mail para **liberacao@ticto.com.br** com o assunto _"Solicitação de Acesso à API de pagamentos"_, incluindo:
      - Nome da empresa ou do desenvolvedor
      - Endereços IP ou domínios a serem autorizados
      - Justificativa para o acesso
      - Informações de contato para eventuais esclarecimentos

    ## Alterações e/ou inclusão de novos domínios e IPs


    Recomendamos que solicitações de adição ou alteração de IPs/domínios sejam
    feitas o mais breve possível para garantir uma transição suave. Em casos de
    alterações, os domínios e/ou IPs anteriores serão imediatamente bloqueados
    após sua remoção.


    ## Suporte e Dúvidas


    Para dúvidas ou suporte adicional, entre em contato conosco através do
    e-mail **liberacao@ticto.com.br**. Estamos comprometidos em auxiliar neste
    processo e garantir a melhor experiência possível.
servers:
  - url: https://nexus.ticto.com.br/api/v1
    description: Produção
security: []
tags:
  - name: Autenticação
  - name: Configurações do Cliente
  - name: Usuários
  - name: Onboarding de usuário
  - name: Contas Bancárias
  - name: Faixas de Taxa
    description: >-
      Endpoints para consulta de faixas de taxa personalizadas e histórico de
      alterações.
  - name: Frete
  - name: Financeiro
  - name: PIX Automático
    description: >-
      Consulta, cancelamento e nova tentativa de cobrança de assinaturas com PIX
      Automático (débito recorrente autorizado pelo pagador).
  - name: Produtos
  - name: Integrações
  - name: 'Webhooks: Usuários'
    description: Eventos relacionados a cadastro e atualização de usuários.
  - name: 'Webhooks: Contas Bancárias'
    description: Eventos relacionados a contas bancárias dos sellers.
  - name: 'Webhooks: Produtos e Ofertas'
    description: Eventos relacionados a produtos, ofertas, afiliados e coprodutores.
  - name: 'Webhooks: Financeiro'
    description: Eventos de reembolso, saque e antecipação.
  - name: 'Webhooks: Faixas de Taxa'
    description: Eventos de criação, atualização e exclusão de faixas de taxa.
  - name: 'Webhooks: Pedidos'
    description: Eventos de criação e atualização de pedidos.
  - name: 'Webhooks: Cobranças'
    description: >-
      Eventos de criação e mudança de status de cobranças (transações), na
      primeira compra e nas renovações.
  - name: 'Webhooks: Assinaturas'
    description: Eventos do ciclo de vida de assinaturas, cobranças e trial.
paths:
  /webhook-events/user_onboarded:
    post:
      tags:
        - 'Webhooks: Usuários'
      summary: user_onboarded
      description: >
        Disparado quando o onboarding do usuário é concluído.


        **Quando ocorre:**

        - Envio de documentos de verificação (KYC)

        - Conclusão do processo de onboarding


        **Observação:** O formato do payload varia conforme o tipo do usuário:

        - **Pessoa Física (person):** inclui `cpf`, `birth`, documentos pessoais

        - **Pessoa Jurídica (company):** inclui `cnpj`, `social_name`, contrato
        social
      operationId: webhookUserOnboarded
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
                - $ref: '#/components/schemas/WebhookEnvelope'
                - type: object
                  properties:
                    payload:
                      $ref: '#/components/schemas/WebhookUserOnboardedPayload'
            examples:
              pessoaFisica:
                summary: Pessoa Física
                value:
                  event: user_onboarded
                  endpoint: https://api.meusite.com/webhook/nexus
                  payload:
                    name: João da Silva
                    type: person
                    cpf: '12345678909'
                    birth: '1990-05-15'
                    is_emancipated: false
                    emancipated_document: null
                    selfie_photo: https://storage.example.com/docs/selfie.jpg
                    document_front: https://storage.example.com/docs/doc_front.jpg
                    document_back: https://storage.example.com/docs/doc_back.jpg
                  metadata:
                    origin: nexus
                    request_id: 67be1a2f3c4d5
                    correlation_id: null
                  created_at: '2026-02-25T10:00:00.000000Z'
                  updated_at: '2026-02-25T10:00:00.000000Z'
              pessoaJuridica:
                summary: Pessoa Jurídica
                value:
                  event: user_onboarded
                  endpoint: https://api.meusite.com/webhook/nexus
                  payload:
                    name: Empresa ABC Ltda
                    type: company
                    cnpj: '12345678000199'
                    social_name: ABC Comércio e Serviços Ltda
                    social_contract: https://storage.example.com/docs/contrato.pdf
                    company_partner:
                      name: Maria Santos
                      cpf: '98765432100'
                      birth: '1985-03-20'
                    selfie_photo: https://storage.example.com/docs/selfie.jpg
                    document_front: https://storage.example.com/docs/doc_front.jpg
                    document_back: https://storage.example.com/docs/doc_back.jpg
                  metadata:
                    origin: nexus
                    request_id: 67be1a2f3c4d5
                    correlation_id: null
                  created_at: '2026-02-25T10:00:00.000000Z'
                  updated_at: '2026-02-25T10:00:00.000000Z'
      responses:
        '200':
          description: Webhook recebido com sucesso
components:
  schemas:
    WebhookEnvelope:
      type: object
      description: |
        Envelope padrão de todos os webhooks enviados pelo Nexus.
        O campo `payload` varia conforme o evento.
      required:
        - event
        - endpoint
        - payload
        - metadata
        - created_at
        - updated_at
      properties:
        event:
          type: string
          description: Nome do evento disparado
          example: user_updated
        endpoint:
          type: string
          format: url
          description: URL do webhook configurada pelo cliente
          example: https://api.meusite.com/webhook/nexus
        payload:
          type: object
          description: Dados específicos do evento (varia por evento)
        metadata:
          $ref: '#/components/schemas/WebhookMetadata'
        created_at:
          type: string
          format: date-time
          description: Data de criação do webhook (ISO 8601)
          example: '2026-02-25T10:00:00.000000Z'
        updated_at:
          type: string
          format: date-time
          description: Data de atualização do webhook (ISO 8601)
          example: '2026-02-25T10:00:00.000000Z'
    WebhookUserOnboardedPayload:
      type: object
      description: |
        Payload do evento `user_onboarded`.
        Disparado quando o onboarding do usuário é concluído.
        O formato varia conforme o tipo: `person` ou `company`.
      required:
        - name
        - type
      properties:
        name:
          type: string
          description: Nome do usuário
          example: João da Silva
        type:
          type: string
          enum:
            - person
            - company
          example: person
          description: Tipo do usuário
        cpf:
          type: string
          nullable: true
          description: CPF (apenas quando type = person)
          example: '12345678909'
        birth:
          type: string
          nullable: true
          description: Data de nascimento (apenas quando type = person)
          example: '1990-05-15'
        cnpj:
          type: string
          nullable: true
          description: CNPJ (apenas quando type = company)
          example: '12345678000199'
        social_name:
          type: string
          nullable: true
          description: Razão social (apenas quando type = company)
          example: Empresa XYZ LTDA
        social_contract:
          type: string
          nullable: true
          description: URL do contrato social (apenas quando type = company)
          example: https://storage.example.com/docs/contrato.pdf
        is_emancipated:
          type: boolean
          nullable: true
          description: Se o usuário é emancipado
          example: false
        emancipated_document:
          type: string
          nullable: true
          description: URL do documento de emancipação
          example: null
        cnpj_card:
          type: string
          nullable: true
          description: URL do cartão CNPJ (apenas quando type = company)
          example: null
        company_partner:
          type: object
          nullable: true
          description: Dados do sócio (apenas quando type = company)
          properties:
            name:
              type: string
              nullable: true
              example: Maria Souza
            cpf:
              type: string
              nullable: true
              example: '98765432100'
            birth:
              type: string
              nullable: true
              example: '1985-03-20'
        selfie_photo:
          type: string
          nullable: true
          description: URL da foto selfie
          example: https://storage.example.com/docs/selfie.jpg
        document_front:
          type: string
          nullable: true
          description: URL da frente do documento
          example: https://storage.example.com/docs/doc_front.jpg
        document_back:
          type: string
          nullable: true
          description: URL do verso do documento
          example: https://storage.example.com/docs/doc_back.jpg
    WebhookMetadata:
      type: object
      description: Metadados de rastreamento do webhook
      properties:
        origin:
          type: string
          description: Sistema de origem do evento
          example: nexus
        request_id:
          type: string
          description: ID único da requisição para rastreamento
          example: 67be1a2f3c4d5
        correlation_id:
          type: string
          nullable: true
          description: ID de correlação (quando disponível)
          example: null

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.