Voltar para Finance 360 API

Renda

RENDA

Estimativa de renda mensal do CPF com base na movimentação financeira Open Finance.

Endpoint

POST /api/client/provider/open-finance

Método

POST

Autenticação

Bearer JWT

Descrição

Retorna a estimativa de renda mensal do CPF consultado com base na movimentação das contas Open Finance vinculadas.

Request Body

Content-Type: application/json
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": [
        "RENDA"
    ]
}

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": ["RENDA"]
  }'

Formato do Envelope de Resposta

200 OK
{
  "success": true,
  "document": "12345678901",
  "provider": "open-finance",
  "query_date": "2026-03-18T10:00:00",
  "results": {
    "RENDA": {
      "success": true,
      "data": { ... }
    }
  }
}

Quando results.RENDA.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.
income.labelDetails Array de indicadores. Cada item tem labelCode, labelName e labelValue.
income.labelDetails[].labelCode P000001 (Renda mensal estimada, em R$).
income.personalInfo.civilName Nome civil do consultado.
income.personalInfo.accounts Instituições Open Finance vinculadas (bacenName, brandName, compeCode).

Exemplo de Resposta

Conteúdo de results.RENDA.data

200 OK
{
    "reportStatus": 200,
    "requestId": "04bfeb7da0db4c9e9d0f1041af3b3a2d",
    "productName": "pf_klavi_income_eco",
    "productVersion": "V1",
    "productReportTime": "2026-08-19T17:49:25.188Z",
    "enquiryCpf": "76109277673",
    "income": {
        "labelDetails": [
            {
                "labelCode": "P000001",
                "labelName": "Klavi_income_V1",
                "labelValue": 30615.87
            }
        ],
        "personalInfo": {
            "accounts": [
                {
                    "bacenName": "Klavi OP Mock Institution",
                    "brandName": "Banco Brasileiro",
                    "compeCode": "11110"
                }
            ],
            "civilName": "Tatiana Galvão"
        }
    }
}

Respostas de Erro

400

invalid_request

Documento inválido, product_code ausente ou vazio

401

unauthenticated

Token JWT ausente ou inválido

403

product_not_authorized

Um ou mais produtos informados não estão contratados. A requisição inteira é rejeitada.

404

product_not_found

Um dos códigos em product_code não existe ou está inativo