CPF na Receita Federal

Nossa API permite consultar dados cadastrais completos de pessoas físicas diretamente na Receita Federal do Brasil. Obtenha informações como nome completo, situação cadastral, data de nascimento e data de inscrição no CPF, com possibilidade de utilizar cache ou realizar consultas online em tempo real.

Custos

ConsultaCréditos consumidos
CPF atendido diretamente pelo cache, sem tentativa online1 crédito
CPF na modalidade online10 créditos
Retorno com erro, sem resultado utilizável0 créditos

Os valores são o total por requisição, não créditos adicionais. A consulta online custa 10 créditos no total, e não 11. A estratégia padrão, SO_CACHE, utiliza apenas o cache; se não houver resultado, retorna erro sem consumo de créditos.

Na estratégia ONLINE_PREFERENCIAL, uma tentativa online pode terminar com a entrega de dados em cache após falha da fonte e manter o custo de 10 créditos. Para consultar exclusivamente pelo custo de cache, utilize SO_CACHE.

Crédito é a unidade de consumo do plano. Consulte o valor dos planos e a tabela de Consumo por consulta.

Informações de entrada

Para consultar um CPF, utilize os seguintes parâmetros:

CPF: O número do Cadastro de Pessoa Física (CPF) que deseja consultar.

Data de Nascimento: Informação opcional e recomendada. Quando uma estratégia exigir consulta online, a API usará a data informada pelo cliente ou tentará obter uma data previamente armazenada em cache para o CPF.

Cache: define o tempo máximo, em dias, para reutilização de uma resposta previamente obtida pela plataforma. O cache é mantido de forma centralizada pela Sintegrapi para otimizar desempenho, reduzir custos e evitar consultas repetidas às fontes de dados. O uso do cache não concede a nenhum cliente acesso a informações de outro cliente, nem permite identificar quem realizou consultas anteriores.

Cache Strategy: Define o comportamento da consulta (prioridade entre cache e online). Este é o parâmetro que determina o modo de execução da consulta.

Parâmetros Obrigatórios

  • Name
    cpf
    Type
    string
    Description

    CPF que será consultado - pode ser informado em qualquer padrão de formatação contanto que esteja completo e seja válido.

    Exemplo: 12345678901

Parâmetros Opcionais

  • Name
    data_nascimento
    Type
    string
    Description

    Data de nascimento no formato yyyyMMdd.

    Exemplo: 19910807

    Observações importantes:

    • É opcional, mas recomendada para aumentar a taxa de sucesso em estratégias que podem consultar online.
    • Quando houver necessidade de consulta online, a API tentará usar primeiro a data enviada na requisição.
    • Se não for enviada, a API tentará utilizar uma data previamente armazenada em cache para o CPF.
    • Se nenhuma data estiver disponível, a consulta online não poderá ser realizada.
  • Name
    cache
    Type
    number
    Description

    Tempo máximo de idade do cache em dias. O valor padrão é 36500 dias (100 anos).

  • Name
    cache_strategy
    Type
    string
    Description

    Estratégia de utilização do cache. O valor padrão é SO_CACHE.

    Observação: O comportamento da consulta é definido por cache_strategy. Em estratégias com possibilidade de consulta online, a API utilizará a data enviada ou tentará obter a data de nascimento em cache para o CPF.


Formato das datas da resposta

O mesmo endpoint aceita o parâmetro opcional date_format na query string. Escolha o formato esperado pela sua integração:

date_formatnascimentodata_inscricaoupdated_at, quando informado
ddMMyyyy (padrão)100820050611201315092026
yyyy-MM-dd2005-08-102013-11-062026-09-15

Sem date_format, a resposta utiliza ddMMyyyy. A escolha vale para as datas disponíveis nas respostas online, em cache e em fallback. Campos sem informação continuam ausentes ou nulos. Outros valores de date_format retornam HTTP 400, sem executar a consulta ou consumir créditos.

O parâmetro format continua definindo a estrutura da resposta: SINTEGRAPI (padrão) inclui os dados em serpro_result; SERPRO retorna os dados diretamente, sem esse envelope. O parâmetro date_format funciona com os dois layouts. O campo updated_at é apresentado somente no layout SINTEGRAPI, quando disponível.

A data de nascimento enviada no caminho da requisição permanece em yyyyMMdd, independentemente do formato escolhido para a resposta.

Resposta com datas yyyy-MM-dd

curl -G "https://api.sintegrapi.com.br/consultas/v2/cpf-rfb/12345678901/19910807" \
  --data-urlencode "cache_strategy=SO_CACHE" \
  --data-urlencode "date_format=yyyy-MM-dd" \
  -H "x-api-key: {apiKey}"

