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

# KYC para Clientes Pessoas Físicas

> Cadastre clientes pessoas físicas com verificação de identidade KYC. Escolha entre API ou link hospedado, com conformidade Sphere-Managed ou Platform-Managed.

KYC (Know Your Customer) é um processo legal de verificação de identidade obrigatório antes que qualquer cliente pessoa física possa enviar ou receber fundos pelo SpherePay. É exigido pelas regulamentações de prevenção à lavagem de dinheiro (AML) e deve ser concluído uma vez por cliente. Você escolhe como integrar — via API ou link hospedado — e qual modelo de conformidade usar.

## Informações obrigatórias

O SpherePay requer as seguintes informações para verificar a identidade de um cliente pessoa física. Os campos marcados como **API** são enviados na requisição de criação do cliente; os campos marcados como **Documento de ID** são extraídos automaticamente do documento enviado.

| Campo                                        | Origem          | Observações                                                                   |
| -------------------------------------------- | --------------- | ----------------------------------------------------------------------------- |
| Endereço de e-mail                           | API             | Campo `email` na requisição de criação do cliente                             |
| Número de telefone                           | API             | Campo `phone` na requisição de criação do cliente                             |
| País de residência                           | API             | `address.country` na requisição de criação do cliente                         |
| Endereço residencial                         | API             | Objeto `address` completo (rua, cidade, CEP, estado)                          |
| Número de identificação fiscal               | API             | `personalInformation.taxIdentificationNumber` — tipos aceitos variam por país |
| Nome e sobrenome                             | Documento de ID | Extraído automaticamente do documento de identidade emitido pelo governo      |
| Data de nascimento                           | Documento de ID | Extraído automaticamente do documento de identidade emitido pelo governo      |
| Documento de identidade emitido pelo governo | Documento de ID | Enviado via `POST /v2/document` — passaporte, carteira de identidade ou CNH   |
| Comprovante de endereço                      | Documento de ID | Enviado via `POST /v2/document`                                               |

<Note>
  Em determinadas circunstâncias, o SpherePay pode solicitar informações adicionais, como para pessoas politicamente expostas (PEPs), clientes idosos, perfis de alto risco ou clientes com volumes de transações esperados incomumente altos. O SpherePay entrará em contato diretamente quando isso se aplicar.
</Note>

## Visão geral do fluxo de KYC

O fluxo abaixo mostra as etapas necessárias para o KYC individual. A única etapa que difere entre os modelos de onboarding é a aceitação dos TOS — ela é tratada no fluxo no Sphere-Managed e incorporada nos termos da sua plataforma no Platform-Managed.

<Tabs>
  <Tab title="Sphere-Managed (padrão)">
    1. Criar cliente com `personalInformation` e `address` completos
    2. Gerar link de TOS → redirecionar o cliente para aceitar os termos
    3. Fazer upload do documento de identidade emitido pelo governo
    4. Fazer upload do comprovante de endereço
    5. Completar a verificação de vivacidade facial (Sumsub SDK, no fluxo)
    6. Consultar `GET /v2/customer/{id}` até o `status` atingir `approved`
  </Tab>

  <Tab title="Platform-Managed (opt-in)">
    1. Criar cliente com `personalInformation` e `address` completos
    2. Fazer upload do documento de identidade emitido pelo governo
    3. Fazer upload do comprovante de endereço
    4. Fazer upload do documento de relatório de vivacidade do seu provedor de KYC
    5. Consultar `GET /v2/customer/{id}` até o `status` atingir `approved`
  </Tab>
</Tabs>

## Escolha um método de integração

<Warning>
  Você deve escolher um único método de integração e modelo de onboarding para cada cliente. Misturar métodos para o mesmo cliente — ou reverter para um se o outro falhar — não é suportado e resultará em um onboarding malsucedido.
</Warning>

<CardGroup cols={3}>
  <Card title="KYC via API — Sphere-Managed" icon="code" href="/pt-BR/concepts/onboarding/individual-kyc#kyc-via-api-sphere-managed">
    Modelo padrão. O Sphere cuida de TOS, vivacidade facial e OTP via links hospedados.
  </Card>

  <Card title="KYC via API — Platform-Managed" icon="server" href="/pt-BR/concepts/onboarding/individual-kyc#kyc-via-api-platform-managed">
    Modelo opt-in. Faça upload de um documento de relatório de vivacidade. Nenhum redirecionamento hospedado necessário.
  </Card>

  <Card title="KYC via link hospedado" icon="link" href="/pt-BR/concepts/onboarding/kyc-via-link">
    Integração mais rápida. O SpherePay hospeda toda a experiência de verificação.
  </Card>
</CardGroup>

***

## KYC via API — Sphere-Managed

Este é o modelo padrão para todas as novas integrações de API. O Sphere cuida das etapas de conformidade no fluxo usando links e redirecionamentos hospedados: aceitação dos Termos de Serviço, verificação de vivacidade facial e verificação de contato por OTP.

