FiscalAPI
Enriquecimento

Consultar CNPJ

Consulta dados cadastrais de um CNPJ na Receita Federal (razão social, CNAE, QSA, endereço, Simples Nacional e MEI, contato e mais).

GET /api/consultar-cnpj

Consulta os dados cadastrais de uma empresa na Receita Federal pelo CNPJ. Retorna razão social, situação cadastral (com motivo e situação especial), data de abertura, matriz ou filial, CNAE principal e secundários, quadro societário (QSA), capital social, endereço, telefones, e-mail (quando a Receita Federal o publica) e a opção pelo Simples Nacional e pelo MEI.

Autenticação

Envie sua chave no header X-API-Key. Veja Autenticação para detalhes.

Parâmetros de consulta

NameTypeRequiredDescription
cnpjstringSimCNPJ do contribuinte (somente números, 14 dígitos).
force_freshbooleanNãoQuando true, consulta os dados AO VIVO na Receita Federal (dados atuais), em vez da base pública mensal. Conta como 3 consultas (padrão: false, 1 consulta).

Frescor dos dados: base mensal vs ao vivo

Por padrão a consulta usa a base pública mensal da Receita Federal — rápida e barata (1 consulta), mas pode estar defasada em até ~1 mês (ex.: uma empresa que mudou de natureza jurídica recentemente ainda pode aparecer com os dados antigos).

Para o dado atual, use force_fresh=true: a consulta vai ao vivo ao serviço da Receita no momento da chamada e retorna o cadastro atualizado.

Consulta ao vivo (force_fresh=true) conta como 3 consultas (contra 1 da consulta normal), pode levar alguns segundos a mais e reflete o dado atual da Receita. Consultas repetidas do mesmo CNPJ em um curto intervalo são servidas de cache (sem custo adicional de processamento).

Simples Nacional e MEI

Os campos de Simples Nacional e MEI (opcao_pelo_simples, opcao_pelo_mei e as datas) vêm sempre da base pública mensal da Receita Federal, não de consulta ao vivo. Mudanças recentes de opção ou exclusão podem levar até ~1 mês para aparecer.

Para a situação atual, consultada ao vivo na Receita, com regime regular de IBS/CBS e eventos futuros, use a Consulta Simples Nacional.

Na consulta ao vivo (force_fresh=true), esses campos voltam null: o cadastro consultado ao vivo não traz a opção pelo Simples. Se precisar dos dois, faça também a consulta padrão.

Quadro societário e regime tributário

Cada sócio do qsa traz, além do nome e da qualificação, o CPF ou CNPJ, o tipo (pessoa física, jurídica ou estrangeiro), a data de entrada na sociedade, a faixa etária, o país (sócio no exterior) e o representante legal, quando houver. O CPF vem mascarado, no formato em que a Receita Federal o publica (***123456**); o CNPJ de sócio pessoa jurídica vem completo, só com dígitos.

O regime_tributario traz a forma de tributação declarada em cada ano (ex.: LUCRO REAL, LUCRO PRESUMIDO), da base pública mensal.

Na consulta ao vivo (force_fresh=true), o nome e a qualificação dos sócios são os do dia. Os demais campos de cada sócio e o regime_tributario vêm da base mensal, para os sócios que já constam nela; sócio que entrou depois da última base volta com esses campos null.

Datas de opção ou de exclusão em 2007-07-01 (Simples Nacional) ou 2009-07-01 (MEI) são as datas de início de cada regime, como a Receita Federal as publica, e não a data em que a empresa fez a opção.

Campos que podem vir null

Os campos data_inicio_atividade em diante na tabela abaixo voltam null quando a informação não está disponível para aquele CNPJ. null quer dizer "não informado", nunca "não". Exemplo: opcao_pelo_simples: null não significa que a empresa não é optante, e sim que a base não traz registro de opção para ela (o caso comum de quem nunca optou). Só false indica que a empresa não é optante.

Telefones e e-mail, quando vêm, são os do cadastro público do CNPJ, devolvidos como a Receita Federal publica. No MEI e no empresário individual, costumam ser contatos pessoais do titular: trate-os conforme a LGPD na sua aplicação.

CNPJ com Inscrição Estadual

Esta consulta traz o cadastro da Receita Federal, que não inclui a Inscrição Estadual: a IE é cadastro de cada estado. Para ter a IE do mesmo CNPJ, use a mesma chave em /api/consultar-ie-todos. Ela procura o CNPJ nos 27 estados numa chamada (1 consulta) e devolve, por estado, a inscrição, a situação cadastral e a habilitação para NF-e. Cadastro da Receita (consulta padrão) + IE = 2 consultas; com force_fresh=true, 4.

curl "https://api.fiscalapi.com.br/api/consultar-ie-todos?cnpj=12345678000195" \
  -H "X-API-Key: fapi_sua_chave_aqui"

Exemplos de código

curl -X GET "https://api.fiscalapi.com.br/api/consultar-cnpj?cnpj=12345678000195" \
  -H "X-API-Key: fapi_sua_chave_aqui"
