CSOSN 900 no ICMSSN900: significado, XML e limites do código
<CSOSN>det › imposto › ICMS › ICMSSN900 › CSOSNRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
CSOSN é o Código de Situação da Operação no Simples Nacional. Dentro de ICMSSN900, a tag aceita exclusivamente 900, “Outros”. O número identifica a situação tributária do item; não informa a origem da mercadoria, o método da base nem a alíquota do crédito.
XPath do item: /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMSSN900/CSOSN. Namespace: http://www.portalfiscal.inf.br/nfe. Localize o det/@nItem correspondente; sem o envelope processado, o caminho começa em NFe/infNFe.
Nesta página:
- O significado de “Outros” tem uma fronteira
- Código fixo e regime do emitente
- O código não calcula os demais campos
- Cálculo e exemplos de conferência
- XML sintético parcial
- Modelo, regime e alcance das regras
- Diagnóstico e origem da correção
- Parâmetros que precisam de confirmação
- Fontes e versões
O significado de “Outros” tem uma fronteira
O Ajuste SINIEF 3/2010 descreve 900 como as operações que não se enquadram em 101, 102, 103, 201, 202, 203, 300, 400 e 500. Isso exige saber por que as outras situações não representam a operação. A falta de um parâmetro no cadastro, um erro de cálculo ou uma rejeição não constitui, por si, fundamento para 900. Tabela B de CSOSN.
101 indica tributação pelo Simples com permissão de crédito; 201 acrescenta a cobrança de ICMS-ST; 500 se refere ao imposto cobrado anteriormente por ST ou antecipação. 900 pode conter blocos opcionais de cálculo e de crédito, mas essa flexibilidade de representação não torna os códigos equivalentes. A classificação é do item, enquanto CRT descreve o regime do emitente.
Código fixo e regime do emitente
O XSD restringe a tag a três caracteres exatamente 900. 0900, 90, 101 e texto descritivo não são alternativas válidas nesse grupo. A declaração atual menciona CRT 1 e CRT 4; N12a-10, atualizada pela NT 2024.001, admite CSOSN frente a CRT 1 ou 4 no teste geral de regime. As regras específicas do MEI e da operação continuam necessárias: passar no teste geral não libera todos os CSOSN para CRT 4. XSD PL 010f; NT 2024.001, p. 12.
O código não calcula os demais campos
orig responde pela procedência; modBC e modBCST, pela modalidade das bases; pICMS e pICMSST, pelas alíquotas de impostos; pCredSN, pelo crédito. Selecionar 900 não calcula nenhum desses dados. A sequência mínima do exemplo contém origem 0 apenas como hipótese sintética, sem ICMS próprio, ST ou crédito.
Cálculo e exemplos de conferência
Não existe cálculo para CSOSN: 900 é um identificador. Em um exemplo de crédito hipoteticamente devido, 3,50% sobre R$ 1.000,00 representariam R$ 35,00 no par pCredSN/vCredICMSSN, não no próprio código. Em uma operação sem esse direito confirmado, a mera presença de 900 não justifica acrescentar o par. Uma operação com permissão de crédito enquadrada especificamente em 101 não passa a ser 900 porque o resultado numérico do crédito é igual.
XML sintético parcial
Fragmento sintético do grupo, parcial em relação à nota. As premissas estão no exemplo; não é documento pronto para transmissão.
<ICMSSN900 xmlns="http://www.portalfiscal.inf.br/nfe">
<orig>0</orig>
<CSOSN>900</CSOSN>
</ICMSSN900>
O exemplo respeita a sequência do XSD PL 010f. Um fragmento estruturalmente válido não comprova a regra fiscal da operação nem a autorização da nota.
Modelo, regime e alcance das regras
O leiaute é compartilhado por NF-e 55 e NFC-e 65, mas a aceitação estrutural não libera a operação em qualquer modelo. Na NFC-e, N12a-20 admite CSOSN 900 a critério da UF; N12a-34 rejeita 900 com modBCST (código 385), mesmo que o XML passe no XSD. Na NF-e com destinatário não contribuinte (indIEDest=9), N12a-70 pode gerar 600 porque 900 não integra a lista geral admitida. A regra excepciona NF-e de entrada, CFOP 5915/5916/6915/6916 de conserto ou reparo, remessas internas para demonstração 5912/5913 e o marco histórico de emissão anterior a 01/07/2016 em produção. Essas exceções descrevem a validação e não escolhem o CFOP do leitor. MOC, pp. 107–108.
A NT 2024.001 acrescenta a exceção 4 de N12a-70: a critério da UF, a regra não se aplica ao MEI(CRT 4), nas remessas com CFOP 5904 ou 6904 e CSOSN 900. Essa exceção é específica e não afasta as demais validações. NT 2024.001, p. 13.
Para o MEI, há restrições específicas adicionais. Com CRT 4 e idDest<>3, N12a-80 admite na NF-e 55 somente 102, 300, 400 e 900; N12a-81 admite na NFC-e 65 somente 102 e 300, com 782 para código incompatível. Portanto, a possibilidade geral de 900 em NFC-e a critério da UF não libera 900 para o MEI nessas condições. A NT fixa homologação em 01/07/2024 e produção em 01/04/2025 para essas regras. NT 2024.001 v1.20, p. 13.
N12a-90 também cruza o CFOP do MEI na NF-e 55, sob CRT 4 e idDest<>3, com rejeição 337: para 900, lista 1202,1904,2202,2904,5202,5904,6202,6904,1501,1503,1504,1505,1506,1553,2501,2503,2504,2505,2506,2553,5501,5502,5504,5505,5551,5933,6501,6502,6504,6505,6551 e 6933. A lista é um critério de compatibilidade dessa regra, não indicação de CFOP para a operação. Confirme a natureza real antes de confrontar o código. Na NFC-e, N12a-91 restringe o CFOP a 5102 nas mesmas condições de CRT/destino.
Diagnóstico e origem da correção
Na rejeição 591, compare emit/CRT com a situação real e com a versão da regra; não use a redação histórica “diferente de 1” do MOC para ignorar a atualização CRT 4. Na NFC-e, 383 pode decorrer da aceitação de 900 pela UF e 385 decorre da presença de modBCST. A regra N12a-40 também cruza CFOP na NFC-e; a NT 2024.001 v1.20 inclui 5910 na lista geral e observa a possível aceitação de 5405 para 900 pelo CE. Isso é conferência de compatibilidade, não recomendação desses CFOP. Na NF-e, 600 requer examinar o destinatário e as exceções de N12a-70. NT 2024.001, p. 12; MOC, pp. 107–108.
Parâmetros que precisam de confirmação
A escolha de 900 depende do enquadramento da operação residual, do regime e das restrições de modelo. Documento original, tipo de operação, destinatário, UF e data são dados para essa confirmação; uma rejeição não escolhe o código substituto.
Fontes e versões
Declaração consultada: PL 010f v1.04; regras lidas com as atualizações do MOC 7.0.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMSSN900/CSOSN- 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
900- whiteSpace
preserve