Blog Taxcel

cCredPres (crédito presumido do IBS/CBS): quando entra no jogo e como parametrizar no XML da NF-e

Escrito por Taxcel | Jan 19, 2026 8:06:32 PM

Se você trabalha com XML de NF-e e já estava “domando” CST e cClassTrib, prepara: tem mais uma peça ganhando protagonismo no ecossistema da Reforma Tributária do Consumo (RTC): o cCredPres (Código de Classificação do Crédito Presumido). E ele não veio sozinho  junto chegam tabelas, indicadores (flags), regras de validação e eventos que vão separar rapidamente quem está com o layout alinhado de quem vai sofrer com rejeições em lote. 

A ideia deste guia é te deixar com uma visão bem prática (sem juridiquês desnecessário) sobre quando o cCredPres passa a importar de verdadeonde ele mora no XMLcomo parametrizar com segurança e quais erros/rejeições aparecem quando algo sai fora do trilho. 

Por que o cCredPres virou assunto agora 

O “barulho” não é por acaso. O Portal da NF-e publicou informe técnico (no contexto da NT 2025.002/RTC) comunicando a disponibilização/atualização de tabelas de classificação tributária (cClassTrib) e crédito presumido, que são exatamente a base para sistemas emissores e validadores saberem o que é permitido/obrigatório em cada cenário.  

Em paralelo, a própria SVRS (Conformidade Fácil) vem disponibilizando páginas e tabelas que detalham códigos de crédito presumido e seus comportamentos (por exemplo: se o crédito é apropriado no DF-e, via evento, se “deduz” o crédito presumido, e a vigência por tributo).  

Traduzindo: antes você conseguia “passar” com regras mais genéricas; agora o jogo vira mais tabelado, rastreável e validável.  

Quando o cCredPres “entra no jogo” (de verdade) 

1) Quando a operação tem hipótese legal de crédito presumido 

Crédito presumido não é “crédito normal”. Ele existe quando a legislação define uma forma específica (e geralmente incentivada) de geração de crédito, ligada a certas operações, perfis de fornecedor ou regimes. 

A tabela oficial/operacional do ecossistema (ex.: Conformidade Fácil) mostra exemplos bem concretos de hipóteses com códigos próprios  como aquisição de produtor rural não contribuinte (código 1), TAC pessoa física não contribuinte (código 2), resíduos/logística reversa (código 3), compra de bem móvel usado de PF para revenda (código 4) cada uma citando base legal na LC 214/2025 e trazendo “configurações” diferentes.  

2) Quando seu XML precisa “provar” que o crédito presumido é aplicável (e como) 

É aqui que o cCredPres aparece como “rótulo técnico” da hipótese: ele identifica qual crédito presumido você está tentando usar e, junto com os indicadores da tabela, define: 

  • se você pode informar crédito presumido para IBS e/ou CBS; 
  • se você tem que informar o grupo do IBS e/ou o grupo do CBS; 
  • se esse crédito é apropriado no próprio DF-e ou só via evento; 
  • e até detalhes de comportamento (por exemplo, se “deduz crédito presumido” em certas hipóteses).  

3) Quando as validações começam a bater na porta 

A NT 2025.002/RTC vem evoluindo por versões, com fases de implantação. A própria publicação oficial (resumo disponível nos resultados do Portal da NF-e) indica implantação em produção a partir de 2025 visando operacionalização a partir de 2026.  

E, na prática, o mercado já está tratando isso como: o que estiver errado (quando validado) vira rejeição. Há notícias e guias reforçando que o preenchimento incorreto de IBS/CBS pode causar rejeição conforme janelas de vigência das regras.  

Ponto importante e bem pé-no-chão: como a NT é “viva”, datas e obrigatoriedades mudam entre versões. Por isso, o jeito seguro de operar é: versionar tabelas por NT, e testar sempre com validador atualizado.

Como o cCredPres se relaciona com CST e cClassTrib (e por que isso confunde tanta gente) 

Pensa num triângulo: 

  • CST (IBS/CBS) define o “enquadramento” do item (regime/resultado tributário do item). 
  • cClassTrib detalha a classificação tributária do IBS/CBS (muitas regras e indicadores se penduram nele). 
  • cCredPres só aparece quando a operação tem hipótese de crédito presumido; ele não substitui CST/cClassTrib  ele complementa. 

E tem um detalhe: existem tabelas de indicadores justamente para orientar o preenchimento por CST e por classificação. Ex.: há materiais técnicos no ecossistema explicando que a tabela de indicadores serve para dizer quando certos grupos/campos são obrigatórios, permitidos ou vedados conforme o CST.  

Na prática, “parametrizar” não é só colocar um número no XML. É garantir que o combo CST + cClassTrib + cCredPres é coerente com as regras e com os indicadores vigentes. 

Onde o cCredPres mora no XML (e quais grupos aparecem junto) 