**Antes de começar**, certifique-se de ter:

* Uma chave de API do SpherePay
* As informações pessoais do cliente (endereço completo, ID fiscal)
* Uma cópia do documento de identidade emitido pelo governo do cliente

<Steps>
  <Step title="Criar um cliente">
    Chame `POST /v2/customer` com `type: "individual"` e inclua os objetos completos `personalInformation` e `address`. Esses campos permitem que o SpherePay verifique a identidade do cliente programaticamente.

    ```json theme={"dark"}
    {
      "type": "individual",
      "email": "jane.smith@example.com",
      "phone": "+14155550123",
      "address": {
        "line1": "233 South Wacker Drive",
        "line2": "Suite 4700",
        "city": "Chicago",
        "postalCode": "60606",
        "state": "IL",
        "country": "USA"
      },
      "personalInformation": {
        "taxIdentificationNumber": "123456789",
        "taxIdentificationNumberType": "ssn",
        "taxIdentificationNumberCountry": "USA"
      }
    }
    ```

    O objeto `personalInformation` aceita os seguintes campos:

    | Campo                                | Descrição                                                                          |
    | ------------------------------------ | ---------------------------------------------------------------------------------- |
    | `taxIdentificationNumberCountry`     | O código de país do cliente (ex.: `USA`, `SGP`, `GBR`)                             |
    | `taxIdentificationNumberType`        | O tipo do número de ID, ex.: `ssn` (EUA), `nric` (Singapura), `nino` (Reino Unido) |
    | `taxIdentificationNumber`            | O número de identificação real                                                     |
    | `taxIdentificationNumberDescription` | Descrição legível por humanos — obrigatória apenas quando o tipo for `other`       |
  </Step>

  <Step title="Aceitar os Termos de Serviço">
    Gere um link de TOS e redirecione o cliente para aceitar os Termos e Condições e a Política de Privacidade.

    ```bash theme={"dark"}
    POST https://api.spherepay.co/v2/customer/{id}/tos-link
    ```

    Esta etapa pode ser feita em paralelo com o upload de documentos.
  </Step>

  <Step title="Fazer upload do documento de identidade">
    Faça upload do documento de identidade emitido pelo governo do cliente usando `POST /v2/document`.

    ```bash theme={"dark"}
    curl --location 'https://api.spherepay.co/v2/document' \
    --header 'Authorization: Bearer <your_api_key>' \
    --form 'target="customer"' \
    --form 'targetId="customer_4914a2f6226e42cc8d207ead9573b29f"' \
    --form 'documentType="id_card"' \
    --form 'side="front"' \
    --form 'file=@"/path/to/your/document.jpg"' \
    --form 'country="SGP"'
    ```

    Faça upload da frente e do verso para carteiras de identidade e CNH. Passaportes exigem apenas a frente (com exceções específicas por país). Consulte o Guia de Documentos para os formatos aceitos por país.
  </Step>

  <Step title="Completar a verificação de vivacidade facial">
    Verifique o array `required` do cliente via `GET /v2/customer/{id}`. Em seguida, realize **exatamente uma** das opções a seguir, dependendo do que aparecer em `required`:

    * **`liveness_check` em required** — Gere um link de verificação facial via `POST /v2/enhanced-due-diligence/face-verification-link` e redirecione o cliente para completar uma verificação de vivacidade interativa via Sumsub SDK.
    * **`liveness_report_document` em required** — Faça upload de um documento de relatório de vivacidade do seu provedor de verificação de identidade via `POST /v2/document` com `documentType: "liveness_report"`.

    <Warning>
      Não siga os dois caminhos. Verifique o array `required` e siga apenas a opção correspondente.
    </Warning>
  </Step>

  <Step title="Consultar o resultado da verificação">
    Assim que todas as etapas obrigatórias estiverem concluídas, o SpherePay processa a verificação automaticamente — nenhuma chamada de submit é necessária. Consulte `GET /v2/customer/{id}` até que o `status` em `verificationProfiles` atinja `approved`.

    ```bash theme={"dark"}
    GET https://api.spherepay.co/v2/customer/{id}
    ```

    ```json theme={"dark"}
    {
      "id": "customer_f31121c389624d3697cbf3ea8830b7a4",
      "email": "jane.smith@example.com",
      "phone": "+14155550123",
      "verificationProfiles": [
        {
          "name": "kyc_profile_a",
          "status": "approved",
          "criteria": {
            "complete": [
              "email_address",
              "phone_number",
              "residential_address",
              "tax_identification_number",
              "identity_document",
              "liveness_report_document"
            ],
            "pending": [],
            "required": [],
            "errors": []
          }
        }
      ],
      "createdAt": "2026-03-09T20:46:31.305Z",
      "updatedAt": "2026-03-09T20:46:31.305Z",
      "type": "individual"
    }
    ```

    Quando `required` estiver vazio e `status` for `approved`, o cliente está totalmente cadastrado e pronto para transferir.
  </Step>
