vBCEfet no ICMS60: formação e conferência da base efetiva
<vBCEfet>det › imposto › ICMS › ICMS60 › vBCEfetRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
vBCEfet em ICMS60 é a base de cálculo que seria atribuída à operação própria do contribuinte substituído caso estivesse submetida ao regime comum. O manual descreve sua formação a partir de vProd e do percentual de redução efetiva. Ela não é a base da retenção anterior apenas renomeada.
Caminho desta página: /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCEfet. O prefixo nfeProc identifica o XML processado; no XML da NF-e antes do protocolo, o percurso começa em NFe. O campo pertence ao item det, não aos totais.
Neste artigo
- Qual é a origem da base efetiva?
- Como conferir redução, base e imposto efetivo?
- Quando a base é exigida junto dos demais campos?
- Como a base deve aparecer no XML?
- Como agir diante de base inesperada ou rejeição 906?
Qual é a origem da base efetiva?
A descrição do campo N35 estabelece o produto de vProd por um menos o percentual de redução efetiva. Como o percentual no XML usa escala de 100, a conta explícita é vBCEfet = vProd × (1 − pRedBCEfet ÷100). Use o valor do produto do item, não o total da nota com outros itens e parcelas.
A conta descrita neste campo não autoriza adicionar ou retirar frete, seguro ou desconto por uma fórmula inventada. Se a operação exige uma interpretação fiscal além dessa representação, confirme os parâmetros com o responsável contábil e mantenha a rastreabilidade. A base de ST anterior em vBCSTRet tem origem documental e função diferentes. Fontes: MOC 7.0, Anexo I, p. 35; NT 2018.005 v 1.52, pp. 14–15.
Como conferir redução, base e imposto efetivo?
A conferência parte do item, não de uma base agregada da nota. Considere duas linhas fictícias:
| Item | vProd | Redução confirmada no cenário | Conta da base | vBCEfet |
|---|---|---|---|---|
| A | 500,00 | 10% | 500,00×(1−0,10) | 450,00 |
| B | 200,00 | 0% explícito | 200,00×(1−0,00) | 200,00 |
O total dos produtos é 700,00, mas nenhuma das duas tags do item recebe 700,00 ou 650,00: cada vBCEfet conserva sua própria conta. Sobre a base 450,00 do item A, uma alíquota fictícia 18% produziria 81,00; no item B produziria 36,00. Esses exemplos não definem um campo de total efetivo nem uma apuração.
Se o item A apresenta 50,00, investigue aplicação da parcela reduzida em vez da restante. Se apresenta 1.000,00, confira se foi copiada a base ST histórica. São hipóteses que exigem memória de cálculo e XML. A fórmula documentada parte de vProd e do percentual confirmado, sem autorizar acrescentar parcelas de outra base por suposição. Fontes: MOC 7.0, Anexo I, p. 35; NT 2018.005 v 1.52, pp. 14–15.
Quando a base é exigida junto dos demais campos?
As informações efetivas representam a operação própria do contribuinte substituído caso ela estivesse submetida ao regime comum de tributação. Não são os valores históricos da retenção. O bloco usa quatro campos: pRedBCEfet, percentual de redução; vBCEfet, base efetiva; pICMSEfet, alíquota efetiva; vICMSEfet, imposto efetivo. O XSD torna a sequência opcional e exige os quatro filhos quando ela é informada.
A N12-82, para modelos 55/65, CST 60 e indFinal=1, prevê a rejeição 906 pela ausência das informações, com implementação opcional a critério da UF. A antiga N33-10 foi removida; não é uma exigência adicional a somar à N12-82. O fato de o grupo ser opcional no XSD não afasta uma exigência da UF. Por outro lado, sua existência no esquema não prova obrigatoriedade em toda operação. Fontes: NT 2018.005 v 1.52, pp. 14–15 e 22; MOC 7.0, Anexo I, pp. 34–35 e 113.
Informar somente a base efetiva sem redução, alíquota e imposto deixa a sequência estrutural incompleta. A ausência do bloco inteiro e a ausência de um filho são problemas diferentes: o primeiro depende da condição fiscal/UF; o segundo viola a sequência quando o bloco foi iniciado.
Como a base deve aparecer no XML?
O tipo TDec_1302 representa valor monetário com até 13 dígitos inteiros e duas casas quando há parte decimal. Use ponto, sem moeda, milhar ou unidade física. A base aparece depois de pRedBCEfet e antes de pICMSEfet.
Trecho parcial com vProd=500.00, redução 10% e alíquota 18% fictícias; não é documento pronto para transmissão:
<ICMS60 xmlns="http://www.portalfiscal.inf.br/nfe">
<orig>0</orig>
<CST>60</CST>
<vBCSTRet>1000.00</vBCSTRet>
<pST>20.0000</pST>
<vICMSSubstituto>90.00</vICMSSubstituto>
<vICMSSTRet>90.00</vICMSSTRet>
<vBCFCPSTRet>1000.00</vBCFCPSTRet>
<pFCPSTRet>2.0000</pFCPSTRet>
<vFCPSTRet>20.00</vFCPSTRet>
<pRedBCEfet>10.0000</pRedBCEfet>
<vBCEfet>450.00</vBCEfet>
<pICMSEfet>18.0000</pICMSEfet>
<vICMSEfet>81.00</vICMSEfet>
</ICMS60>
450.00 é base, 81.00 é imposto. Não use a alíquota 18 no lugar da base nem converta 450,00 em quantidade. O bloco anterior com base 1.000,00 foi incluído para comparação estrutural; os dois valores não precisam coincidir. Fonte: pacote oficial PL 010f, ICMS60; MOC 7.0, Anexo I, pp. 34–35.
Como agir diante de base inesperada ou rejeição 906?
Localize o item e compare prod/vProd, redução confirmada e base gerada. Verifique se a interface mostra os mesmos dados do XML enviado e se o cálculo usa fator percentual correto. Depois compare a alíquota e o valor efetivo; corrigir a base pode exigir recalcular o imposto que dela depende.
Para 906, confira modelo, CST, indFinal=1, UF e o bloco completo conforme N12-82. Não copie a base anterior para satisfazer a mensagem nem altere consumidor final. A N33-10 antiga foi removida. Confirme produto, operação, data, UF e fundamento da redução com o responsável contábil quando faltarem parâmetros. Corrija a origem demonstrada, gere novo XML de teste e confira as quatro informações, preservando o documento assinado. Isso não decide complemento ou restituição. Fontes: NT 2018.005 v 1.52, p. 22; MOC 7.0, Anexo I, pp. 35, 113.
Fontes oficiais
- MOC 7.0 — Anexo I, Leiaute e Regras de Validação NF-e/NFC-e — 7.00, novembro/2020; pp. 33–35 grupo N08; pp. 112–113 N23-10, N27b-10/N27b-20/N27d-10; pp. 120 e 140 totais.
- Nota Técnica 2018.005 — Alteração de leiaute NF-e/NFC-e — 1.52, julho/2025; pp. 4 e 7 histórico; pp. 14–15 grupo ICMS60; p. 22 regras N12-81/N12-82.
- Schemas NF-e/NFC-e — Leiaute NF-e 4.00 — PL_010f_v1.04, catálogo publicado 31/08/2026; ICMS53 linhas 2953–3018; ICMS60 linhas 3019–3111; tipo Torig; sequência e minOccurs.
- Tipos básicos NF-e 4.00 — PL_010f_v1.04; TDec_1104v, TDec_1302, TDec_0302a04, TDec_0302a04Opc, TDec_0302a04Max100.
Leituras relacionadas
- pRedBCEfet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/pRedBCEfet. - pICMSEfet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/pICMSEfet. - vICMSEfet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vICMSEfet. - vBCSTRet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCSTRet.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCEfet- 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