De forma recorrente nos guias técnicos e nas próprias regras de rejeição, o crédito presumido aparece no item (det) dentro do grupo do IBS/CBS, com um grupo de operação de crédito presumido (ex.: <gCredPresOper>), contendo base e o cCredPres, e subgrupos específicos para IBS e CBS (ex.: <gIBSCredPres> e <gCBSCredPres>). Isso fica evidente até nos exemplos usados para explicar rejeições.  

E aqui começa a parte “pegadinha”: nem todo cCredPres permite IBS e CBS ao mesmo tempo; alguns são só IBS, outros só CBS, e alguns exigem preenchimento via evento (dependendo dos indicadores da tabela). 

A tabela operacional da Conformidade Fácil mostra exatamente isso no mundo real: há código com “Apropria DFE: Sim” e outros com “Apropria DFE: Não”, e também variações entre IBS e CBS e datas de vigência diferentes.  

Como parametrizar o cCredPres sem criar bomba-relógio no seu ERP (ou no emissor) 

Vou te passar o jeito que costuma funcionar em projetos grandes (ERP, várias filiais, marketplace, integrações), porque ele evita o erro clássico: “tacar cCredPres no cadastro do produto e rezar”. 

Camada 1  Regra de negócio: quem gera direito ao crédito presumido e por quê? 

Antes do XML, você precisa responder com clareza: 

  • Qual operação é essa (compra, revenda, serviço, retorno)? 
  • Quem é o fornecedor/destinatário (PF? cooperativa? produtor rural? contribuinte?) isso muda tudo. 
  • Qual hipótese legal está sendo acionada (e, portanto, qual código cCredPres)? 
  • Em qual tributo o crédito se aplica (IBS, CBS ou ambos)? 
  • A apropriação é no DF-e ou via evento (conforme tabela/indicadores)? 

A própria tabela publicada pela Conformidade Fácil deixa explícito que cada código tem “configurações” distintas  por exemplo, o código 2 (TAC PF não contribuinte) aparece com Apropria DFE: Não e Apropria Evento: Sim, enquanto outros permitem apropriar no DF-e.  

Camada 2 — Regra técnica: como esse cenário vira XML 

Aqui você transforma regra em “montagem de tag”: 

  • se a tabela/indicador exigir IBS: montar <gIBSCredPres>; 
  • se exigir CBS: montar <gCBSCredPres>; 
  • se vedar: não montar (e isso é tão importante quanto montar); 
  • se o indicador disser que é via evento: você até pode referenciar a operação, mas não vai “forçar” o crédito no item. 

Camada 3 — Governança: versionamento e trilha de auditoria 

Esse é o pedaço que muita gente ignora e paga caro depois: 

  • versionar a tabela cCredPres por data/versão (porque o ecossistema atualiza); 
  • gravar no seu dado “por que escolhi esse cCredPres” (origem: regra, cadastro, contrato, fornecedor, CFOP, etc.); 
  • manter rastreabilidade por item (porque as correções são por item). 

Quando a validação endurece, quem tem isso estruturado corrige rápido. Quem não tem, vira mutirão. 

 Exemplos práticos (os que mais aparecem no mundo real) 

Exemplo 1 — Compra de produtor rural não contribuinte (cCredPres = 1) 

Esse é o caso “clássico” de crédito presumido que o pessoal vai querer automatizar. Na tabela da Conformidade Fácil, o código 1 descreve aquisição de bens/serviços de produtor rural não contribuinte e indica que pode ser apropriado no DF-e e via evento (Sim/Sim), com vigência a partir de 01/01/2027 para IBS e CBS.  

Como parametrizar sem dor: 

  • o gatilho normalmente não é “produto”, e sim perfil do fornecedor + natureza da operação; 
  • o XML precisa refletir a hipótese com o cCredPres correto e os grupos IBS/CBS conforme indicadores. 

Exemplo 2 — Transporte com TAC PF não contribuinte (cCredPres = 2) 

Aqui a diferença que derruba muita implementação: esse código aparece com Apropria DFE: Não e Apropria Evento: Sim 
Ou seja: tentar enfiar crédito presumido no item “porque é TAC PF” pode gerar inconsistência. Esse é o caso típico em que a parametrização precisa direcionar fluxo de evento (e não só emissão de NF-e). 

Exemplo 3 — Resíduos / reciclagem / logística reversa (cCredPres = 3) 

Esse caso é uma mistura de legal + operacional. A tabela aponta essa hipótese e, de quebra, mostra vigências diferentes entre IBS e CBS (ex.: IBS iniciando em 01/01/2029 no recorte exibido, CBS em 01/01/2027).  
Isso é uma pista forte de que “parametrizar uma vez e esquecer” vai dar ruim: o comportamento muda conforme tributo e período. 

Exemplo 4 — Compra de bem móvel usado de PF para revenda (cCredPres = 4) 

Esse é outro campeão de dúvidas, porque aparece como hipótese que deduz crédito presumido (no recorte exibido: “Deduz Crédito Presumido: Sim”) e tem particularidades que chegam até a campo específico de condição suspensiva (vou falar disso nas rejeições).  

