Pular para o conteúdo
FiscalAPI
NF-e

cClassTrib e CST do IBS/CBS: O Código Que Falta no Seu Cadastro de Produtos

Equipe FiscalAPI 7 min de leitura
NF-eICMSTutorialSEFAZ

O `cClassTrib` é o Código de Classificação Tributária do IBS e da CBS: seis dígitos que detalham a situação tributária da operação, complementando o CST. Os três primeiros dígitos são sempre o próprio CST do item. Ele é dado de cadastro, não resultado de cálculo — e é exatamente por isso que trava a adaptação de tantas empresas.

Na conversa sobre a Reforma, quase toda a atenção vai para alíquota e cálculo. Mas o que mais impede uma NF-e de ficar pronta não é a conta: é que faltam dois códigos no cadastro de cada produto.

CST e cClassTrib: a divisão de trabalho#

CampoO que responde
CST do IBS/CBS*Como* a operação é tributada — tributada integralmente, com alíquota reduzida, isenta, imune, com diferimento…
`cClassTrib`*Por quê* — qual benefício, regime diferenciado ou fundamento legal justifica aquele tratamento

O CST diz a categoria. O cClassTrib diz qual hipótese específica da lei se aplica àquele item, naquela operação.

Exemplo do raciocínio: dois produtos podem ter o mesmo CST de "alíquota reduzida" e cClassTrib diferentes, porque a redução de um vem de uma hipótese legal e a do outro vem de outra. É essa granularidade que permite ao fisco medir cada benefício separadamente.

O encaixe dos seis dígitos#

cClassTrib = 6 dígitos

  ┌── 3 primeiros: iguais ao CST do IBS/CBS do item
  │
  └── 3 últimos: a hipótese específica dentro daquele CST

Consequência prática: CST e `cClassTrib` não podem divergir. Se os três primeiros dígitos do cClassTrib não baterem com o CST informado, a combinação é inválida. É a origem mais comum de erro quando alguém tenta preencher "no olho" em vez de puxar da tabela.

Onde baixar a tabela oficial#

As tabelas de cClassTrib, de CST do IBS/CBS e de classificação do crédito presumido são publicadas pelo fisco e atualizadas periodicamente. Elas estão disponíveis em:

  • Portal Nacional da NF-e → aba *Documentos* → *Diversos*
  • Portal dos Documentos Fiscais Eletrônicos (SVRS) → aba *Documentos*
  • Portal da Conformidade Fácil
⚠️
Use sempre a versão vigente. Essas tabelas foram revisadas mais de uma vez ao longo de 2025 e 2026, e um código válido numa versão pode ter sido substituído na seguinte. Congelar uma cópia no seu ERP sem processo de atualização é criar um passivo silencioso.

Por que isso trava mais que o cálculo#

O cálculo é código: uma vez implementada a fórmula, ela vale para todos os itens. Já CST e cClassTrib são por item, e ninguém consegue derivá-los automaticamente do que já existe no cadastro.

Isso significa que uma empresa com 8.000 SKUs tem 8.000 decisões de classificação a tomar — e cada uma exige saber a natureza do produto e o tratamento tributário que a lei dá a ele. Não é tarefa de TI: é tarefa fiscal, com apoio de TI.

Os sintomas típicos de quem não fez esse trabalho:

  • O emissor foi atualizado, mas os campos saem vazios ou com um valor padrão colocado "só para passar".
  • Todos os itens receberam o mesmo cClassTrib genérico, o que descreve errado a maior parte do catálogo.
  • O cClassTrib foi preenchido, mas com CST divergente.
💡
Um cClassTrib padronizado para todo o catálogo é pior que campo vazio: campo vazio é omissão visível; código errado é informação falsa prestada ao fisco, e ela fica registrada em cada nota.

O outro campo que depende de cadastro#

Além do par CST/cClassTrib, a adaptação esbarra em identificar o município de destino da operação. O IBS tem parcela municipal, e o cálculo depende de saber para qual município a operação foi destinada.

Sistemas que guardam endereço como texto livre, sem código IBGE do município, descobrem nessa hora que não conseguem determinar o destino de forma confiável.

💡
Se o seu cadastro de clientes não tem código IBGE, dá para reconstruir a partir do documento: a consulta de CNPJ devolve o endereço com codigo_ibge do município, e a consulta de Inscrição Estadual devolve municipio_ibge no cadastro estadual. É a forma mais barata de higienizar a base antes de precisar dela.