const response = await fetch(
  "https://api.fiscalapi.com.br/api/consultar-cnpj?cnpj=12345678000195",
  { headers: { "X-API-Key": "fapi_sua_chave_aqui" } }
);
const data = await response.json();
console.log(data.result);
import requests

response = requests.get(
    "https://api.fiscalapi.com.br/api/consultar-cnpj",
    headers={"X-API-Key": "fapi_sua_chave_aqui"},
    params={"cnpj": "12345678000195"},
)
data = response.json()
print(data["result"])
$response = Http::withHeaders([
    'X-API-Key' => 'fapi_sua_chave_aqui',
])->get('https://api.fiscalapi.com.br/api/consultar-cnpj', [
    'cnpj' => '12345678000195',
]);
$data = $response->json();
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-API-Key", "fapi_sua_chave_aqui");
var response = await client.GetAsync(
    "https://api.fiscalapi.com.br/api/consultar-cnpj?cnpj=12345678000195"
);
var data = await response.Content.ReadAsStringAsync();

Resposta

Campos de nível superior

CampoTipoDescrição
request_idstringIdentificador único da requisição (UUID).
cnpjstringCNPJ consultado.
cachedbooleanIndica se o resultado veio do cache.
source_statusobjectStatus da consulta na Receita Federal.
source_status.statusstringsuccess ou error.
source_status.error_codestringCódigo de erro (vazio se sucesso).
source_status.error_messagestringMensagem de erro (vazio se sucesso).
resultobjectDados cadastrais do CNPJ.

Campos do resultado (result)

CampoTipoDescrição
razao_socialstringRazão social da empresa.
nome_fantasiastringNome fantasia.
situacao_cadastralstringSituação cadastral: ATIVA, BAIXADA, SUSPENSA, etc.
data_situacao_cadastralstringData da situação cadastral (formato YYYY-MM-DD).
cnae_principal_codigostringCódigo CNAE da atividade principal.
cnae_principal_descricaostringDescrição da atividade principal.
cnaes_secundariosarrayLista de CNAEs secundários.
cnaes_secundarios[].codigostringCódigo do CNAE secundário.
cnaes_secundarios[].descricaostringDescrição do CNAE secundário.
natureza_juridicastringNatureza jurídica da empresa.
natureza_juridica_codigostring | nullCódigo da natureza jurídica com 4 dígitos (ex.: 2062).
ente_federativo_responsavelstring | nullEnte federativo responsável, só para órgãos e entidades públicas (ex.: UNIÃO). null nos demais.
capital_socialstringCapital social (valor decimal como string).
enderecoobjectEndereço da empresa.
endereco.logradourostringLogradouro.
endereco.numerostringNúmero.
endereco.complementostringComplemento do endereço (ex: GALPAO 2).
endereco.bairrostringBairro.
endereco.municipiostringMunicípio.
endereco.ufstringUF.
endereco.cepstringCEP.
endereco.codigo_ibgestringCódigo IBGE do município (7 dígitos).
endereco.tipo_logradourostringTipo do logradouro (ex.: AVENIDA, RUA), quando a fonte o separa do logradouro. Vazio quando o tipo já vem dentro do logradouro.
qsaarrayQuadro de Sócios e Administradores.
qsa[].nomestringNome do sócio.
qsa[].qualificacaostringQualificação do sócio.
qsa[].cpf_cnpjstring | nullCPF mascarado como a Receita publica (***123456**) ou CNPJ do sócio pessoa jurídica, só dígitos. Sócio no exterior pode vir só com a raiz (8 dígitos).
qsa[].tipostring | nullPESSOA FISICA, PESSOA JURIDICA ou ESTRANGEIRO.
qsa[].data_entrada_sociedadestring | nullData de entrada na sociedade (YYYY-MM-DD).
qsa[].faixa_etariastring | nullFaixa etária do sócio pessoa física (ex.: 41-50, 80+).
qsa[].paisstring | nullPaís do sócio domiciliado no exterior. null para sócio no Brasil.
qsa[].representante_legalobject | nullRepresentante legal do sócio (menor, incapaz ou sócio no exterior). null quando não há.
qsa[].representante_legal.nomestringNome do representante.
qsa[].representante_legal.cpfstring | nullCPF mascarado do representante.
qsa[].representante_legal.qualificacaostring | nullQualificação do representante (ex.: Procurador).
portestringPorte da empresa (ex: PEQUENO PORTE, DEMAIS).
data_inicio_atividadestring | nullData de abertura (formato YYYY-MM-DD).
matriz_filialstring | nullMATRIZ ou FILIAL.
motivo_situacao_cadastralstring | nullMotivo da situação cadastral (ex.: SEM MOTIVO).
situacao_especialstring | nullSituação especial (ex.: recuperação judicial). null quando não há.
data_situacao_especialstring | nullData da situação especial (formato YYYY-MM-DD).
telefonesarray | nullTelefones do cadastro, DDD + número, só dígitos (ex.: ["6533334444"]). Lista vazia quando não há telefone cadastrado.
emailstring | nullE-mail do cadastro, quando a Receita Federal o publica. Vem principalmente na consulta ao vivo (force_fresh=true); na consulta padrão costuma voltar null.
opcao_pelo_simplesboolean | nulltrue se optante pelo Simples Nacional, false se não. Base mensal; null sem registro de opção e na consulta ao vivo.
data_opcao_pelo_simplesstring | nullData da opção pelo Simples Nacional (YYYY-MM-DD).
data_exclusao_do_simplesstring | nullData da exclusão do Simples Nacional (YYYY-MM-DD).
opcao_pelo_meiboolean | nulltrue se enquadrado no MEI, false se não. Base mensal; null sem registro e na consulta ao vivo.
data_opcao_pelo_meistring | nullData do enquadramento no MEI (YYYY-MM-DD).
data_exclusao_do_meistring | nullData do desenquadramento do MEI (YYYY-MM-DD).
regime_tributarioarray | nullForma de tributação declarada por ano, do mais antigo ao mais recente. Lista vazia quando a base não tem declaração para o CNPJ.
regime_tributario[].anointegerAno-calendário.
regime_tributario[].forma_de_tributacaostringForma de tributação (ex.: LUCRO REAL, LUCRO PRESUMIDO).
regime_tributario[].quantidade_de_escrituracoesinteger | nullQuantidade de escriturações entregues no ano.

