modBCST no ICMS70: códigos 0 a 6, MVA e rejeições 932/933
<modBCST>det › imposto › ICMS › ICMS70 › modBCSTRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
modBCST identifica a modalidade de determinação da base de cálculo do ICMS por substituição tributária. É obrigatório em ICMS70, mas não contém a base monetária, a alíquota nem o imposto retido. O XPath é /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS70/modBCST.
Quais códigos o ICMS70 admite
| Código | Modalidade de base ST |
|---|---|
| 0 | Preço tabelado ou máximo sugerido |
| 1 | Lista negativa, em valor |
| 2 | Lista positiva, em valor |
| 3 | Lista neutra, em valor |
| 4 | Margem de Valor Agregado, em percentual |
| 5 | Pauta, em valor |
| 6 | Valor da operação |
O MOC de 2020 lista 0–5; a NT 2020.005 v1.21, p. 13, acrescenta 6 especificamente ao contexto de ICMS70, e o XSD PL_010f_v1.04 confirma 0–6. Uma integração baseada apenas no MOC antigo pode rejeitar localmente uma enumeração já documentada em atualização posterior. Isso não transforma 6 em modalidade apropriada para qualquer operação.
modBC é o campo da base própria e tem outra enumeração:3 significa valor da operação nesse campo, mas lista neutra em modBCST. MVA é 0 em modBC e 4 em modBCST. O número deve ser interpretado junto com o XPath.
Relação com pMVAST e as rejeições 932/933
Quando a base ST é determinada por MVA, modBCST=4 identifica a modalidade e pMVAST informa o percentual. As regras N18-10 e N18-20, facultativas a critério da UF, verificam essa coerência na NF-e modelo 55:
- N18-10: modalidade 4 sem
pMVASTpode gerar 932. - N18-20: modalidade diferente de 4 com
pMVASTpode gerar 933.
O XSD admite pMVAST opcionalmente, mas não codifica sozinho essas duas condições de negócio. Não preencha uma margem inventada para resolver 932 e não troque uma modalidade verdadeira para silenciar 933. Confira a parametrização fiscal e como a memória da base foi construída; então corrija o mapeamento ou solicite o parâmetro faltante.
O que a modalidade muda na conferência da base
Na modalidade por MVA, uma memória sintética sem encargos adicionais pode partir de R$ 1.000,00 e aplicar 40%, chegando a R$ 1.400,00. A LC 87/1996, art. 8º II, trata da base em operações subsequentes com operação, encargos e margem; seus §§2º,3º e 6º preveem referências de preço em hipóteses próprias. Portanto, o preço de venda não é uma base ST universal, e a MVA não pode ser aplicada automaticamente sobre a base própria já reduzida.
pRedBCST, quando houver redução específica da base ST, é outro percentual e não altera o significado da modalidade. vBCST registra a base final apurada; pICMSST é a alíquota sem FCP; vICMSST é o valor retido. A presença de redução própria no CST 70 não comprova uma redução ST. A definição da modalidade, margem, pauta/preço, encargos e benefício exige a norma aplicável à UF, produto, data e operação, a confirmar com o responsável contábil.
Exemplo parcial e roteiro de integração
Recorte sintético com modalidade 4 e margem 40%; o restante do ICMS70 e da NF-e foi omitido. As contas assumem a hipótese de ST subsequente e imposto próprio 144; os percentuais não são recomendações.
<modBCST xmlns="http://www.portalfiscal.inf.br/nfe">4</modBCST>
<pMVAST xmlns="http://www.portalfiscal.inf.br/nfe">40.00</pMVAST>
<vBCST xmlns="http://www.portalfiscal.inf.br/nfe">1400.00</vBCST>
<pICMSST xmlns="http://www.portalfiscal.inf.br/nfe">18.00</pICMSST>
<vICMSST xmlns="http://www.portalfiscal.inf.br/nfe">108.00</vICMSST>
Primeiro compare o código da modalidade à memória da base. Depois confira se a margem pertence à mesma operação e se a integração não envia um valor antigo ao mudar para pauta/preço/operação. Em seguida, compare vBCST com as parcelas da memória e o cálculo da retenção. O XML deve respeitar essa ordem: modalidade, MVA opcional, redução ST opcional, base, alíquota e valor.
Se o erro é “6 não permitido”, confira a versão do schema que o emissor está usando e a documentação do autorizador. A atualização do pacote local resolve incompatibilidade estrutural apenas quando esse é o problema comprovado; não demonstra implantação efetiva de toda regra fiscal. Se o retorno é 932/933, registre UF, ambiente, modelo e nItem, porque a aplicação dessas validações é facultativa por UF.
Grupo completo para conferência
Este ICMS70 sintético reúne os campos do recorte e o núcleo obrigatório, na ordem do schema. É completo somente em relação ao grupo e parcial em relação à NF-e; não é documento pronto para transmissão. Os números adicionais são hipóteses didáticas, não parâmetros para uma empresa.
<ICMS70 xmlns="http://www.portalfiscal.inf.br/nfe">
<orig>0</orig>
<CST>70</CST>
<modBC>3</modBC>
<pRedBC>20.00</pRedBC>
<vBC>800.00</vBC>
<pICMS>18.00</pICMS>
<vICMS>144.00</vICMS>
<modBCST>4</modBCST>
<pMVAST>40.00</pMVAST>
<vBCST>1400.00</vBCST>
<pICMSST>18.00</pICMSST>
<vICMSST>108.00</vICMSST>
</ICMS70>
Referências oficiais
- MOC 7.0, Anexo I, leiaute e regras de validação — 7.00, novembro 2020. p. 36 N18–N23; p. 111 N18-10/20
- NT 2020.005, criação e atualização de regras de validação — 1.21, outubro 2021. p. 13 modBCST6
- NT 2019.001, criação e atualização de regras de validação — 1.70, agosto 2025. p.20 N18-10/20
- Schemas XML da NF-e/NFC-e — PL_010f_v1.04, publicado em 31/08/2026. ICMS70/modBCST enumeração 0–6
- Lei Complementar 87/1996, texto compilado — texto compilado consultado em 13/10/2026. art. 8º II e §§2º,3º,6º
Páginas relacionadas
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS70/modBCST- 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- enumeration
4- enumeration
5- enumeration
6- whiteSpace
preserve