KYC

The KYC APi was developed to provide registration information associated with a CPF number in a fast, secure, and standardized manner. Its primary objective is to support identity verification, fraud prevention, regulatory compliance, and data enrichment in both financial and non-financial systems.

Request data by document (CPF)

POST /kyc/:document

curl --location --request POST '<API_BASE_URL>/kyc/:document' \
--header 'Content-Type: application/json'  \
--header ': <ACCESS_TOKEN>'  \
--data '{  
    "plan": "plan_basic"  
}'

Headers

KeyValue
Content-Typeapplication/json
Authorization<ACCESS_TOKEN>

To obtain the authorization token Click here to learn more


Path parameters

KeyValue
documentCPF

Body

plan (string)mandatoryCustomer plan:
plan_basic | plan_standard | plan_premium | plan_plus | plan_full

Data for test

List CPF KYCResponse
70469605006regular
06165131000pendente_regularizacao
01860175023suspenso
72025413009cancelado
38490093008null
71364748096titularfalecido
37816137044consta_lista_restritiva
94360761007regular / PEP
92812082020regular / Menor de 18 anos

Responses

200

KYC - plan_basic

About the plan: The basic plan provides a simple query on the requested document data.

{
    "cpf": "70469605006",
    "name": "Valentina Silva",
    "is_under_18": false,
    "status": "regular",
    "status_code": 0,
    "date_death": null,
    "is_pep": false,
    "response_at": "2024-05-24T19:13:31.368Z",
    "response_token_validation": "4ysv8ScY16D0GHY7Q6miEAbVtorf57blUMWPHLsO46cmezqE4PCEGbkxE3HwfQjm"
}

KYC - plan_standard

About the plan: The standard plan provides a little more detail compared to the basic plan, such as: age and our internal monitoring in accordance with compliance rules.

{
    "cpf": "70469605006",
    "name": "Valentina Silva",
    "birth_date": "1990-05-15",
    "age": 34,
    "is_under_18": false,
    "status": "regular",
    "status_code": 0,
    "internal_status": null,
    "internal_status_code": null,
    "date_death": null,
    "is_pep": false,
    "response_at": "2024-05-24T19:13:31.368Z",
    "response_token_validation": "4ysv8ScY16D0GHY7Q6miEAbVtorf57blUMWPHLsO46cmezqE4PCEGbkxE3HwfQjm"
}

KYC - plan_plus

{ 
    "cpf": "70469605006",
    "name": "Valentina Silva",
    "birth_date": "1990-05-15",
    "age": 34,
    "is_under_18": false,
    "date_death": null,
    "internal_status": null,
    "internal_status_code": null,
    "status": "regular",
    "status_code": 0,
    "is_pep": false,
    "mother_name": "Maria Silva",
    "father_name": "José Silva",
    "address": {
        "street": "Rua Exemplo",
        "number": "123",
        "neighborhood": "Centro",
        "city": "São Paulo",
        "state": "SP",
        "zip_code": "01000000",
        "country": "Brazil"
    }
}

KYC - plan_premium

About the plan: The premium plan provides a variety of extremely important information for monitoring the reported document. As in the two previous plans, the query is made directly on the federal revenue database and in this case, we collect address information, employment relationships and banking information.

{
    "cpf": "70469605006",
    "name": "Valentina Silva",
    "birth_date": "1990-05-15",
    "age": 34,
    "is_under_18": false,
    "date_death": null,
    "internal_status": null,
    "internal_status_code": null,
    "status": "regular",
    "status_code": 0,
    "is_pep": false,
    "mother_name": "Maria Silva",
    "father_name": "José Silva",
    "address": {
        "street": "Rua Exemplo",
        "number": "123",
        "neighborhood": "Centro",
        "city": "São Paulo",
        "state": "SP",
        "zip_code": "01000000",
        "country": "Brazil"
    },
    "employment": {
        "employer_name": "Empresa Exemplo Ltda",
        "position": "Software Engineer",
        "salary": 3000,
        "start_date": "2015-01-10"
    },
    "financial_info": {
        "bank_accounts": [
            {
                "bank": "Banco do Brasil",
                "account_type": "trans",
                "account_number": "12345-6",
                "branch_number": "1234",
                "dict": "[email protected]"
            },
            {
                "bank": "Nubank ",
                "account_type": "trans",
                "account_number": "54321-6",
                "branch_number": "0001",
                "dict": "123.xxx.xxx-09"
            }
        ]
    },
    "response_at": "2024-05-24T19:13:31.368Z",
    "response_token_validation": "4ysv8ScY16D0GHY7Q6miEAbVtorf57blUMWPHLsO46cmezqE4PCEGbkxE3HwfQjm"
}

