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

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

<modBC>det › imposto › ICMS › ICMS90 › 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 indica como foi determinada a base de cálculo do ICMS próprio do item no ICMS90. Seu código descreve o método, enquanto vBC informa o valor final em reais. Não é o código de modalidade de substituição tributária, modBCST.

Neste artigo:

Quais códigos este campo aceita?

O domínio é 0=Margem de Valor Agregado (%), 1=Pauta (valor), 2=Preço Tabelado Máximo (valor) e 3=Valor da Operação. Apesar de 0 mencionar MVA, não se deve copiar a modalidade 4 de modBCST: são campos diferentes com enumerações próprias. O código é um dígito, sem percentual ou expressão textual. Schemas NF-e/NFC-e PL_010f_v1.04 NT 2022.002 — Equiparação à exportação e outras alterações

modBC é sempre obrigatório no CST 90?

Ele é obrigatório dentro do bloco próprio, mas esse bloco inteiro é opcional estruturalmente. Se usado, modBC abre a sequência e exige vBC, pICMS e vICMS; pRedBC e cBenefRBC podem intercalar-se antes de pICMS, e o diferimento pode aparecer depois da alíquota. Informar modBC sem a base ou os resultados produz uma sequência incompleta. A opcionalidade externa não determina se o ICMS próprio deve existir na situação fiscal real. Schemas NF-e/NFC-e PL_010f_v1.04 NT 2022.002 — Equiparação à exportação e outras alterações

Como conferir método e valor sem presumir a base?

Localize o fundamento documentado da operação e o cálculo que originou vBC. No método valor da operação, não conclua que vBC deve ser automaticamente igual a vProd: parcelas, exclusões e reduções dependem do contexto legal. Em pauta ou preço tabelado, confira a tabela, unidade, quantidade e vigência que sustentaram o valor. O XML registra a modalidade e a base resultante; não carrega todos os documentos que a justificam. NT 2022.002 — Equiparação à exportação e outras alterações

Como ler o exemplo e corrigir erro de integração?

O exemplo assume método 3 e base já determinada de R$ 1.000,00. A alíquota sintética 18% gera imposto 180. Se o retorno mencionar formato ou elemento esperado, confira o domínio 0–3 e a posição de modBC antes de vBC. Se a estrutura passar mas a base parecer incorreta, reconstrua as parcelas e o método no cálculo de origem; trocar o código para fazer caber um valor não demonstra correção fiscal. Schemas NF-e/NFC-e PL_010f_v1.04 MOC 7.0 — Anexo I, Leiaute e Regras de Validação

Exemplo XML sintético

Fragmento sintético sem redução ou diferimento: modBC=3, base de R$ 1.000,00, alíquota de 18% e ICMS de R$ 180,00. O exemplo testa a sequência completa do bloco próprio e não sugere uma modalidade para a empresa.

<ICMS90 xmlns="http://www.portalfiscal.inf.br/nfe">
  <orig>0</orig>
  <CST>90</CST>
  <modBC>3</modBC>
  <vBC>1000.00</vBC>
  <pICMS>18.00</pICMS>
  <vICMS>180.00</vICMS>
</ICMS90>

Este é um fragmento completo do grupo ICMS90, parcial em relação à nota. Ele demonstra forma e dependências, sem assinatura, documento completo ou autorização fiscal. Não deve ser enviado como nota pronta.

Conferência técnica e limite da orientação

Para localizar o campo em XML de nota processada, use /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS90/modBC com o namespace http://www.portalfiscal.inf.br/nfe. No XML de NFe sem o envelope nfeProc, o caminho começa em NFe/infNFe. Compare o item correto; campos de mesmo nome em outro CST ou nos totais têm contexto diferente.

Os parâmetros que exigem confirmação são: modalidade legal, tabela/unidade/vigência quando aplicável, composição da base. Reúna a documentação da operação, a UF, a data de emissão e a memória de cálculo. Após definidos esses parâmetros, confira a geração e os valores do exemplo com os dados reais. O artigo explica a representação técnica; não escolhe enquadramento, alíquota ou benefício para a empresa. XML bem formado ou válido no XSD não comprova autorização. O pacote PL_010f_v1.04 define a estrutura examinada; a implantação de cada regra depende do cronograma específico, do modelo e da UF. Schemas NF-e/NFC-e PL_010f_v1.04

Referência técnica para integração

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