Regimes tributários

Consulte as formas de tributação registradas na base de Escrituração Contábil Fiscal (ECF) para um CNPJ completo. A resposta reúne os regimes do ano mais recente disponível, seu histórico anual e os identificadores de Sociedades em Conta de Participação (SCP), quando presentes.

A ECF contém informações relacionadas ao IRPJ e à CSLL. O período da escrituração é distinto da data da consulta: a entrega ocorre, em regra, no ano seguinte ao ano-calendário informado. Por isso, ano_referencia identifica a informação histórica disponível e não comprova o regime vigente hoje. Fonte: Receita Federal — ECF.

GET/consultas/v2/regimes-tributarios/{cnpj}

Endpoint

Endereço oficial: https://api.sintegrapi.com.br.

Autenticação pelo cabeçalho x-api-key, conforme a documentação de autenticação. Envie o CNPJ completo, preferencialmente sem pontuação, preservando zeros iniciais. A validação aceita CNPJ numérico e alfanumérico conforme o padrão da API. O CNPJ consultado é exatamente o informado; uma filial não é substituída automaticamente pela matriz.

Não há parâmetro de ano, UF ou estratégia de cache. A consulta retorna todo o histórico disponível para esse documento. Os dados podem ser reutilizados por até 24 horas; esse prazo não representa a frequência de atualização da base ECF.

curl 'https://api.sintegrapi.com.br/consultas/v2/regimes-tributarios/11222333000181' \
  -H 'x-api-key: SUA_API_KEY' \
  -H 'Accept: application/json'

Exemplo de integração em JavaScript no servidor:

const cnpj = '11222333000181';
const resposta = await fetch(
  `https://api.sintegrapi.com.br/consultas/v2/regimes-tributarios/${cnpj}`,
  { headers: { 'x-api-key': process.env.SINTEGRAPI_API_KEY } },
);
const dados = await resposta.json();
if (resposta.status === 200) {
  // Analise todos os itens e preserve o ano de referência.
  console.log(dados.ano_referencia, dados.regimes);
} else if (resposta.status === 404 && dados.error === false) {
  // Consulta concluída, sem registros ECF disponíveis; custa 1 crédito.
  console.log('Sem registros ECF disponíveis');
} else {
  throw new Error(dados.error_message?.message ?? 'Consulta não concluída');
}

Mantenha a chave no backend da sua integração. Os documentos, nomes e períodos dos exemplos são fictícios e ilustrativos.

Uso no CNPJ multifonte

A mesma consulta está disponível no CNPJ multifonte com regimes_tributarios=true. Essa fonte é desabilitada por padrão e custa 1 crédito adicional quando conclui, inclusive sem registros. O contrato abaixo aparece em fontes.regimes_tributarios.dados, com o status individual em fontes.regimes_tributarios.status_http. O status HTTP do envelope segue as regras do multifonte: uma fonte sem registros não é uma falha técnica.

Custo e estados HTTP

SituaçãoHTTPsuccesserrorConsumo normal
Há registros ECF200truefalse1 crédito
CNPJ válido, sem registros ECF404falsefalse1 crédito
CNPJ inválido400falsetrue0
Credencial ausente ou inválida401Conforme contrato de autenticaçãoConforme contrato de autenticação0
Saldo insuficiente402falsetrue0
Limite de requisições atingido429Conforme contrato de rate limitingConforme contrato de rate limiting0
Fonte de dados indisponível ou timeout da consulta503falsetrue0

Cada requisição concluída custa 1 crédito, inclusive HTTP 404 e respostas reutilizadas. O número de anos, regimes ou SCPs não aumenta o preço. Repetir uma chamada concluída gera uma nova consulta e novo consumo. Pré-pagos usam saldo; pós-pagos registram consumo conforme seu contrato. As isenções existentes de homologação continuam aplicáveis.

No HTTP 503 não há confirmação da cobrança; a reserva é compensada. Em interrupção de conexão, consulte o histórico pelo request_id disponível antes de repetir, pois o cliente pode não ter recebido uma resposta já concluída. Veja planos e consumo.

Resposta com registros

Exemplo fictício com dois anos e uma SCP. Os itens do último ano também aparecem no primeiro elemento de historico; não some as duas listas como registros distintos.

{
  "request_id": "b328aa70-146b-48bd-a280-4fb47836cf70",
  "success": true,
  "error": false,
  "cnpj": "11222333000181",
  "razao_social": "EMPRESA FICTÍCIA LTDA",
  "encontrado": true,
  "fonte": "Receita Federal / ECF",
  "ano_referencia": 2024,
  "regimes": [
    {
      "regime": "LUCRO REAL",
      "cnpj_scp": null,
      "razao_social_scp": null,
      "scp_tipo": null,
      "quantidade_escrituracoes": 2
    },
    {
      "regime": "LUCRO PRESUMIDO",
      "cnpj_scp": "00000000000001",
      "razao_social_scp": "SCP FICTÍCIA",
      "scp_tipo": "CNPJ",
      "quantidade_escrituracoes": 1
    }
  ],
  "historico": [
    {
      "ano_referencia": 2024,
      "regimes": [
        {
          "regime": "LUCRO REAL",
          "cnpj_scp": null,
          "razao_social_scp": null,
          "scp_tipo": null,
          "quantidade_escrituracoes": 2
        },
        {
          "regime": "LUCRO PRESUMIDO",
          "cnpj_scp": "00000000000001",
          "razao_social_scp": "SCP FICTÍCIA",
          "scp_tipo": "CNPJ",
          "quantidade_escrituracoes": 1
        }
      ]
    },
    {
      "ano_referencia": 2023,
      "regimes": [
        {
          "regime": "LUCRO PRESUMIDO",
          "cnpj_scp": null,
          "razao_social_scp": null,
          "scp_tipo": null,
          "quantidade_escrituracoes": 1
        }
      ]
    }
  ]
}