Estratégias de Cache

A API oferece diferentes estratégias para balancear entre performance, custo e atualização dos dados:

EstratégiaPrioridadeFallbackDescrição
CACHE_SE_EXISTIRCacheOnlineUtiliza o cache caso exista. Em caso de cache miss, tenta consulta online usando a data informada ou uma data disponível em cache para o CPF.
CACHE_PREFERENCIALCache válidoOnlineUtiliza o cache quando estiver dentro da validade definida. Caso contrário, tenta consulta online com a data informada ou recuperada do cache. Recomendado para a maioria dos cenários.
SO_ONLINEOnlineNenhumSempre tenta consulta online na Receita Federal, utilizando a data informada ou uma data disponível em cache. Possui custo superior às consultas em cache. Consulte a página de preços em /preços.
SO_CACHECacheNenhumUtiliza apenas registros armazenados em cache. Nunca realiza consulta online. Caso o CPF não exista em cache, retorna não encontrado.
ONLINE_PREFERENCIALOnlineCachePrioriza a consulta online usando a data informada ou recuperada do cache. Caso a consulta online falhe, poderá utilizar o cache como fallback.

Quando usar a estratégia SO_CACHE

  • Ideal para validações rápidas.
  • Pode ser utilizada quando a data de nascimento não está disponível.
  • Indicada para cenários de alto volume com foco em redução de custos.
  • Nunca realiza consultas online junto à Receita Federal.
  • Retorna apenas registros previamente armazenados em cache.
  • Caso o CPF não exista em cache, retorna não encontrado.

Observações Importantes

  • Recomendamos sempre informar a data de nascimento nas consultas de CPF. Essa é a melhor prática para aumentar a taxa de sucesso nas estratégias que podem consultar a Receita Federal online.
  • A presença ou ausência da data de nascimento não define sozinha se a consulta será em cache ou online. Quem define o comportamento é o parâmetro cache_strategy.
  • Quando a estratégia envolver consulta online (SO_ONLINE, ONLINE_PREFERENCIAL, CACHE_PREFERENCIAL ou CACHE_SE_EXISTIR em caso de cache miss), a API tentará usar a data de nascimento enviada na requisição.
  • Se a data de nascimento não for informada pelo cliente, a API tentará utilizar uma data de nascimento previamente armazenada em cache para o CPF consultado.
  • Se existir uma data de nascimento válida em cache, a consulta online será executada normalmente.
  • Se não houver data de nascimento disponível em cache e ela também não tiver sido informada na requisição, a consulta online não poderá ser realizada e a API retornará erro informando que a data de nascimento é obrigatória para consulta online.
  • Consultas online possuem custo superior às consultas em cache.
  • Consulte a página /preços para verificar os valores atualizados.
  • Para cenários de alto volume, recomenda-se utilizar cache sempre que possível.
  • A situação cadastral retornada pela Receita Federal permite validar a regularidade do CPF consultado.
  • A API retorna informações como CPF, nome completo, situação cadastral, data de nascimento e data de inscrição no CPF.

GET/consultas/v2/cpf-rfb/{cpf}/{data_nascimento?}

Consulta CPF Receita Federal

Este endpoint permite consultar dados cadastrais de CPF diretamente na Receita Federal do Brasil, com suporte a diferentes estratégias de cache.

A data de nascimento é opcional. O comportamento da consulta é definido por cache_strategy.

Quando for necessário consultar online, a API seguirá esta ordem:

  • tenta usar a data de nascimento enviada na requisição
  • se não houver data na requisição, tenta usar uma data previamente armazenada em cache para o CPF
  • se nenhuma data estiver disponível, a consulta online não poderá ser realizada

Retorno da Consulta

A consulta retorna os seguintes dados:

  • CPF (ni): Número de Inscrição do contribuinte
  • Nome completo: Nome completo da pessoa física
  • Situação cadastral: Código e descrição da situação (ex: REGULAR)
  • Data de nascimento (nascimento): Data no formato escolhido em date_format
  • Data de inscrição (data_inscricao): Data de inscrição no CPF no formato escolhido, quando disponível
  • Data de atualização (updated_at): Data de atualização do cadastro no formato escolhido, quando informada no layout SINTEGRAPI

O padrão é ddMMyyyy. Para receber datas como 2005-08-10, envie date_format=yyyy-MM-dd. Consulte Formato das datas da resposta para exemplos nos dois formatos.

