Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · ICMS

modBC no ICMSSN900: modalidade da base do ICMS próprio

<modBC>det › imposto › ICMS › ICMSSN900 › modBC

Revisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.

modBC identifica como foi determinada a base de cálculo do ICMS próprio no grupo ICMSSN900. É um código de método, não um percentual nem o valor da base. Sua presença inicia a sequência que também exige vBC, pICMS e vICMS.

XPath do item: /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMSSN900/modBC. 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:

Os quatro métodos previstos

modBC Modalidade
0 Margem de valor agregado, percentual.
1 Pauta, em valor.
2 Preço tabelado máximo, em valor.
3 Valor da operação.

A enumeração pertence à base própria. Não se pode usar o código 4 para MVA aqui: 4 identifica MVA em modBCST, cuja tabela é diferente. A modalidade deve refletir o fundamento confirmado da base própria; a tabela não escolhe o método fiscal da operação. MOC, p. 48; XSD PL 010f.

O que deve acompanhar o código

No 900, o conjunto de ICMS próprio pode ser omitido como um todo. Quando informado, a ordem é modBC, vBC, pRedBC se aplicável, pICMS, vICMS. Portanto, fornecer somente modBC=3 não completa a representação. vBC é a base monetária já formada; pRedBC informa eventual redução; a alíquota em pICMS atua sobre a base final. O código não gera uma base automaticamente e não autoriza assumir que vProd sempre seja igual a vBC.

Um relatório que apresente “base por valor da operação” deve ser conferido com a memória de formação: parcelas, descontos, acréscimos e benefício podem alterar o montante conforme o fundamento fiscal confirmado. A representação do método e a comprovação da formação são tarefas diferentes.

Cálculo e exemplos de conferência

Hipótese didática: método 3 já confirmado, base final de R$ 1.000,00 e alíquota própria 18%. O conjunto representa modBC=3, vBC=1000.00, pICMS=18.00, vICMS=180.00. A conta é 1.000 × 18 ÷ 100 = 180. Se o mesmo código vier com base 800, o método continua 3, mas o valor do imposto, à mesma alíquota, seria 144; é necessário explicar o motivo da mudança da base, e não “corrigir” o código por comparação numérica.

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>
  <modBC>3</modBC>
  <vBC>1000.00</vBC>
  <pICMS>18.00</pICMS>
  <vICMS>180.00</vICMS>
</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

A representação de modBC pertence ao grupo 900. Para CRT 1, o uso de 900 em NFC-e depende de aceitação da UF em N12a-20. Para CRT 4 com idDest<>3, a NFC-e admite somente 102/300, conforme N12a-81; a declaração compartilhada não libera 900 ao MEI. MOC, p. 107; NT 2024.001, p. 13.

Diagnóstico e origem da correção

Em erro de schema, confira código permitido, ordem e quatro campos obrigatórios da sequência. Em divergência de base, compare o método cadastrado com o documento que o fundamenta e a memória do item. Um erro entre modBC 0 e modBCST 4 é de mapeamento entre campos homônimos; a correção técnica deve manter a modalidade real confirmada. As rejeições 932/933 são de modBCST/MVA e não devem ser atribuídas automaticamente a modBC.

Parâmetros que precisam de confirmação

A modalidade e a composição da base própria exigem fundamento da operação. Confirme método, parcelas e eventual benefício; depois confira a sequência no XML. Não deduza a modalidade apenas pelo resultado numérico.

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/modBC
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
0
enumeration
1
enumeration
2
enumeration
3
whiteSpace
preserve