Exemplo de resposta

{
  "request_id": "550e8400-e29b-41d4-a716-446655440000",
  "cnpj": "12345678000195",
  "cached": false,
  "source_status": {
    "status": "success",
    "error_code": "",
    "error_message": ""
  },
  "result": {
    "razao_social": "AGROPECUARIA BOA VISTA LTDA",
    "nome_fantasia": "FAZENDA BOA VISTA",
    "situacao_cadastral": "ATIVA",
    "data_situacao_cadastral": "2010-05-20",
    "cnae_principal_codigo": "0151-2/01",
    "cnae_principal_descricao": "CRIACAO DE BOVINOS PARA CORTE",
    "cnaes_secundarios": [
      {
        "codigo": "0111-3/01",
        "descricao": "CULTIVO DE ARROZ"
      }
    ],
    "natureza_juridica": "206-2 - Sociedade Empresaria Limitada",
    "capital_social": "500000.00",
    "endereco": {
      "logradouro": "ROD BR-364 KM 28",
      "numero": "S/N",
      "complemento": "GALPAO 2",
      "bairro": "ZONA RURAL",
      "municipio": "CUIABA",
      "uf": "MT",
      "cep": "78000-000",
      "codigo_ibge": "5103403",
      "tipo_logradouro": "RODOVIA"
    },
    "qsa": [
      {
        "nome": "JOAO DA SILVA",
        "qualificacao": "Socio-Administrador",
        "cpf_cnpj": "***123456**",
        "tipo": "PESSOA FISICA",
        "data_entrada_sociedade": "2010-05-20",
        "faixa_etaria": "41-50",
        "pais": null,
        "representante_legal": null
      }
    ],
    "porte": "PEQUENO PORTE",
    "data_inicio_atividade": "2010-05-20",
    "matriz_filial": "MATRIZ",
    "motivo_situacao_cadastral": "SEM MOTIVO",
    "situacao_especial": null,
    "data_situacao_especial": null,
    "telefones": ["6533334444"],
    "email": null,
    "opcao_pelo_simples": true,
    "data_opcao_pelo_simples": "2010-06-01",
    "data_exclusao_do_simples": null,
    "opcao_pelo_mei": false,
    "data_opcao_pelo_mei": null,
    "data_exclusao_do_mei": null,
    "natureza_juridica_codigo": "2062",
    "ente_federativo_responsavel": null,
    "regime_tributario": [
      {
        "ano": 2023,
        "forma_de_tributacao": "LUCRO PRESUMIDO",
        "quantidade_de_escrituracoes": 1
      },
      {
        "ano": 2024,
        "forma_de_tributacao": "LUCRO PRESUMIDO",
        "quantidade_de_escrituracoes": 1
      }
    ]
  }
}

Códigos de erro

CódigoHTTP StatusDescrição
PARAMETRO_AUSENTE400O parâmetro cnpj não foi informado.
DOCUMENTO_INVALIDO400O CNPJ informado não é válido.
CNPJ_NAO_ENCONTRADO404Nenhum registro encontrado para o CNPJ informado.
SITE_INDISPONIVEL503O serviço da Receita Federal está indisponível no momento.
RF_LIVE_ERROR502Falha temporária na consulta ao vivo (force_fresh=true). Tente novamente.
LIMITE_ATINGIDO402Saldo de consultas insuficiente (a consulta ao vivo conta como 3).
ERRO_INTERNO500Erro interno no servidor.

API de consulta CNPJ · Planos e preços

Esta pagina foi util?

On this page