Campos da resposta

CampoTipoInterpretação
request_idstring UUIDIdentificador desta requisição; muda a cada chamada.
successbooleanHá registros ECF quando true.
errorbooleanFalha técnica/operacional quando true; avalie antes dos dados.
error_messageobjeto opcionalcode e message descrevem ausência ou falha.
cnpjstringDocumento completo normalizado, com zeros e letras preservados.
razao_socialstring ou nullNome disponível na base cadastral; pode faltar mesmo havendo ECF.
encontradobooleanExistem fatos ECF para esse CNPJ, quando error=false.
fontestringIdentificação Receita Federal / ECF.
ano_referenciainteiro ou nullMaior ano disponível para o CNPJ; null quando não há registros.
regimeslistaTodas as formas de tributação do último ano disponível.
historicolistaGrupos por ano, do mais recente para o mais antigo.
historico[].ano_referenciainteiroAno do respectivo grupo.
historico[].regimeslistaMesma estrutura dos itens de regimes.
regimes[].regimestring ou nullForma de tributação tal como registrada na base.
regimes[].cnpj_scpstring ou nullIdentificador da SCP; interprete em conjunto com scp_tipo.
regimes[].razao_social_scpstring ou nullNome cadastral encontrado quando o identificador é do tipo CNPJ.
regimes[].scp_tipostring ou nullTipo de identificador informado pela base; CNPJ permite o vínculo cadastral.
regimes[].quantidade_escrituracoesinteiro ou nullQuantidade de escriturações registrada naquele agrupamento, não número de empresas.

Regimes, SCP e histórico

As formas podem incluir Lucro Real, Lucro Presumido, Lucro Arbitrado, imunes e isentas do IRPJ. Trate os textos como valores abertos: não reduza toda a resposta ao primeiro item nem descarte combinações retornadas pela fonte.

Cada SCP tem escrituração própria, conforme as orientações oficiais da Receita Federal. Preserve o vínculo de cada item com sua SCP; um regime associado a uma SCP não deve ser automaticamente atribuído à empresa consultada. Identificadores históricos podem não ser CNPJs. Um nome de SCP nulo significa que esse enriquecimento não está disponível, sem invalidar o registro ECF.

A ordem dos itens acompanha a chave de SCP e a forma de tributação da base. Ela não indica prioridade, vigência ou preferência de regime. Não há garantia de um registro para todos os anos.

Ausência de registros

O HTTP 404 abaixo é um resultado concluído e cobrável. A razão social pode vir preenchida se o CNPJ existir na base cadastral, mesmo sem fatos ECF.

{
  "request_id": "ab718761-04a9-4bd7-9fac-c7e5631d726e",
  "success": false,
  "error": false,
  "error_message": {
    "code": "REGIMES_TRIBUTARIOS_NAO_ENCONTRADOS",
    "message": "Nenhum registro de regime tributário foi encontrado para este CNPJ na base ECF disponível."
  },
  "cnpj": "11222333000181",
  "razao_social": null,
  "encontrado": false,
  "fonte": "Receita Federal / ECF",
  "ano_referencia": null,
  "regimes": [],
  "historico": []
}

Ausência de ECF não demonstra que o CNPJ seja inválido, esteja inativo ou seja optante do Simples/MEI. Para essa informação, utilize a consulta de Simples Nacional e SIMEI, com cobrança própria. A ECF histórica também não determina, isoladamente, enquadramento de IBS/CBS ou direito a créditos desses tributos.

Falha de leitura

HTTP 503 utiliza error=true, success=false e error_message.code igual a REGIMES_TRIBUTARIOS_INDISPONIVEIS. As listas vazias e encontrado=false desse erro não representam uma pesquisa concluída sem registros. Preserve os dados anteriores da sua integração até obter uma resposta válida.

JSON Schema

Baixar JSON Schema Draft 2020-12. O schema descreve as respostas desta consulta (200, 404 e 503); autenticação, validação e limites seguem os contratos gerais da API. Campos adicionais devem ser tolerados para evolução compatível.

Integração com sistemas

Armazene CNPJ, ano de referência, fonte e request_id com o resultado. Modele regimes e historico como coleções e preserve os identificadores de SCP. Em ERP ou sistema contábil, mantenha a informação histórica em campo próprio e encaminhe divergências para revisão fiscal. Em cadastro de fornecedores, use a consulta como enriquecimento, combinada às verificações cadastrais e tributárias pertinentes.

Esta página foi útil?