CST em IPITrib: interpretar 00, 49, 50 e 99 na NF-e
<CST>det › imposto › IPI › IPITrib › CSTRevisão editorial em 27 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
O CST de IPITrib registra a situação tributária do IPI nesse ramo do item. Seu domínio é formado por quatro códigos: 00, 49, 50 e 99. O código precisa corresponder à operação já definida; estar no domínio do XSD não comprova a escolha fiscal nem direito a crédito.
Quatro códigos e seus significados
Esta página trata de /nfeProc/NFe/infNFe/det/imposto/IPI/IPITrib/CST, no namespace http://www.portalfiscal.inf.br/nfe. CST é o primeiro filho obrigatório de IPITrib. O MOC e o XSD documentam: MOC, p. 51 e TIpi, IPITrib/CST
| CST | Descrição técnica |
|---|---|
| 00 | Entrada com recuperação de crédito |
| 49 | Outras entradas |
| 50 | Saída tributada |
| 99 | Outras saídas |
As descrições explicam o que o código afirma no XML. Não são uma indicação para escolher 00 em toda entrada, 50 em toda saída ou 49/99 quando faltam dados. “Outras” não torna o código um preenchimento genérico para eliminar rejeições.
A escolha precisa vir da definição fiscal do item, com a documentação e os parâmetros pertinentes. Se o CST informado no cadastro não corresponder à operação, o diagnóstico deve identificar essa origem; não selecionar outro código apenas para o XML passar.
Situação tributária e modalidade são decisões diferentes
Depois de CST, IPITrib exige um dos pares: vBC+pIPI ou qUnid+vUnid, seguido de vIPI. A enumeração de CST não contém uma associação que torne 50 exclusivamente percentual, por exemplo. A modalidade depende da definição fiscal aplicável e deve ser representada pelo par correto. XSD, linhas 7613–7644
No cálculo percentual, a conta de conferência utiliza base × percentual ÷ 100. No cálculo por quantidade, usa quantidade padrão × valor do imposto por unidade. Misturar os dois pares ou omitir um dos fatores cria um problema de estrutura, independentemente de CST estar no domínio.
Também é necessário distinguir CST de cEnq. O enquadramento fica em IPI/cEnq, antes do ramo IPITrib. Não é um filho de CST nem se deduz numericamente dele. A página de IPITrib detalha as alternativas de cálculo.
Representação textual e exemplo
Na referência oficial arquivada PL 010d v1.03, CST é string enumerada. Preserve 00 com dois caracteres: 0 ou 0.00 não atendem à enumeração. Não escreva a descrição no lugar do código nem acrescente espaços. IPITrib/CST no XSD
Considere uma hipótese fictícia cujos parâmetros já tenham sido definidos como CST 00, cálculo percentual, base de R$ 800,00 e percentual de 2,50%. A conta matemática é 800.00 × 2.50 ÷ 100 = 20.00. O exemplo não comprova crédito nem estabelece alíquota legal.
Este fragmento mostra apenas IPITrib; omite IPI/cEnq e os demais grupos. É sintético e parcial, não está pronto para transmissão.
<IPITrib xmlns="http://www.portalfiscal.inf.br/nfe">
<CST>00</CST>
<vBC>800.00</vBC>
<pIPI>2.50</pIPI>
<vIPI>20.00</vIPI>
</IPITrib>
A leitura técnica preserva CST 00 e o par percentual. Não se conclui que outro item com valor de R$ 20,00 deva usar o mesmo CST. Situação tributária, modalidade e parâmetros não são identificados pelo resultado monetário.
O CST em IPI/IPINT/CST é outro campo, com domínio 01–05 e 51–55. Um código 52, por exemplo, pertence a IPINT e não atende à enumeração de IPITrib. O número 50 em IPITrib e o número 51 em IPINT também têm descrições distintas; não se trata de um intervalo contínuo de códigos que possam ser trocados. Veja CST em IPINT.
Diagnóstico do código sem trocar tratamento
Confira primeiro o XPath e o ramo do XML real. Depois compare a definição fiscal com o valor recebido pelo gerador. Se 00 virou 0, há perda de representação; se um código do IPINT foi colocado em IPITrib, há incoerência de domínio/ramo a investigar com a operação definida.
O retorno 387, O06-10 obrigatória para modelo 55, verifica o enquadramento legal inválido conforme a tabela de cEnq. Ter um CST válido em IPITrib não dispensa o enquadramento do pai. MOC, p. 118
O retorno 388, O09-10 obrigatória para modelo 55, documenta compatibilidade para CST específicos de IPINT: 02/52 exige cEnq entre 301–399; 04/54, entre 001–099; 05/55, entre 101–199. Em produção, há exceção para nota com data de emissão anterior a 01/04/2016. Não atribua automaticamente essas faixas ao CST 50 de IPITrib. Se um retorno aparentemente incompatível com o conteúdo for apresentado, confira o item indicado, o XML efetivamente enviado e o ramo em que o CST aparece. A faixa não comprova enquadramento válido ou direito ao tratamento fiscal. MOC, p. 118
Há ainda uma condição de presença do pai: O01-10, obrigatória e com retorno 742, alcança NFC-e e NF-e com DANFE Simplificado Tipo 2, tpImp=6. A ampliação ao Tipo 2 tem cronograma de produção de 03/08/2026, anterior ao corte de 27/09/2026. Alterar apenas o CST não resolve a presença indevida de IPI. NT 2026.002, pp. 3 e 17
A referência 010d usada aqui é histórica, confrontada com notas técnicas posteriores, sem declaração de pacote vigente para qualquer transmissão. Consulte cEnq para o enquadramento. A conferência técnica não decide incidência, crédito, CST ou modalidade fiscal da operação.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/IPI/IPITrib/CST- Namespace
http://www.portalfiscal.inf.br/nfe- Leiaute
- 4.00 · PL_010e_v1.02
- Ocorrências no XSD
- 1–1 no contexto do elemento pai
- Tipo
- inline:xs:string · string
- Preenchimento no catálogo
- Condicional
A ocorrência vale dentro da estrutura XML: um campo obrigatório em um grupo opcional não torna esse grupo obrigatório. A aplicação fiscal depende da operação e da versão da regra.
- enumeration
00- enumeration
49- enumeration
50- enumeration
99- whiteSpace
preserve