KYC - plan_full

About the plan: The full plan is our most robust plan. In addition to covering everything that exists in the other plans, the full plan will return the contact information of the researched document, family relationship, credit score, other related documents, risk mapping, PEP, negative media and other essential services for monitoring the your user.

{
    "cpf": "70469605006",
    "name": "Valentina Silva",
    "birth_date": "1990-05-15",
    "age": 34,
    "is_under_18": false,
    "date_death": null,
    "internal_status": null,
    "internal_status_code": null,
    "status": "regular",
    "status_code": 0,
    "is_pep": false,
    "mother_name": "Maria Silva",
    "father_name": "José Silva",
    "address": {
        "street": "Rua Exemplo",
        "number": "123",
        "neighborhood": "Centro",
        "city": "São Paulo",
        "state": "SP",
        "zip_code": "01000000",
        "country": "Brazil"
    },
    "contacts_info": [
        {
            "phone": "+5511999999999"
        },
        {
            "phone": "+5511999990000"
        },
        {
            "email": "[email protected]"
        },
        {
            "email": "[email protected]"
        }
    ],
    "family_members": [
        {
            "relationship": "pai",
            "name": "José Silva",
            "document": "01456874156"
        },
        {
            "relationship": "mae",
            "name": "Maria Silva",
            "document": "08475123241"
        },
        {
            "relationship": "irmao",
            "name": "Enzo Silva",
            "document": "14725896312"
        }
    ],
    "employment": {
        "employer_name": "Empresa Exemplo Ltda",
        "position": "Software Engineer",
        "salary": 3000,
        "start_date": "2015-01-10"
    },
    "financial_info": {
        "bank_accounts": [
            {
                "bank": "Banco do Brasil",
                "account_type": "trans",
                "account_number": "12345-6",
                "branch_number": "1234",
                "dict": "[email protected]"
            },
            {
                "bank": "Nubank ",
                "account_type": "trans",
                "account_number": "54321-6",
                "branch_number": "0001",
                "dict": "123.xxx.xxx-09"
            }
        ],
        "credit_score": 750
    },
    "documents": {
        "rg": "MG-12.345.678",
        "passport": "F1234567"
    },
    "custom_risk_analysis": {
        "score": 90,
        "level": "low",
        "last_updated": "2024-01-01"
    },
    "custom_info_compliance": [
        {
            "type": "pixmed",
            "description": "Cliente com varios acionamentos PIX MED: R$1001 01/05/2024 "
        },
        {
            "type": "midianegativa",
            "description": "Cliente com midia negativa encontrada Http:://www.aaaaa.com.br/joaosilvaenvolvidoemlavagemdefinheiro"
        },
        {
            "type": "associacaoesportiva",
            "description": "Cliente associado a federacao de natacao"
        }
    ],
    "response_at": "2024-05-24T19:13:31.368Z",
    "response_token_validation": "4ysv8ScY16D0GHY7Q6miEAbVtorf57blUMWPHLsO46cmezqE4PCEGbkxE3HwfQjm"
}

Errors

400 - Obit or Under age

{
    "statusCode": 400,
    "message": [
        "CPF must be valid"
    ],
    "error": "Bad Request"
}

400 - Invalid CPF or Not found

{
    "document": "06165130",
    "message": "O documento solicitado não está em um formato válido.",
    "code": "INVALID_DOCUMENT",
    "response_at": "2024-05-28T20:30:27.440Z",
    "response_token_validation": "4ysv8ScY16D0GHY7Q6miEAbVtorf57blUMWPHLsO46cmezqE4PCEGbkxE3HwfQjm"
}

400 - CPF in restrictive list

{
    "document": "06165130",
    "statusCode": 400,
    "message": "O documento solicitado se encontra na lista restritiva.",
    "error": "RESTRICT_DOCUMENT"
}