vBCFCPSTRet no ICMS60: base do FCP anteriormente retido
<vBCFCPSTRet>det › imposto › ICMS › ICMS60 › vBCFCPSTRetRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
vBCFCPSTRet em ICMS60 é a base monetária do Fundo de Combate à Pobreza retido anteriormente por substituição tributária. Ela acompanha pFCPSTRet e vFCPSTRet. O campo descreve a base do fundo anterior, não a base de uma nova retenção ou da tributação efetiva.
Caminho desta página: /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCFCPSTRet. 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
- De onde vem a base do FCP anterior?
- Como a base participa do cálculo do FCP?
- Por que base de FCP, base de ST e base efetiva podem diferir?
- Como representar a base no XML?
- Como diagnosticar diferença no valor ou no total?
De onde vem a base do FCP anterior?
A fonte é a documentação da retenção anterior correspondente à mercadoria e à parcela informada no item. Não reconstrua essa base copiando o preço atual, o total da nota ou a base efetiva. Também não presuma igualdade com vBCSTRet: a estrutura possui dois campos para grandezas distintas e exige que cada um reflita sua informação real.
Se o sistema importa dados de aquisição, confira o item, a quantidade abrangida, a unidade e o vínculo com o produto atual. A forma de atribuir uma retenção anterior a uma quantidade de saída pode depender de registros e critérios fiscais que o artigo não escolhe. Leve documentos, quantidades e período ao responsável contábil se essa correspondência não estiver definida. Fontes: MOC 7.0, Anexo I, p. 34; NT 2018.005 v 1.52, p. 14.
Como a base participa do cálculo do FCP?
O bloco de Fundo de Combate à Pobreza retido anteriormente tem três parcelas: vBCFCPSTRet, base monetária; pFCPSTRet, percentual; vFCPSTRet, valor. A sequência é opcional no XSD, mas seus três filhos são obrigatórios quando existe. Não preencha apenas o percentual nem crie uma tag contêiner chamada N27.1: esse nome identifica uma sequência do manual, não um elemento XML.
Em um exemplo sintético, com base anterior de 1.000,00 e percentual fictício de 2%, o FCP retido é 1.000,00 × (2 ÷100) =20,00. A base, a incidência e o percentual reais precisam ser comprovados. A fórmula desse valor anterior não subtrai automaticamente o vFCP próprio de outra operação: o MOC N27d-10 descreve o produto da base pelo percentual para CST 60/CSOSN500.
A N27b-10, modelos 55/65, relaciona percentual retido igual a zero à rejeição 881 e orienta não informar os campos de FCP-ST de produto não sujeito à incidência. A N27b-20/875 confronta o percentual com a tabela da UF do destinatário quando esta não é EX; havendo UF do local de entrega diferente de EX, admite como válida a alíquota do destinatário ou da entrega. A N27d-10/860 verifica o valor em documento normal (finNFe=1), mas está marcada como implementação futura no MOC consultado. Não apresente 860 como rejeição garantidamente ativa para esse XPath. Fontes: MOC 7.0, Anexo I, pp. 112–113; NT 2018.005 v 1.52, p. 14.
Por que base de FCP, base de ST e base efetiva podem diferir?
A base FCP anterior corresponde ao fundo retido; vBCSTRet corresponde ao ICMS-ST anterior; vBCEfet representa a operação própria no cenário de regime comum. A comparação deve começar pela origem e finalidade, antes de exigir que os números sejam iguais.
No exemplo sintético, as duas bases anteriores são 1.000,00 por hipótese, enquanto a base efetiva é 450,00, calculada de vProd=500.00 com redução 10%. A coincidência das bases anteriores não é uma regra; a diferença da base efetiva também não demonstra erro. pST=20% já inclui FCP incidente no cenário 18+2, sem converter o campo do fundo em uma segunda cobrança nova. Fontes: MOC 7.0, Anexo I, pp. 34–35; NT 2018.005 v 1.52, pp. 14–15.
Como representar a base no XML?
A base usa TDec_1302, tipo monetário. Ela é a primeira do bloco FCP anterior; depois vêm percentual e valor. O bloco é opcional, mas, quando informado, exige os três filhos. Não crie um contêiner XML para a sequência N27.1 do manual.
Trecho parcial com base anterior 1.000,00 e percentual 2% fictícios, sem validade como nota pronta:
<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>
O texto 1000.00 usa ponto decimal, sem vírgula ou símbolo monetário. Base ausente não se torna 0,00; uma base existente e válida não deve ser apagada apenas porque a tela recolheu o bloco. Fonte: pacote oficial PL 010f, ICMS60 e TDec_1302.
Como diagnosticar diferença no valor ou no total?
Compare a base anterior com o documento e o percentual do fundo. No exemplo,1.000×2%=20; usar a base efetiva 450 produziria 9, outra quantia. Confira se o gerador copiou a base errada ou se o percentual foi usado sem converter por 100. A causa só está confirmada quando aparece nos dados e no cálculo.
Na NF-e 55, a W06b-10/859 compara o total de vFCPSTRet com a soma dos valores dos itens, não com a soma das bases. Uma base errada pode afetar o valor, mas a rejeição de total exige conferir também o somador. N27d-10/860 está marcada como futura; 881 e 875 verificam percentuais com condições próprias. Confirme documentação, produto, data e incidência, ajuste a fonte comprovadamente errada e confira novo XML de teste sem editar o assinado. Fontes: MOC 7.0, Anexo I, pp. 112–113, 120.
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
- pFCPSTRet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/pFCPSTRet. - vFCPSTRet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vFCPSTRet. - vBCSTRet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCSTRet. - vBCEfet em ICMS60 —
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCEfet.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS60/vBCFCPSTRet- 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