Análise de Crédito
ANALISE_CREDITOAnálise de crédito consolidada via Open Finance — renda, despesas (detalhadas por categoria), capacidade de pagamento e score em uma única consulta.
Endpoint
POST /api/client/provider/open-finance
Método
POSTAutenticação
Bearer JWT
Descrição
Retorna uma análise de crédito consolidada do CPF com base em dados Open Finance: renda, despesas (com detalhamento por categoria), capacidade de pagamento e score de crédito, em uma única consulta.
Request Body
| Campo | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
| document | string | Sim | CPF do consultado (11 dígitos, somente números). |
| product_code | array | Sim | Lista de códigos de produto a consultar. Pode combinar vários relatórios Open Finance numa única requisição. |
Exemplo
{
"document": "12345678901",
"product_code": [
"ANALISE_CREDITO"
]
}
Exemplo cURL
curl -X POST \
https://positivaconnect.positivaconsultas.com.br/api/client/provider/open-finance \
-H "Authorization: Bearer {seu_token}" \
-H "Content-Type: application/json" \
-d '{
"document": "12345678901",
"product_code": ["ANALISE_CREDITO"]
}'
Formato do Envelope de Resposta
{
"success": true,
"document": "12345678901",
"provider": "open-finance",
"query_date": "2026-03-18T10:00:00",
"results": {
"ANALISE_CREDITO": {
"success": true,
"data": { ... }
}
}
}
Quando results.ANALISE_CREDITO.success for false, indica falha de comunicação com o provider externo (timeout, erro 5xx). Erros de autorização são rejeitados antes da consulta com HTTP 403.
Campos do data
| Campo | Descrição |
|---|---|
| reportStatus | Código HTTP do status do relatório na Klavi (200 = sucesso). |
| requestId | Identificador único da requisição na Klavi. |
| productName | Código do produto consultado na Klavi (ex.: pf_klavi_income_eco). |
| productVersion | Versão do produto (ex.: V1). |
| productReportTime | Data e hora de geração do relatório (ISO 8601). |
| enquiryCpf | CPF consultado. |
| creditReport.labelDetails | Array de indicadores. Cada item tem labelCode, labelName e labelValue. |
| creditReport.labelDetails[].labelCode | P000001 (Renda), P000002 (Obrigações Financeiras), P000003 (Moradia e Utilidades), P000004 (Gastos Essenciais), P000005 (Compras e Lazer), P000006 (Transferências Recorrentes), P000007 (Despesas totais), P000008 (Capacidade de Pagamento), F001308 (Score K3, 0–1000). |
| creditReport.personalInfo | Dados cadastrais: civilName, cpfNumber, age, email, phoneAreaCode, phoneNumber, city, state, address. |
| creditReport.personalInfo.accounts | Instituições Open Finance vinculadas (bacenName, brandName, compeCode). |
Exemplo de Resposta
Conteúdo de results.ANALISE_CREDITO.data
{
"reportStatus": 200,
"requestId": "0225dfb7162b488baead8980665422e1",
"productName": "pf_klavi_credit_report_eco",
"productVersion": "V1",
"productReportTime": "2026-08-19T17:49:23.932Z",
"enquiryCpf": "76109277673",
"creditReport": {
"labelDetails": [
{
"labelCode": "P000001",
"labelName": "Klavi_income_V1",
"labelValue": 31049.6
},
{
"labelCode": "P000002",
"labelName": "Financial Obligation Expenses",
"labelValue": 0
},
{
"labelCode": "P000003",
"labelName": "Housing and Utilities Expenses",
"labelValue": 23.9
},
{
"labelCode": "P000004",
"labelName": "Living Essential Expenses",
"labelValue": 36.95
},
{
"labelCode": "P000005",
"labelName": "Shopping and Leisure Expenses",
"labelValue": 0
},
{
"labelCode": "P000006",
"labelName": "Recurring transfers",
"labelValue": 18.39
},
{
"labelCode": "P000007",
"labelName": "Expenses",
"labelValue": 79.24
},
{
"labelCode": "P000008",
"labelName": "Affordability",
"labelValue": 30970.36
},
{
"labelCode": "F001308",
"labelName": "Score K3",
"labelValue": 786
}
],
"personalInfo": {
"accounts": [
{
"bacenName": "Klavi OP Mock Institution",
"brandName": "Banco Brasileiro",
"compeCode": "11110"
}
],
"address": "Rua Laguna 129",
"age": "37",
"city": "Porto Alegre",
"civilName": "Tatiana Galvão",
"cpfNumber": "76109277673",
"email": "tatiana.galvao@email.com",
"phoneAreaCode": "51",
"phoneNumber": "325421328",
"state": "RS"
}
}
}
Respostas de Erro
invalid_request
Documento inválido, product_code ausente ou vazio
unauthenticated
Token JWT ausente ou inválido
product_not_authorized
Um ou mais produtos informados não estão contratados. A requisição inteira é rejeitada.
product_not_found
Um dos códigos em product_code não existe ou está inativo