FiscalAPI
Consulta IE

API do SINTEGRA: inscrição estadual nos 27 estados numa chamada

Consulta a Inscrição Estadual (IE) de um CNPJ, CPF ou IE nos 27 estados de uma vez e devolve a situação de cada inscrição por UF.

Atualizado em

GET /api/consultar-ie-todos devolve, numa chamada só, as inscrições estaduais de um CNPJ, CPF ou IE nos 27 estados, com a situação de cada uma (Habilitado ou Não habilitado), e conta como 1 consulta (de R$ 0,025 a R$ 0,67, conforme o plano).

É o que muita gente procura como "API do SINTEGRA": em vez de abrir o SINTEGRA de cada estado, você manda o documento uma vez e recebe a resposta de todas as UFs agrupada por estado. Se já sabe a UF, use Consultar IE por UF.

Resumo

ItemValor
EndpointGET https://api.fiscalapi.com.br/api/consultar-ie-todos
Você enviacnpj, cpf ou ie (um dos três)
Cobertura27 UFs na mesma chamada
VoltaLista por UF com as inscrições, situação, endereço, CNAE e regime de cada uma
FormatoJSON
AutenticaçãoHeader X-API-Key (como obter)

Quanto custa cada chamada

ChamadaConta comoLiteStarterProEnterprise
27 UFs (/api/consultar-ie-todos)1 consultaR$ 0,67R$ 0,10R$ 0,065R$ 0,025
1 UF (/api/consultar)1 consultaR$ 0,67R$ 0,10R$ 0,065R$ 0,025

Valores por consulta dentro da franquia mensal: Lite R$ 19,99 por 30 consultas, Starter R$ 50 por 500, Pro R$ 130 por 2.000 e Enterprise R$ 250 por 10.000. Depois da franquia, a recarga sai a R$ 0,12 (Starter), R$ 0,07 (Pro) ou R$ 0,02 (Enterprise). Veja Planos e limites.

  • Não é cobrada a chamada que volta erro HTTP (400, 402, 429, 500) nem a que falha em todos os estados.
  • É cobrada a chamada em que pelo menos um estado respondeu, mesmo que outros tenham falhado (complete: false). Estado que respondeu sem inscrição também é resposta: o documento não tem IE ali.

Parâmetros de consulta

NomeTipoObrigatórioDescrição
cnpjstringNãoCNPJ do contribuinte (14 posições, sem pontuação).
cpfstringNãoCPF do contribuinte (11 dígitos, só números).
iestringNãoNúmero da Inscrição Estadual. Pontuação é ignorada.
secundariasbooleanNãotrue busca no estado as atividades secundárias de cada inscrição. Padrão false. Veja Atividades secundárias.

Informe exatamente um de cpf, cnpj ou ie. Nenhum ou mais de um volta erro 400.

Exemplos

Consultar todas as UFs por CNPJ

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

response = requests.get(
    "https://api.fiscalapi.com.br/api/consultar-ie-todos",
    headers={"X-API-Key": "fapi_sua_chave_aqui"},
    params={"cnpj": "12345678000195"},
)
data = response.json()
for estado in data["results"]:
    for ie in estado["results"]:
        print(estado["uf"], ie["inscricao_estadual"], ie["situacao_ie"])