As rejeições ligadas a esses campos#

A NT que criou os grupos de IBS/CBS trouxe regras de validação próprias. Duas tratam exatamente do cClassTrib:

CódigoRejeição
1050Código de Classificação Tributária não informado
1051Código de Classificação Tributária inválido

Junto delas vieram outras da mesma família — 1001, 1054, 1055, 1057, 1080 e 1085 —, tratando de finalidade do documento, crédito presumido, cálculo da CBS e totalizadores.

Todas estão suspensas neste momento, por força do Ato Técnico Conjunto CGIBS/RFB nº 1, de 31/07/2026. Ou seja: hoje você pode emitir com cClassTrib ausente ou inválido e a nota é autorizada assim mesmo. Isso é uma janela de teste, não um perdão — o detalhe está em caiu a rejeição, não caiu a obrigação.

💡
Repare na numeração: esses códigos começam em 1001, enquanto o catálogo clássico da NF-e vai de 100 a 999. Se o seu sistema traduz cStat por uma tabela montada antes de 2026, ela não conhece nenhum deles — e vai exibir "erro desconhecido" no dia em que as validações voltarem. Para os códigos consolidados, use o catálogo de rejeições da SEFAZ.

Um roteiro de adaptação que funciona#

  1. Baixe a tabela vigente de CST e cClassTrib na fonte oficial.
  2. Agrupe o catálogo por natureza fiscal, não por SKU. A maioria dos catálogos colapsa em poucas dezenas de grupos com o mesmo tratamento.
  3. Classifique por grupo e propague para os itens. É o que torna 8.000 SKUs viável.
  4. Trate as exceções individualmente — benefícios específicos, itens com regime diferenciado.
  5. Valide a coerência CST × cClassTrib: os três primeiros dígitos têm que bater. Isso é um teste automatizável, e vale rodá-lo no cadastro inteiro.
  6. Complete o código IBGE dos municípios de clientes.
  7. Emita notas de teste e leia o XML — não pare no "foi autorizada", já que a validação está desligada.
  8. Crie um processo de atualização das tabelas, porque elas mudam.

Perguntas frequentes#

O que é o cClassTrib? É o Código de Classificação Tributária do IBS e da CBS, informado na tag <cClassTrib> dos documentos fiscais eletrônicos. Tem 6 dígitos e detalha qual hipótese legal justifica o tratamento tributário do item, complementando o CST.

Qual a relação entre CST e cClassTrib? Os três primeiros dígitos do cClassTrib são o próprio CST do IBS/CBS do item. Os três últimos identificam a hipótese específica. Por isso os dois campos não podem divergir.

Onde baixo a tabela de cClassTrib? No Portal Nacional da NF-e (aba Documentos → Diversos), no Portal dos Documentos Fiscais Eletrônicos da SVRS e no Portal da Conformidade Fácil. Sempre confira se está usando a versão vigente.

Posso usar o mesmo cClassTrib para todos os produtos? Não. O código descreve o tratamento tributário específico do item. Um valor único para o catálogo inteiro descreve errado a maior parte dele — e informação errada é pior que campo vazio.

A nota é rejeitada se eu não informar o cClassTrib? Hoje não. As regras 1050 e 1051, entre outras, estão suspensas pelo Ato Técnico Conjunto CGIBS/RFB nº 1, de 31/07/2026. A obrigação de informar, porém, continua valendo a partir da data da sua onda.

Por que preciso do código IBGE do município? Porque o IBS tem parcela municipal e o cálculo depende de identificar o município de destino da operação. Cadastro com endereço em texto livre, sem código IBGE, não permite essa determinação de forma confiável.


Próximo passo#

Se o gargalo da sua adaptação é cadastro incompleto — endereço sem código IBGE, cliente sem inscrição estadual confirmada —, dá para resolver isso em lote a partir do documento. Veja a documentação de enriquecimento cadastral.


Artigos relacionados#

Compartilhar: WhatsApp LinkedIn Twitter

Consulte dados fiscais via API

Consulte Inscrições Estaduais, CNPJs e Certidões Negativas via API REST. Dados direto da SEFAZ e Receita Federal. Planos a partir de R$ 19,99/mês.

Criar conta →