Atributos opcionais

  • Name
    cache
    Type
    number
    Description

    Tempo máximo de idade do cache em dias. O valor default é 365 dias.

  • Name
    cache_strategy
    Type
    string
    Description

    Estratégia de cache a ser utilizada. O valor default é SO_CACHE.

    Valores aceitos: CACHE_SE_EXISTIR, CACHE_PREFERENCIAL, SO_ONLINE, SO_CACHE, ONLINE_PREFERENCIAL.

  • Name
    format
    Type
    string
    Description

    Layout da resposta: SINTEGRAPI (padrão, com envelope) ou SERPRO (dados diretamente no corpo).

  • Name
    date_format
    Type
    string
    Description

    Formato das datas da resposta: ddMMyyyy (padrão) ou yyyy-MM-dd. Aplica-se a nascimento, data_inscricao e updated_at, quando presentes, independentemente da estratégia de cache e do layout escolhido.

Requisição

GET
/consultas/v2/cpf-rfb/{cpf}/{data_nascimento?}
curl -G https://api.sintegrapi.com.br/consultas/v2/cpf-rfb/12345678901/19910807?cache_strategy=CACHE_PREFERENCIAL \
  -H "x-api-key: {apiKey}"

Resposta - Sucesso

{
  "serpro_result": {
    "ni": "12345678901",
    "nome": "JOAO DA SILVA",
    "situacao": {
      "codigo": "0",
      "descricao": "REGULAR"
    },
    "nascimento": "07081991",
    "data_inscricao": "16122024",
    "updated_at": "15092026"
  },
  "request_id": "63cae3c7-21b1-4735-b689-7300af6813e1",
  "success": true,
  "error": false
}

Retornos Possíveis no Campo situacao (Situações Cadastrais)

CódigoDescrição
0Regular
2Suspensa
3Titular Falecido
4Pendente de Regularização
5Cancelada por Multiplicidade
8Nula
9Cancelada de Ofício

Respostas de Erro

A API retorna diferentes tipos de resposta dependendo da situação encontrada:

CPF Não Encontrado

Quando o CPF não é localizado (seja em cache ou online):

CPF Não Encontrado

{
  "request_id": "f1bba1c4-fc11-44e6-a9f9-8a816d3df148",
  "success": false,
  "error": false,
  "error_message": {
    "message": "CPF Não localizado",
    "code": "404"
  }
}

CPF Inválido

Quando o CPF informado possui formato inválido ou dígitos verificadores incorretos:

CPF Inválido

{
  "request_id": "73975659-b432-4ef4-a461-f654b2143776",
  "success": false,
  "error": true,
  "error_message": {
    "message": "CPF inválido."
  }
}

Códigos de Erro Comuns

Código HTTPCódigo InternoDescriçãoSolução Recomendada
400CPF_INVALIDOCPF mal formatado, incompleto ou dígitos verificadores incorretos.Verifique se o CPF possui 11 dígitos e está formatado corretamente (com ou sem pontuação).
400DATA_NASCIMENTO_INVALIDAData de nascimento mal formatada ou inválida.Utilize o formato yyyyMMdd. Exemplo: 19910807.
400Validação de date_formatFormato de datas da resposta não suportado.Utilize ddMMyyyy ou yyyy-MM-dd. A mensagem de validação é retornada em errors.date_format.
401API_KEY_INVALIDAChave de API ausente, expirada ou inválida.Verifique sua chave de API no painel ou entre em contato com o suporte.
404CPF_NAO_ENCONTRADOCPF não existe na base da Receita Federal ou não está em cache.Confira o número digitado e revise a estratégia de consulta (cache_strategy) utilizada.
429LIMITE_EXCEDIDOLimite de requisições por minuto/dia atingido.Reduza a frequência de consultas ou atualize para um plano com maior limite.
500ERRO_INTERNOFalha temporária no servidor ou na conexão com a Receita Federal.Tente novamente após alguns minutos. Persistindo, reporte ao suporte.
503SERVICO_INDISPONIVELServiço da Receita Federal fora do ar ou em manutenção.Aguarde e tente mais tarde. Consulte o status oficial da Receita Federal.

Integração com CRMs e ERPs

Integre a consulta de CPF na Receita Federal ao cadastro de pessoas físicas para conferir o documento, o nome e a situação cadastral retornados. O fluxo é implementado com chamadas HTTPS no servidor da integração.

Consulta CPF no TOTVS Protheus, SAP e Dynamics 365

Em projetos com TOTVS Protheus, TOTVS RM, SAP S/4HANA, SAP Business One, Oracle Fusion Cloud ou Microsoft Dynamics 365, associe a resposta ao cadastro da pessoa física pelo CPF. A equipe de integração adapta os campos e as permissões à versão contratada do sistema.