</Steps>

<Note>
  A análise do KYC normalmente leva de 0 a 2 dias úteis após todos os documentos e dados obrigatórios serem enviados.
</Note>

***

## KYC via API — Platform-Managed

Este modelo opt-in é para plataformas que já realizam KYC, coletam verificação de vivacidade e incorporam os Termos de Serviço do Sphere. Sua plataforma cuida da conformidade upstream — nenhum redirecionamento hospedado é necessário.

<Warning>
  O Platform-Managed não está disponível por padrão. Sua plataforma deve atender aos requisitos de qualificação e receber aprovação da equipe de conformidade do Sphere antes de entrar em produção. Entre em contato com seu Solutions Engineer dedicado para iniciar o processo de aprovação.
</Warning>

**Pré-requisitos adicionais além do conjunto padrão:**

* Um documento de relatório de vivacidade do seu provedor de verificação de identidade (ex.: Sumsub, Persona)
* Onboarding Platform-Managed aprovado para sua aplicação pela Conformidade do Sphere

<Steps>
  <Step title="Criar um cliente">
    Chame `POST /v2/customer` com `type: "individual"`, `personalInformation` completo e `address`. O corpo da requisição é idêntico ao caminho Sphere-Managed.

    ```json theme={"dark"}
    {
      "type": "individual",
      "email": "jane.smith@example.com",
      "phone": "+14155550123",
      "address": {
        "line1": "233 South Wacker Drive",
        "line2": "Suite 4700",
        "city": "Chicago",
        "postalCode": "60606",
        "state": "IL",
        "country": "USA"
      },
      "personalInformation": {
        "taxIdentificationNumber": "123456789",
        "taxIdentificationNumberType": "ssn",
        "taxIdentificationNumberCountry": "USA"
      }
    }
    ```
  </Step>

  <Step title="Fazer upload do documento de identidade e comprovante de endereço">
    Faça upload dos documentos de identidade do cliente via `POST /v2/document`. Repita para cada tipo de documento obrigatório.

    ```bash theme={"dark"}
    curl --location 'https://api.spherepay.co/v2/document' \
    --header 'Authorization: Bearer <your_api_key>' \
    --form 'target="customer"' \
    --form 'targetId="customer_4914a2f6226e42cc8d207ead9573b29f"' \
    --form 'documentType="id_card"' \
    --form 'side="front"' \
    --form 'file=@"/path/to/your/document.jpg"' \
    --form 'country="SGP"'
    ```
  </Step>

  <Step title="Fazer upload do relatório de vivacidade">
    Faça upload do relatório de vivacidade produzido pelo seu provedor de verificação de identidade. Isso substitui a verificação de vivacidade facial no fluxo usada no Sphere-Managed.

    ```bash theme={"dark"}
    curl --location 'https://api.spherepay.co/v2/document' \
    --header 'Authorization: Bearer <your_api_key>' \
    --form 'target="customer"' \
    --form 'targetId="customer_4914a2f6226e42cc8d207ead9573b29f"' \
    --form 'documentType="liveness_report"' \
    --form 'file=@"/path/to/liveness_report.pdf"'
    ```

    Faça upload deste documento somente se `liveness_report_document` aparecer no array `required` do perfil de verificação do cliente.
  </Step>

  <Step title="Consultar o resultado da verificação">
    Assim que todos os dados e documentos obrigatórios forem enviados, o SpherePay processa a verificação do KYC automaticamente. Consulte `GET /v2/customer/{id}` até que `status` atinja `approved`.
  </Step>
</Steps>

***

## Próximos passos

Assim que o perfil de verificação do cliente estiver `approved`, registre seus métodos de pagamento e inicie uma transferência.

<CardGroup cols={2}>
  <Card title="Contas bancárias" icon="landmark" href="/pt-BR/concepts/transfers/bank-accounts">
    Registre uma conta bancária para que o cliente possa enviar ou receber fundos via rail bancário.
  </Card>

  <Card title="Carteiras" icon="wallet" href="/pt-BR/concepts/transfers/wallets">
    Registre um endereço de carteira cripto para habilitar transferências de on-ramp e off-ramp.
  </Card>

  <Card title="API de Transferências" icon="arrow-right-left" href="/pt-BR/concepts/transfers/overview">
    Crie e gerencie transferências assim que o cliente tiver registrado seus métodos de pagamento.
  </Card>

  <Card title="Perfil de verificação" icon="shield-check" href="/pt-BR/concepts/onboarding/verification-profile">
    Entenda os status de verificação, arrays de critérios e o que desencadeia mudanças de estado.
  </Card>
</CardGroup>