Rejeições e erros comuns ligados ao cCredPres (e como corrigir de forma objetiva) 

Abaixo está um resumo bem prático das rejeições mais diretamente relacionadas ao uso do crédito presumido em NF-e (modelo 55), com a “correção típica” que resolve na maior parte dos casos. 

Observação honesta: códigos/mensagens exatos e condições podem variar conforme versão/ambiente, então trate isso como “manual de campo” e valide com o cenário e a versão da NT no seu validador. Uma boa referência de teste é o Validador RTC da Conformidade Fácil 

Código / Rejeição 

O que normalmente significa 

Como corrigir (na prática) 

1049 — Não é permitido uso de Crédito Presumido na NFC-e (mod 65) 

Você colocou o grupo de crédito presumido no modelo 65 

Remova <gCredPresOper> da NFC-e (se precisa de crédito presumido, emita NF-e mod 55) 

1055 — cCredPres inexistente 

Código informado não existe na tabela oficial 

Atualize/valide o código conforme tabela vigente (e garanta versionamento) 

1053 — Crédito Presumido IBS informado indevidamente 

Você informou <gIBSCredPres> mas o cCredPres/indicador não permite IBS 

Remova <gIBSCredPres> quando a tabela/indicador não permitir/exigir IBS 

1050 — Crédito Presumido CBS informado indevidamente 

Você informou <gCBSCredPres> mas o cCredPres/indicador não permite CBS 

Remova <gCBSCredPres> quando a tabela/indicador não permitir/exigir CBS 

1054 — Crédito Presumido IBS não informado 

A operação exige IBS presumido e você não mandou <gIBSCredPres> 

Inclua <gIBSCredPres> e preencha conforme indicador/tabela para o cCredPres 

1058 — Crédito Presumido CBS não informado 

A operação exige CBS presumido e você não mandou <gCBSCredPres> 

Inclua <gCBSCredPres> e preencha conforme indicador/tabela para o cCredPres 

1056 — <vCredPresCondSus> (IBS) informado indevidamente 

Você informou condição suspensiva fora das condições aceitas (ex.: ano/ código) 

Remova <vCredPresCondSus> quando não for permitido; a regra citada condiciona a uso futuro e ao cCredPres 4 

1060 — <vCredPresCondSus> (CBS) informado indevidamente 

Mesma ideia, só que para CBS: condição suspensiva fora de período/código permitido 

Remova <vCredPresCondSus> quando não for permitido; a regra citada condiciona (ex.: a partir de 2027 e cCredPres 4) 


“Checklist mental” que resolve 80% das dores
 

Quando bater rejeição de crédito presumido, normalmente a causa está em uma destas três: 

  1. Modelo errado (tentou crédito presumido na NFC-e e tomou 1049). ( 
  1. Tabela desatualizada (cCredPres não existe mais / mudou / nunca existiu no seu cadastro).  
  1. Indicador mandando e você fazendo o contrário (informou IBS/CBS quando era vedado, ou deixou de informar quando era obrigatório).  

 E os eventos: quando o crédito presumido não “nasce” só no XML 

Além de informar no documento, o ecossistema também trabalha com eventos específicos em alguns fluxos de RTC. Exemplos que aparecem na documentação e em guias técnicos: 

  • Evento 211110 (solicitação de apropriação de crédito presumido) associado ao adquirente/destinatário, em cenários de apropriação.  
  • Evento 112110 (informação de efetivo pagamento integral para liberar crédito presumido do adquirente), normalmente pelo emitente.  

Isso conversa diretamente com o que a tabela já sugere em certos códigos: às vezes “Apropria Evento: Sim” é o coração do processo, e tentar resolver “só com tag no item” vira rejeição ou incoerência.  

Como validar (sem virar refém de “tentativa e erro”) 

Se você quer evitar o ciclo “gera XML → rejeita → ajusta no susto”, faz assim: 

  1. Use um validador alinhado à versão da NT. A SVRS mantém o Validador RTC para NF-e/NFC-e e indica a versão de NT usada.  
  1. Compare seu cadastro com a tabela vigente (especialmente cCredPres e seus indicadores). A Conformidade Fácil publica a tabela com descrições e configurações.  
  1. Crie casos de teste por hipótese, não por produto. Ex.: “TAC PF não contribuinte”, “produtor rural não contribuinte”, “usado PF para revenda”, etc. (Esses são os que mais explodem em volume.)  

 Como a Taxcel ajuda na prática 

Se você precisa lidar com volume de XML (ERP, filiais, marketplace, integrações), “corrigir no braço” é inviável. Com a Taxcel, o fluxo fica padronizado: 

• Importar o XML e transformar em planilha (visualização clara das tags e dados por item) 
• Auditar em lote: encontrar itens com cClassTrib em branco/invalidada/incoerente 
• Editar e complementar tags da Reforma quando o XML não vier completo 
• Exportar novamente o XML após ajustes, mantendo consistência e rastreabilidade
 

Isso ajuda a tirar o tema do “campo escondido no XML” e levar para um processo revisável, auditável e escalável.