Campo da respostaUso na integração
serpro_result.niAssociar o CPF à pessoa cadastrada, preservando zeros à esquerda.
serpro_result.nomeConferir o nome retornado pela fonte.
serpro_result.situacao.codigo e serpro_result.situacao.descricaoApoiar a validação cadastral segundo as regras da empresa.
serpro_result.nascimento e serpro_result.data_inscricaoComplementar as datas, quando disponíveis.
cache e request_idRegistrar a origem indicada e a operação consultada.

Validação de contatos no Salesforce, HubSpot e Zoho CRM

No Salesforce, HubSpot, Pipedrive ou Zoho CRM, a consulta pode compor uma etapa de conferência do contato antes de avançar o processo comercial. Restrinja o acesso aos dados pessoais às pessoas e rotinas autorizadas e mantenha a API key fora do navegador.

Escolha a estratégia de consulta considerando os custos de cache e online descritos na seção Custos. O resultado cadastral não representa uma análise de crédito. Use o JSON Schema da resposta e trate a ausência de serpro_result antes de mapear campos.

JSON Schema da Resposta

O schema usa JSON Schema Draft 2020-12. Os campos de negócio podem ser omitidos ou nulos quando não há informação disponível ou quando ocorre um erro. Valide também success e error antes de atualizar o cadastro. Propriedades adicionais são aceitas para permitir evolução compatível. O schema descreve o corpo JSON; o código HTTP deve ser tratado separadamente.

Este schema representa o layout padrão format=SINTEGRAPI. As três propriedades de data aceitam ddMMyyyy ou yyyy-MM-dd, conforme o date_format escolhido na requisição; o padrão é ddMMyyyy. Com format=SERPRO, os campos de serpro_result ficam diretamente no corpo e updated_at não é incluído.

JSON Schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "CPF Receita Federal — Resposta",
  "type": "object",
  "properties": {
    "request_id": { "type": "string", "format": "uuid" },
    "success": {
      "type": "boolean",
      "description": "Resultado funcional da consulta; avalie junto com error."
    },
    "error": {
      "type": "boolean",
      "description": "Indica falha técnica ou de validação."
    },
    "error_message": {
      "type": ["object", "null"],
      "properties": {
        "message": {
          "type": ["string", "null"],
          "description": "Mensagem pública da consulta."
        },
        "code": {
          "type": ["string", "null"],
          "description": "Código público, quando informado."
        }
      }
    },
    "serpro_result": {
      "type": ["object", "null"],
      "description": "Dados cadastrais retornados pela Receita Federal. Presente apenas quando success=true.",
      "properties": {
        "ni": {
          "type": ["string", "null"],
          "description": "Número de Inscrição (CPF) do contribuinte, sem formatação."
        },
        "nome": {
          "type": ["string", "null"],
          "description": "Nome completo da pessoa física."
        },
        "situacao": {
          "type": ["object", "null"],
          "description": "Situação cadastral do CPF.",
          "properties": {
            "codigo": {
              "type": ["string", "null"],
              "description": "Código da situação: 0=Regular, 2=Suspensa, 3=Titular Falecido, 4=Pendente de Regularização, 5=Cancelada por Multiplicidade, 8=Nula, 9=Cancelada de Ofício."
            },
            "descricao": {
              "type": ["string", "null"],
              "description": "Descrição textual da situação cadastral."
            }
          }
        },
        "nascimento": {
          "type": ["string", "null"],
          "pattern": "^([0-9]{8}|[0-9]{4}-[0-9]{2}-[0-9]{2})$",
          "description": "Data de nascimento em ddMMyyyy (padrão) ou yyyy-MM-dd, conforme date_format."
        },
        "data_inscricao": {
          "type": ["string", "null"],
          "pattern": "^([0-9]{8}|[0-9]{4}-[0-9]{2}-[0-9]{2})$",
          "description": "Data de inscrição no CPF em ddMMyyyy (padrão) ou yyyy-MM-dd, conforme date_format."
        },
        "code": { "type": ["string", "null"] },
        "message": { "type": ["string", "null"] },
        "description": { "type": ["string", "null"] },
        "updated_at": {
          "type": ["string", "null"],
          "pattern": "^([0-9]{8}|[0-9]{4}-[0-9]{2}-[0-9]{2})$",
          "description": "Data de atualização do cadastro em ddMMyyyy (padrão) ou yyyy-MM-dd, conforme date_format, quando informada."
        }
      }
    },
    "cache": {
      "type": ["boolean", "null"],
      "description": "Indicação de cache apresentada pela consulta."
    }
  },
  "required": ["request_id", "success", "error"],
  "additionalProperties": true
}

Esta página foi útil?