pFCP no ICMS70: alíquota própria, base e rejeições 880/874
<pFCP>det › imposto › ICMS › ICMS70 › pFCPRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
pFCP é o percentual do ICMS relativo ao Fundo de Combate à Pobreza na operação própria do item ICMS70. O caminho é /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS70/pFCP. Ele integra o trio vBCFCP, pFCP e vFCP, distinto do FCP-ST.
Quando o trio aparece e como representar a alíquota
O bloco é opcional no XSD, mas, quando existe, os três elementos são obrigatórios. pFCP não deve ser enviado sozinho nem usado para preencher uma ausência de configuração fiscal. O MOC N17b-10 orienta não informar os campos de FCP para produtos não sujeitos à incidência e prevê 880 para percentual informado igual a zero.
O tipo TDec_0302a04Opc aceita uma representação decimal com ponto e precisão de até quatro casas decimais, conforme suas facetas. Por exemplo, um percentual sintético de 2% pode ser representado por 2.00, sem símbolo %. Isso não significa 0.02 no XML: essa é a fração usada na multiplicação, não o número percentual enviado.
O fato de um decimal caber no tipo XSD não prova que esteja permitido pela legislação. O percentual aplicável deve vir da parametrização respaldada na UF, produto, data e operação, a confirmar com o responsável contábil. Não se recomenda adotar 2% pelo simples fato de ser um número usado em exemplos.
pFCP não está embutido em pICMS
O MOC p. 36 descreve pICMS como alíquota do ICMS sem FCP. Assim, não se deve somar o FCP à alíquota própria e repetir o mesmo adicional em pFCP: isso duplicaria parcelas na memória e perderia a separação do leiaute.
pFCPST é outro percentual, relativo à retenção por substituição tributária, acompanhado de vBCFCPST e vFCPST. pFCPUFDest, em outro grupo, também possui contexto próprio. A coincidência de percentuais não permite copiar bases, valores ou regras de validação entre eles.
Conta sintética de conferência
Para CST 70 e finalidade normal finNFe=1, N17c-10 confronta vFCP com vBCFCP×pFCP/100. Se a base FCP hipotética é R$ 800,00 e a alíquota assumida é 2%, o valor é 800×2/100=16.00. Não aplique novamente pRedBC sobre a base FCP nem suponha que ela seja igual a vBC: a incidência e a base precisam estar determinadas antes.
Recorte sintético do trio, parcial em relação ao item e à nota:
<vBCFCP xmlns="http://www.portalfiscal.inf.br/nfe">800.00</vBCFCP>
<pFCP xmlns="http://www.portalfiscal.inf.br/nfe">2.00</pFCP>
<vFCP xmlns="http://www.portalfiscal.inf.br/nfe">16.00</vFCP>
Nesse trio, 2.00 é percentual e 16.00 é moeda. Uma diferença pode vir de uma base indevida mesmo com percentual correto. Não há necessidade de arredondamento intermediário neste exemplo; valores do XML têm duas casas, e nenhuma tolerância deve ser usada para disfarçar um parâmetro errado.
O que conferir em 880,874 ou 860
N17b-10/880 verifica percentual zero. N17b-20/874 confronta o percentual com tabela definida pela UF do emitente. Para diagnosticar, confirme o campo realmente enviado, a UF do emitente, a tabela aplicável e sua data; não troque a UF ou escolha outra alíquota apenas porque o autorizador aceita.
N17c-10/860 examina o valor do FCP e não determina sozinho se a alíquota está correta. O mesmo código 860 também pode apontar FCP-ST; localize o nItem e o conjunto de campos antes de refazer a conta. Se a divergência é de serialização, corrija o mapeamento; se falta definição de incidência/base/alíquota, confirme especificamente esse dado com o responsável contábil e regenere o documento pelo emissor.
Para N17c-10/860, a nota (*4) do MOC p. 140 prevê produto arredondado a duas casas e tolerância de R$ 0,01 para mais ou menos na validação. Confira os números serializados e a precisão; essa tolerância é da comparação, não uma margem para selecionar base ou percentual, e não se transfere às regras de percentual 880/874.
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>
<vBCFCP>800.00</vBCFCP>
<pFCP>2.00</pFCP>
<vFCP>16.00</vFCP>
<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 trio FCP e pICMS sem FCP; p. 111 N17b
- Schemas XML da NF-e/NFC-e — PL_010f_v1.04, publicado em 31/08/2026. ICMS70/pFCP, TDec_0302a04Opc e sequência
- NT 2020.005, criação e atualização de regras de validação — 1.21, outubro 2021. p. 18 N17c-10, leitura visual
Páginas relacionadas
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS70/pFCP- 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_0302a04Opc · 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-9]{2,4}|[1-9]{1}[0-9]{0,2}(\.[0-9]{2,4})?- whiteSpace
preserve