Onboarding de pessoa física

stable scopes: customer.write customer.read

O Onboarding de pessoa física consiste na análise de documentos pessoais e no posterior cadastro do cliente do nosso parceiro.

Após cadastrado, o cliente poderá abrir uma conta de pagamentos para realizar operações de pagamento, como PIX, TED, emitir boletos, realizar depósitos via boletos, pagamento de contas (boletos e convênios), emitir cartão de crédito, dentre outras operações financeiras, com um limite transacional baseado no perfil do cliente.

Para iniciar o processo de Onboarding de pessoa física, o cliente deve enviar três fotos:

  • Uma selfie;
  • Uma foto da frente do documento;
  • Uma foto do verso do documento.

Além disso, ele deve enviar todos os seus dados cadastrais para análise:

  • Nome de registro (conforme consta no documento);
  • Número de inscrição no Cadastro de Pessoas Físicas (CPF);
  • Endereço;
  • Data de nascimento;
  • Número de telefone (celular);
  • Nome da mãe;
  • Um endereço de e-mail.

🚧

Importante

O pré-requisito para o início do pedido de registro do cliente é o envio da selfie e das fotos do documento para análise. É importante ressaltar que a selfie deve ser enviada antes das outras fotos.

Etapas

Análise de documentos

A análise de documentos é a primeira etapa na jornada de Onboarding de pessoa física. Após essa análise, recuperaremos os resultados detalhados de cada imagem e os anexaremos à requisição para examinarmos o perfil do cliente. As imagens a serem analisadas nessa etapa são:

  • Selfie;
  • Frente do Documento de Identidade;
  • Verso do Documento de Identidade.

Para a realização da análise, as imagens precisam ser enviadas por meio do endpoint de envio de documentos pessoais. Além disso, para que o cliente possa prosseguir com o Onboarding, o parceiro Bankly deve consumir o endpoint de consulta do status da análise dos documentos enviados para que seja verificada se há necessidade do reenvio de alguma imagem.

Registro do cliente

Nessa etapa, analisamos o perfil do cliente com base nos dados fornecidos por ele e em informações que obtemos de alguns bureaus.

Endpoint

Para o uso deste endpoint, é preciso preencher os seguintes campos obrigatórios:

Path

  • documentNumber: número do documento CPF do cliente. Informe um CPF válido e preencha somente os números;

Body

  • registerName: nome do cliente como consta no documento;
  • birthDate: data de nascimento do cliente. Informe a data no formato ISO 8601.
    Exemplo: 1990-10-14. Lembramos que o cliente deve possuir no mínimo 16 anos.
  • phone: número de telefone para contato.
    • countryCode: código DDI do país. É permitido apenas 55 ou +55 (Brasil).
    • number: número de telefone (celular) do cliente com DDD (deve ser um número capaz de receber SMS).
  • address: endereço residencial do cliente.
    • zipCode: o CEP deve ser nacional e conter oito dígitos.
    • addressLine: nome da rua ou avenida em que o cliente reside.
    • buildingNumber: número do imóvel com até 10 caracteres (se não existir, substitua por S/N).
    • neighborhood: bairro onde o cliente reside.
    • city: cidade onde o cliente reside. Deve-se evitar acentos e outros caracteres especiais.
    • state: estado (UF) onde o cliente reside. Deve-se respeitar o formato proposto pela ISO 3166-2:BR. Exemplo: SP.
    • country: país onde o cliente reside. Serão aceitos apenas endereços em território nacional. Deve-se respeitar o formato proposto pela ISO 3166-1. Exemplo: BR.
  • motherName: nome da mãe do cliente como consta no documento de identidade;
  • email: informe um e-mail válido para contato;
  • isPoliticallyExposedPerson: pessoa exposta politicamente, conforme definido pela Circular nº 3.978. Propriedade do tipo boolean.

Opcionalmente, preencha os campos:

  • socialName: trata-se do nome social, ou seja, a forma pela qual o cliente gostaria de ser chamado.
  • address:
    • complement: complemento do endereço do cliente, caso haja. Exemplo: Apto 23, Casa dos fundos. Casa 2.
