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

modBC no ICMS20: modalidade da base reduzida

<modBC>det › imposto › ICMS › ICMS20 › 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 informa a modalidade de determinação da base de cálculo do ICMS próprio no ICMS20. O campo não é a base em reais nem o percentual que a reduz: esses dados são representados por vBC e pRedBC.

Neste artigo:

Quais modalidades são admitidas neste XPath?

Código Modalidade no ICMS20
0 Margem de Valor Agregado, percentual.
1 Pauta, valor.
2 Preço tabelado máximo, valor.
3 Valor da operação.

A enumeração é 0–3, com um dígito, obrigatória após CST. O caminho termina em /ICMS/ICMS20/modBC. Os nomes dizem como a base é determinada; não orientam escolher a modalidade da operação do leitor. MOC 7.0, Anexo I, pp.28–29 e XSD PL_010f_v1.04, ICMS20.

modBCST é outro campo, de base por substituição tributária, com enumeração e condições diferentes. Não copie para modBC um código 4,5 ou 6 usado em modalidade de ST. A presença de MVA na descrição de 0 também não transforma ICMS20 em ICMS70.

Como modalidade e redução se relacionam?

A modalidade determina a origem da base anterior à redução. Depois, o percentual aplicável e a memória de cálculo sustentam o valor de vBC. Não derive a modalidade apenas do total da venda: uma pauta ou preço tabelado depende do produto, unidade e ato da data; valor da operação depende dos componentes que legalmente integram a base.

Exemplo sintético: modalidade 3 já confirmada, base anterior assumida 1000,00 e redução 20%. A base resultante é 800,00. Com taxa 18%, imposto 144,00. A modalidade permanece 3, pRedBC recebe 20, vBC recebe 800 e pICMS recebe 18. Não há cálculo universal da base pelo simples número de modalidade. Consulte documento fiscal, produto/unidade, ato vigente, UF, data e componentes da operação para confirmar os parâmetros com o responsável contábil.

Como fica a modalidade no grupo completo?

Grupo sintético completo, parcial em relação à NF-e; modalidade 3 foi assumida apenas para mostrar a sequência:

<ICMS20 xmlns="http://www.portalfiscal.inf.br/nfe">
  <orig>0</orig>
  <CST>20</CST>
  <modBC>3</modBC>
  <pRedBC>20.0000</pRedBC>
  <vBC>800.00</vBC>
  <pICMS>18.0000</pICMS>
  <vICMS>144.00</vICMS>
</ICMS20>

O campo deve conter 3, não “valor da operação” em texto. O XML usa ponto decimal nas demais tags numéricas. O leiaute é compartilhado por NF-e 55 e NFC-e 65. N12-30 inclui CST 20 entre os admitidos na NFC-e; isso não concede benefício nem dispensa CFOP e demais condições. N12-20 é facultativa e pode gerar 590 quando há CST para CRT 1 ou 4; sua exceção alcança os monofásicos 02, 15, 53, 61: CST 20 não está nessa exceção. A definição do enquadramento depende do regime real, produto, operação, UF, data e ato que prevê a redução. NT 2023.001, p.34; NT 2024.001, p.12.

Como diagnosticar base ou modalidade incompatível?

Em erro de schema, confirme código 0–3, presença, ordem e ramo ICMS20 real. Em divergência de imposto 528, compare a base final informada com a memória da modalidade e a redução aplicada; a regra N17-20 verifica vBC ×pICMS/100 em nota normal 55/65 e é facultativa. Ela não reconstrói todas as parcelas que formaram a base. Para as multiplicações referenciadas pelas regras do MOC, a nota(*4) prevê arredondar o resultado para duas casas e tolerância de R$ 0,01 para mais ou para menos na validação. Não confunda essa tolerância com autorização para mudar valores reais ou arredondar bases e taxas antecipadamente. MOC, p.140, nota (*4).

Se a conta do imposto fecha, mas a origem da base está errada, o problema persiste mesmo sem 528. Não mude a modalidade para outra que produza o valor desejado. Identifique qual cadastro, pauta, tabela ou componente foi usado e corrija somente o dado comprovadamente incorreto. FCP possui base separada vBCFCP; a modalidade própria não prova que as duas bases sejam iguais.

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS20/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