vICMSST no ICMS10: retenção, cálculo condicionado e total
<vICMSST>det › imposto › ICMS › ICMS10 › vICMSSTRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
vICMSST é o valor do ICMS retido por substituição tributária no item com ICMS10. Seu XPath é /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS10/vICMSST. O campo é obrigatório e monetário. Não é base de cálculo, imposto próprio ou valor de retenção anterior.
As parcelas que precisam estar identificadas
Antes do valor, o grupo contém modBCST, MVA e redução quando aplicáveis, vBCST e pICMSST. A base resulta da modalidade e de seus componentes; a alíquota de ST é informada sem FCP. A retenção deve ser apurada pela regra fiscal aplicável à operação. O MOC define vICMSST como valor retido, sem estabelecer no campo uma fórmula universal para todos os cenários. MOC 7.0 pp. 27–28.
Um exemplo de retenção por diferença
O caput do art.268 do RICMS/SP documenta uma hipótese em que o imposto sobre a base de ST é reduzido pelo imposto devido na operação própria. A demonstração abaixo pressupõe essa lógica já confirmada; não a aplica indistintamente a toda UF, regime ou destinação. RICMS/SP, art.268.
Com base sintética de ST de R$ 1.400,00 e alíquota de 18%, o produto bruto é 1.400 × 18/100 = 252. Admitindo parcela própria dedutível de R$ 120,00, a retenção resulta em 252 − 120 = 132. Portanto, informar R$ 252,00 como retenção nesse cenário ignoraria a parcela própria.
Fragmento sintético parcial interno de ICMS10, pressupondo os campos próprios anteriores com R$ 120,00; não é uma NF-e pronta para transmissão:
<vBCST>1400.00</vBCST>
<pICMSST>18.00</pICMSST>
<vICMSST>132.00</vICMSST>
Os percentuais e bases são didáticos. A parcela dedutível e quaisquer regras específicas precisam estar documentadas; não se conclui sempre que ela será igual a um valor copiado do XML de compra ou a todo vICMS destacado. Tampouco se deve criar automaticamente valor negativo, compensação ou zero por uma fórmula incompleta: resultado inesperado exige revisar condições e memória da operação.
O total se chama vST
No item, o nome é vICMSST; no total, o destino correspondente é total/ICMSTot/vST. A W06-10/534, facultativa, compara esse total com o somatório dos vICMSST dos itens. Se dois itens têm retenções sintéticas de R$ 132,00 e R$ 68,00, o total é R$ 200,00. Não procure uma tag ICMSTot/vICMSST para fazer essa conciliação. MOC pp. 58 e 120.
O total próprio ICMSTot/vICMS não recebe a retenção. O FCP-ST tem ICMSTot/vFCPST, também separado. O valor desonerado vICMSSTDeson não deve ser somado à retenção por uma regra inventada; é outra informação com fundamento e motivo específicos.
Retenção atual e anterior são contextos diferentes
vICMSSTRet documenta ICMS-ST retido anteriormente em grupos apropriados a esse contexto; vICMSST em ICMS10 representa a retenção atual. O CST 60, por exemplo, descreve ICMS cobrado anteriormente por ST. A existência de valor de ST na entrada não torna ICMS10 automaticamente adequado à saída, nem autoriza copiar a retenção anterior para este campo. A classificação depende da operação real e do responsável contábil.
Como investigar o valor ou a rejeição 534
Se a 534 ocorrer, some os valores de todos os itens efetivamente enviados e compare ICMSTot/vST. Se a soma está correta, mas a retenção de um item parece incorreta, investigue sua modalidade, base, componentes, MVA/ajuste, redução, alíquota e parcela dedutível. Uma totalização correta não resolve um cálculo fiscal incorreto.
A N17-20/528 é uma comparação de ICMS próprio; não determina que vICMSST seja igual ao produto bruto da base de ST pela alíquota. Rejeições 932 e 933 tratam modalidade e MVA, não validam sozinhas todo o valor retido. Preserve o XML enviado e o retorno para identificar a regra efetiva antes de corrigir.
O PL 010f v1.04 usa tipo monetário, como 132.00, com ponto, sem símbolo de moeda ou separador de milhar. Base, alíquota e retenção ocupam elementos separados; passar no esquema não comprova apuração correta.
Produto/NCM/CEST, origem, regime, UFs, destinação, operação, data e fundamento permitem confirmar método e parcelas com o responsável contábil. Corrija a origem comprovada do erro, regenere e confira item e total. Não altere parâmetros verdadeiros para compensar diferenças nem edite XML já assinado.
Grupo completo para conferir a sequência
O exemplo abaixo dá contexto estrutural aos campos estudados. É sintético e parcial em relação à NF-e; não é documento pronto para transmissão. Assume origem e parâmetros previamente definidos, base própria de R$ 1.000,00 a 12% e retenção por diferença na hipótese explicada: base de ST de R$ 1.400,00 a 18%, menos R$ 120,00 próprios, resulta em R$ 132,00. Os números são premissas de demonstração, não recomendações de tributação.
<ICMS10 xmlns="http://www.portalfiscal.inf.br/nfe">
<orig>0</orig>
<CST>10</CST>
<modBC>3</modBC>
<vBC>1000.00</vBC>
<pICMS>12.00</pICMS>
<vICMS>120.00</vICMS>
<modBCST>4</modBCST>
<pMVAST>40.00</pMVAST>
<vBCST>1400.00</vBCST>
<pICMSST>18.00</pICMSST>
<vICMSST>132.00</vICMSST>
</ICMS10>
Aprofundamento no mesmo contexto
A página do grupo ICMS10 reúne os campos próprios, de ST, de FCP e de desoneração e suas dependências.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS10/vICMSST- 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
- TDec_1302 · 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.
- pattern
0|0\.[0-9]{2}|[1-9]{1}[0-9]{0,12}(\.[0-9]{2})?- whiteSpace
preserve