curl --location --request PUT 'https://api-mtls.sandbox.bankly.com.br/customers/{{documentNumber}}' \
--header 'api-version: 1' \
--header 'Authorization: Bearer {{accessToken}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "registerName": "Peter Benjamin Parker",
    "socialName": "Peter Parker",
    "birthDate": "1990-10-14",
    "phone": {
        "countryCode": "55",
        "number": "11987654321"
    },
    "address": {
        "zipcode": "05402100",
        "addressLine": "Av. Rebouças",
        "buildingNumber": "1368",
        "neighborhood": "Pinheiros",
        "country": "BR",
        "state": "SP",
        "city": "Sao Paulo",
        "complement": "Sala roxa"
    },
    "isPoliticallyExposedPerson": false,
    "motherName": "Mary Parker",
    "email": "[email protected]"
}'

Essa análise é feita de maneira automática e pode levar até cinco minutos. Ao final desse processo, conheceremos o perfil do cliente e, se ele for aprovado, estará apto para ter uma conta de pagamentos Bankly.

Retorno em caso de sucesso

O retorno 202 indicará que o registro do cliente foi realizado com sucesso.

Retorno em caso de reprovação

Se o registro do cliente for reprovado, será preciso realizar uma análise mais detalhada. Quando isso ocorrer, o parceiro poderá solicitar essa análise através do Service Desk do Bankly, o que poderá levar até sete dias úteis para conclusão.

O parceiro e o cliente devem aguardar o resultado dessa análise antes de tentar novamente. Veja quais podem ser os motivos de reprovação de uma análise.

É possível simular uma reprovação de registro, somente em ambiente sandbox, ao utilizar um dos seguintes documentos:

  • 312.806.468-70
  • 101.614.018-56
  • 145.774.718-92
  • 270.205.260-63
  • 102.078.370-23
  • 606.733.970-68

Erros

Status codeCódigoDescrição
400INVALID_PARAMETERCódigo de erro genérico que indica preenchimento incorreto de um ou mais campos da requisição. O valor incorreto será apresentado no retorno através do campo messages (conforme exemplo). Verifique as instruções de preenchimento do cURL.
409CUSTOMER_REGISTRATION_CANNOT_BE_REPLACEDO cliente está em análise.

Consulta do registro do cliente

Enquanto trabalhamos para concluir a análise o mais rápido possível, o parceiro poderá consultar o status de registro do cliente.

Endpoint

No path da requisição, no campo documentNumber, informe o número do documento do cliente (somente números).

curl --location --request GET 'https://api-mtls.sandbox.bankly.com.br/customers/{{documentNumber}}' \
--header 'api-version: 1' \
--header 'Authorization: Bearer {{accessToken}}'

Durante o processo de registro, o cliente poderá assumir os seguintes status:

StatusDescriçãoO que fazer?
PENDING_APPROVALO registro do cliente está em análise, aguardando aprovação.Pedimos que aguarde até a confirmação do resultado da análise.
APPROVEDO registro do cliente foi aprovado. Agora estamos criando a sua conta.Agora você já pode criar a conta de pagamentos do cliente.
IN_ANALYSISO registro do cliente foi direcionado para análise manual (exclusivo para parceiros que contrataram o serviço de derivação de mesa).Pedimos que aguarde até a confirmação do resultado da análise.
REPROVEDO registro do cliente foi reprovado. Junto com esse status dever ser retornado o campo Reasons.Pedimos que verifique os
motivos de reprovação antes de realizar uma nova tentativa.
BLOCKLISTEDJunto com esse status dever ser retornado o campo reasons com o valor NOT_RETRY.Interrompa as tentativas de cadastro desse CPF.

Retorno

{
    "phone": {
        "countryCode": "55",
        "number": "44508465676"
    },
    "address": {
        "zipCode": "1254856",
        "addressLine": "Av Rebouças",
        "buildingNumber": "2545",
        "complement": "3o Andar",
        "neighborhood": "Pinheiros",
        "city": "São Paulo",
        "state": "SP",
        "country": "BR"
    },
    "email": "[email protected]",
    "motherName": "Mary Parker",
    "birthDate": "1984-12-03T00:00:00Z",
    "isPoliticallyExposedPerson": false,
    "documentNumber": "12345678900",
    "registerName": "Peter Benjamim Parker",
    "socialName": "Peter Parker",
    "status": "APPROVED",
    "profile": "COMPLETE",
    "createdAt": "2022-03-25T14:00:38.967Z",
    "updatedAt": "2022-07-18T17:47:28.593Z"
}

🚧

Importante

Considere o cabeçalho de resposta Cache-control para um melhor uso das nossas APIs.

Criação de uma conta de pagamento

Após o cadastro do cliente, já será possível realizar a abertura de uma conta de pagamento.

Diagrama de sequência

Referências