$response = Http::withHeaders([
    'X-API-Key' => 'fapi_sua_chave_aqui',
])->get('https://api.fiscalapi.com.br/api/consultar-ie-todos', [
    '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-ie-todos?cnpj=12345678000195"
);
var data = await response.Content.ReadAsStringAsync();

Produtor rural por CPF

Produtor rural pessoa física costuma ter IE no CPF, às vezes em mais de um estado. A mesma chamada com cpf traz todas, exceto em SP, onde a busca pelo CPF não encontra a inscrição e a consulta é pela própria IE. Mais detalhes em Produtor rural por CPF.

curl -X GET "https://api.fiscalapi.com.br/api/consultar-ie-todos?cpf=12345678909" \
  -H "X-API-Key: fapi_sua_chave_aqui"
import requests

response = requests.get(
    "https://api.fiscalapi.com.br/api/consultar-ie-todos",
    headers={"X-API-Key": "fapi_sua_chave_aqui"},
    params={"cpf": "12345678909"},
)
for estado in response.json()["results"]:
    print(f"{estado['uf']}: {len(estado['results'])} IE(s)")

Descobrir o estado de uma IE

Com ie, você não precisa saber a UF: o número é procurado em todos os estados e volta na UF a que pertence.

curl -X GET "https://api.fiscalapi.com.br/api/consultar-ie-todos?ie=131234560" \
  -H "X-API-Key: fapi_sua_chave_aqui"
const response = await fetch(
  "https://api.fiscalapi.com.br/api/consultar-ie-todos?ie=131234560",
  { headers: { "X-API-Key": "fapi_sua_chave_aqui" } }
);
const data = await response.json();
const encontrada = data.results.find((estado) => estado.results.length > 0);
console.log(encontrada?.uf, encontrada?.results);

Só uma UF

Quando a UF já é conhecida, GET /api/consultar?uf=MT&cnpj=... responde mais rápido e custa o mesmo. Veja Consultar IE por UF.

Resposta

Campos de nível superior

CampoTipoDescrição
request_idstringIdentificador único da requisição (UUID).
documentstringDocumento enviado na consulta.
document_typestringTipo do documento: cpf, cnpj ou ie.
cached_ufsarrayUFs cujo resultado veio do cache.
ambientestringproducao ou homologacao. Com chave de teste (fapi_test_) vem homologacao e os dados são fictícios (Homologação).
resultsarrayLista de resultados por estado.
completebooleanfalse quando algum estado terminou em error ou timeout. Nesse caso, resultado vazio não quer dizer "não encontrado": a inscrição pode estar justamente no estado que falhou.

Campos de cada estado (results[])

CampoTipoDescrição
ufstringSigla do estado.
source_statusobjectStatus da consulta neste estado.
source_status.statusstringsuccess, error ou timeout.
source_status.error_codestringCódigo de erro (vazio se sucesso).
source_status.error_messagestringMensagem de erro (vazio se sucesso).
data_atualizacaostring | nullData e hora em que os dados deste estado foram obtidos na fonte oficial, em ISO 8601 com o fuso de Brasília (ex.: 2026-10-23T09:41:12-03:00). Para estado listado em cached_ufs, é o momento da consulta original à fonte. null quando o estado não foi consultado ou terminou em error, timeout ou skipped.
resultsarrayInscrições encontradas neste estado. Lista vazia quando não há IE.

A data fica em cada estado, e não no topo da resposta, porque na mesma consulta um estado pode vir da fonte naquele momento e outro do cache, obtido antes.

Cada item de results[].results[] tem os campos de Consultar IE por UF, inclusive situacao_ie, tipo_ie, endereço, CNAE e cnaes_secundarios.

Exemplo de resposta

{
  "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "document": "12345678909",
  "document_type": "cpf",
  "cached_ufs": ["RO"],
  "complete": true,
  "results": [
    {
      "uf": "MT",
      "source_status": { "status": "success", "error_code": "", "error_message": "" },
      "data_atualizacao": "2026-10-23T09:41:12-03:00",
      "results": [
        {
          "inscricao_estadual": "13.123.456-0",
          "razao_social": "JOAO DA SILVA FAZENDA SANTA MARIA",
          "situacao_ie": "Habilitado",
          "uf_ie": "MT",
          "tipo_ie": "IE de Produtor Rural"
        }
      ]
    },
    {
      "uf": "RO",
      "source_status": { "status": "success", "error_code": "", "error_message": "" },
      "data_atualizacao": "2026-10-22T18:05:47-03:00",
      "results": []
    }
  ]
}

Quando um estado falha (portal fora do ar, por exemplo), os outros continuam sendo consultados. Confira o source_status de cada UF e o campo complete antes de concluir que o documento não tem IE.

Códigos de erro

CódigoHTTP StatusDescrição
PARAMETRO_AUSENTE400Nenhum documento (cpf, cnpj ou ie) foi informado.
PARAMETRO_CONFLITANTE400Mais de um documento (cpf, cnpj, ie) foi enviado.
DOCUMENTO_INVALIDO400O documento informado não contém dígitos.
ERRO_INTERNO500Erro interno no servidor.

Integração com ERPs

Não existe conector pronto: a integração é uma chamada HTTP GET com o header X-API-Key, feita de onde o seu sistema já fala com a internet. O lugar comum é o cadastro de clientes e fornecedores, antes de emitir a nota.

SistemaComo chamar a API REST
TOTVS ProtheusNum fonte ADVPL/TLPP, com a classe FWRest ou a função HttpGet, por exemplo num ponto de entrada do cadastro de clientes.
SAP (ECC, S/4HANA)Em ABAP, com cl_http_client, ou por um fluxo no SAP Integration Suite.
SankhyaPor um serviço intermediário (script, n8n, Make) que chama a FiscalAPI e grava o resultado pela API do Sankhya.
SeniorPelo mesmo caminho: um serviço intermediário que chama a FiscalAPI e atualiza o cadastro pelas APIs da plataforma Senior.
OmieUm serviço intermediário chama a FiscalAPI e atualiza o cliente pela API do Omie.
BlingUm serviço intermediário chama a FiscalAPI e atualiza o contato pela API v3 do Bling.
OdooNum módulo próprio em Python, com requests.

Para planilhas grandes sem programar, o painel aceita um Excel com a lista de documentos: veja consulta de IE em massa.

Perguntas frequentes

Existe API do SINTEGRA?

Sim. A FiscalAPI tem uma API REST que faz o papel da consulta SINTEGRA: GET /api/consultar-ie-todos recebe CNPJ, CPF ou IE e devolve em JSON as inscrições estaduais e a situação de cada uma nos 27 estados, numa chamada só. Para um estado específico, use GET /api/consultar com o parâmetro uf.

Quanto custa consultar a IE nos 27 estados?

Cada chamada conta como 1 consulta, para as 27 UFs juntas: R$ 0,025 no Enterprise, R$ 0,065 no Pro, R$ 0,10 no Starter e R$ 0,67 no Lite, dentro da franquia do plano. Erro HTTP e falha em todos os estados não são cobrados.

Dá para consultar inscrição estadual em massa?

Sim. Pela API, faça uma chamada por documento, respeitando o limite por minuto do plano (5 no Lite, 20 no Starter, 60 no Pro, 120 no Enterprise). Pelo painel, envie uma planilha Excel com a lista.

Como saber se a inscrição estadual está ativa?

Olhe o campo situacao_ie de cada inscrição: Habilitado ou Não habilitado (compare sem diferenciar maiúsculas). O campo situacao_contribuinte mostra restrições como "Vedada operação como Destinatário na UF".

Consulta por CPF funciona para produtor rural?

Sim. Envie cpf e a resposta traz as inscrições de produtor rural daquele CPF nos estados, com tipo_ie igual a IE de Produtor Rural quando o estado informa. A exceção é SP: lá a busca pelo CPF não encontra a inscrição, e a consulta é pela própria IE. Veja Produtor rural por CPF.

API de Inscrição Estadual em lote · Planos e preços

Esta pagina foi util?

On this page