Consultar parcelamentos de um CNPJ com a Receita Federal pela API
A Receita Federal publica todo mês, em dados abertos, a base dos parcelamentos ativos de tributos federais: quem tem parcelamento em andamento, de que tipo, quanto foi parcelado e qual o saldo. A CNPJAPI informa por API, nos planos pagos, se a empresa tinha parcelamento ativo na última base publicada pela Receita, e não a situação de hoje. A informação vem em toda consulta de CNPJ, no mesmo JSON dos dados cadastrais, sem chamada extra e sem custo adicional. Não substitui a certidão de regularidade fiscal.
É um dado útil, com data, para análise de crédito e cadastro de clientes e fornecedores: mostra o tipo e o saldo dos parcelamentos que a empresa tinha na base publicada, sem dizer se as parcelas estão em dia.
O que é um parcelamento ativo com a Receita
Quando a empresa não paga um tributo federal no prazo, ela pode pedir à Receita para pagar o débito em parcelas. Enquanto o parcelamento está em andamento (não foi quitado, rescindido nem excluído), ele aparece na base de parcelamentos ativos. Há parcelamentos convencionais (do MEI, do Simples Nacional e o ordinário ou simplificado), especiais, criados por lei (como PERT e RELP), e os de órgãos públicos.
O parcelamento em dia, por si só, não impede a certidão positiva com efeitos de negativa: ter parcelamento, por si só, não é irregularidade.
Diferença para a dívida ativa
A dívida ativa da União é o débito que a PGFN já inscreveu para cobrança (no caso dos tributos da Receita, depois que ela o encaminha). O parcelamento com a Receita é anterior a isso: o débito ainda está na Receita. Parcelamento de dívida já inscrita é feito na PGFN e aparece no bloco da dívida ativa, como situação regular (benefício fiscal). São bases diferentes, e uma empresa pode estar nas duas.
| Parcelamentos com a Receita | Dívida ativa da União | |
|---|---|---|
| Campo na resposta | ParcelamentosRFB |
DividaAtiva |
| Fonte | Receita Federal | PGFN |
| Débito | Parcelado na Receita, antes da inscrição | Inscrito em dívida ativa |
| Publicação | Mensal, com a data da publicação | Trimestral, com o mês da extração |
Sete pontos antes de usar
- Fonte: a base de dados abertos de parcelamentos ativos, publicada pela Receita Federal. Toda resposta traz
"Fonte": "Receita Federal, dados abertos de parcelamentos ativos". - Data: a Receita publica a base todo mês, entre os dias 20 e 31. A resposta traz a data em que a Receita publicou a base (
PublicadoEm). - Defasagem: o dado é uma foto da data da extração e pode ter até cerca de dois meses. Quitações, rescisões (inclusive por atraso) e pedidos feitos depois da publicação não aparecem até a publicação seguinte.
- Onde conferir a situação atual: a certidão de regularidade fiscal (Receita e PGFN) mostra a regularidade atual de qualquer CNPJ, mas não lista parcelamentos. O detalhe dos parcelamentos só a própria empresa vê, no e-CAC.
- Não é certidão: a informação não substitui a certidão de regularidade fiscal.
- Parcelamento não é irregularidade: o parcelamento em dia, por si só, não impede a certidão positiva com efeitos de negativa.
- Sem informação de atraso: a base não diz se há parcela em atraso. O saldo inclui as parcelas vencidas e as que ainda vão vencer.
Como funciona
Faça a consulta normal de CNPJ (GET /{cnpj}) com a chave de API de um plano pago. A resposta ganha o campo ParcelamentosRFB, depois de DividaAtiva. Para uma empresa com parcelamentos, fica assim (CNPJ e valores fictícios):
curl https://api.cnpjapi.com.br/98765432000198 \
-H "Authorization: Bearer cnpj_sua_chave"
"ParcelamentosRFB": {
"Fonte": "Receita Federal, dados abertos de parcelamentos ativos",
"PublicadoEm": "2026-10-27",
"ConstavaParcelamentoAtivo": true,
"Parcelamentos": 2,
"ValorParcelado": 412300.50,
"SaldoDevedor": 301455.12,
"PorTipo": {
"MEI": { "Parcelamentos": 0, "ValorParcelado": 0.00, "SaldoDevedor": 0.00 },
"SimplesNacional": { "Parcelamentos": 0, "ValorParcelado": 0.00, "SaldoDevedor": 0.00 },
"OrdinarioSimplificado": { "Parcelamentos": 1, "ValorParcelado": 142756.79, "SaldoDevedor": 133332.08 },
"Especial": { "Parcelamentos": 1, "ValorParcelado": 269543.71, "SaldoDevedor": 168123.04, "Modalidades": ["PERT"] },
"OrgaoPublico": { "Parcelamentos": 0, "ValorParcelado": 0.00, "SaldoDevedor": 0.00, "Modalidades": [] }
},
"CNPJsRegistrados": ["98765432000198"]
}
Cinco pontos para ler a resposta direito:
ConstavaParcelamentoAtivofala da base publicada emPublicadoEm, não de hoje.truequer dizer que a empresa estava na base de parcelamentos ativos daquela publicação, inclusive com saldo zero.- Os cinco tipos vêm sempre.
MEI,SimplesNacional,OrdinarioSimplificado,EspecialeOrgaoPublicoaparecem em toda resposta, zerados quando não há.Especialsoma os parcelamentos especiais de pessoa jurídica, do Simples e do MEI;EspecialeOrgaoPublicotrazem asModalidadescom os nomes que a Receita publica. - Saldo na data da extração.
SaldoDevedoré o saldo corrigido até a extração, em reais, somando as parcelas vencidas e as que ainda vão vencer. A base não diz se há parcela em atraso. - A busca é pela raiz do CNPJ. A consulta de qualquer estabelecimento traz os parcelamentos da empresa inteira, e
CNPJsRegistradosdiz quais CNPJs da raiz constam na base. - Sem data de adesão. A resposta não traz a data em que o parcelamento foi pedido ou deferido, e por isso não diz há quanto tempo o parcelamento existe.
Quando a empresa não aparece na base, o bloco vem com ConstavaParcelamentoAtivo: false, os totais e os cinco tipos zerados, CNPJsRegistrados: [] e o PublicadoEm. Leia como "não tinha parcelamento ativo na base publicada pela Receita em 27/10/2026", e não como "sem dívida".
Exemplo em código
Os exemplos Node usam
fetchnativo (Node 18+) eawaitno nível superior - rode como módulo ES (arquivo.mjs, ou"type": "module"nopackage.json), ou envolva o código numa funçãoasync.
Python:
import requests
cnpj = "98765432000198"
r = requests.get(
f"https://api.cnpjapi.com.br/{cnpj}",
headers={"Authorization": "Bearer cnpj_sua_chave"},
timeout=10,
)
r.raise_for_status()
empresa = r.json()
parc = empresa.get("ParcelamentosRFB")
if parc is None:
# plano gratuito ou pago encerrado ("ParcelamentosRFBDisponivelEm") ou verificação indisponível agora ("ParcelamentosRFBErro")
print("Parcelamentos não verificados:", empresa.get("ParcelamentosRFBDisponivelEm") or empresa.get("ParcelamentosRFBErro"))
elif parc["ConstavaParcelamentoAtivo"]:
print(f'Tinha parcelamento ativo na base publicada em {parc["PublicadoEm"]}:',
parc["Parcelamentos"], "parcelamentos, saldo de R$", parc["SaldoDevedor"])
else:
print(f'Não tinha parcelamento ativo na base publicada em {parc["PublicadoEm"]}')
Node.js:
const cnpj = "98765432000198";
const r = await fetch(`https://api.cnpjapi.com.br/${cnpj}`, {
headers: { Authorization: "Bearer cnpj_sua_chave" },
});
if (!r.ok) throw new Error(`HTTP ${r.status}`);
const empresa = await r.json();
const parc = empresa.ParcelamentosRFB;
if (parc === null || parc === undefined) {
console.log("Parcelamentos não verificados:", empresa.ParcelamentosRFBDisponivelEm ?? empresa.ParcelamentosRFBErro);
} else if (parc.ConstavaParcelamentoAtivo) {
console.log(`Tinha parcelamento ativo na base publicada em ${parc.PublicadoEm}:`, parc.Parcelamentos, "parcelamentos, saldo de R$", parc.SaldoDevedor);
} else {
console.log(`Não tinha parcelamento ativo na base publicada em ${parc.PublicadoEm}`);
}
Quando o bloco não vem
- Plano gratuito (ou plano pago encerrado):
"ParcelamentosRFB": nulle"ParcelamentosRFBDisponivelEm": "planos_pagos". Os dados do CNPJ vêm normalmente. - Verificação indisponível no momento:
"ParcelamentosRFB": nulle"ParcelamentosRFBErro": "indisponivel". Também é o que vem quando a base servida passa de 70 dias da publicação sem uma base mais nova carregada (a Receita atrasou a publicação ou a base seguinte ainda não foi carregada), para não servir dado velho. A consulta do CNPJ não é afetada. - Formato ReceitaWS (
?formato=receitawsou/v1/cnpj/{cnpj}): o campo não existe.
Muitos CNPJs de uma vez
No lote (POST /consulta/lote, até 20 CNPJs por chamada), cada item encontrado traz o mesmo bloco dentro de Dados. Bom para revisar a carteira de clientes inteira de uma vez.
Perguntas frequentes
De quando é a informação dos parcelamentos?
A Receita publica a base todo mês, entre os dias 20 e 31; mostramos a data da publicação em toda consulta. O dado pode ter até cerca de dois meses.
Ter parcelamento quer dizer que a empresa está irregular?
Não necessariamente. O parcelamento em dia, por si só, não impede a certidão positiva com efeitos de negativa. A base também não diz se há parcela em atraso.
Não constar quer dizer que a empresa não deve nada à Receita?
Não. Quer dizer que ela não tinha parcelamento ativo na base daquela publicação. Débitos não parcelados, ainda não declarados ou já inscritos em dívida ativa não entram nesta base.
Qual a diferença para a dívida ativa?
A dívida ativa é o débito que a PGFN já inscreveu para cobrança (no caso dos tributos da Receita, depois que ela o encaminha). O parcelamento com a Receita é anterior a isso. Parcelamento de dívida já inscrita aparece no bloco da dívida ativa, como situação regular.
A consulta substitui a certidão negativa?
Não. Para isso, emita a certidão de regularidade fiscal nos canais oficiais.
Cuidados
- Os dados vêm da base oficial da Receita Federal, somados por raiz de CNPJ e por tipo de parcelamento, sem alterar os valores; não são juízo da CNPJAPI sobre a empresa.
- Use a informação como um sinal com data, não como a situação de hoje. Para decisões que dependem da situação atual, emita a certidão de regularidade fiscal.