vCOFINS de ISSQNtot: COFINS dos serviços e rejeição 609
<vCOFINS>total › ISSQNtot › vCOFINSRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
ISSQNtot/vCOFINS é o total de COFINS dos itens sujeitos ao ISSQN na NF-e. A origem fica no grupo COFINS de cada item participante; o tributo não muda de natureza por ser totalizado ao lado do ISS.
Onde encontrar total e imposto de origem
No XML processado, localize /nfeProc/NFe/infNFe/total/ISSQNtot/vCOFINS. No documento com raiz NFe, comece em NFe/infNFe. Use o namespace da NF-e ao selecionar o caminho.
Este é um campo da NF-e/NFC-e, no namespace da NF-e; não é uma tag de DPS ou NFS-e municipal/nacional. A existência do grupo no schema não comprova habilitação para emitir documento conjugado nem define o tratamento do serviço. Fonte: Schemas XML NF-e/NFC-e PL 010f e MOC 7 Anexo I — leiaute e regras de validação.
W22-10 usa S11, o valor de COFINS dos itens sujeitos ao ISSQN. Não existe a obrigação de copiar COFINS para dentro de det/imposto/ISSQN: leia o grupo det/imposto/COFINS do mesmo item e mantenha o vínculo com seu nItem. Fonte: MOC 7 Anexo I — leiaute e regras de validação, p.123.
Como separar os diferentes valores de COFINS
ICMSTot/vCOFINS usa o recorte de itens sujeitos ao ICMS; ISSQNtot/vCOFINS usa serviços sujeitos ao ISSQN. retTrib/vRetCOFINS é retenção federal, e COFINSST/vCOFINS é COFINS por substituição tributária. Não desconte automaticamente a retenção do total S11 nem inclua COFINS-ST pela coincidência de nome. Fonte: MOC 7 Anexo I — leiaute e regras de validação, pp.59–60 e 121–123.
Exemplo de conferência de serviços
Hipótese sintética: dois itens sujeitos ao ISSQN já têm COFINS S11 de R$ 3,20 e R$ 1,80; o total W22 é R$ 5,00. Um item com ICMS e COFINS de R$ 4,00 pertence ao outro recorte, sem elevar W22 a R$ 9,00. Nenhuma alíquota, CST ou retenção é sugerida. Depois da classificação e cálculo definidos, a conferência soma os valores serializados. Fonte: MOC 7 Anexo I — leiaute e regras de validação, W22-10.
Formato e exemplo de XML
O total positivo de COFINS usa TDec_1302Opc: ponto, até 13 dígitos inteiros e duas casas na fração. 5.00 atende ao padrão; zero e tag vazia não atendem. Ausência não prova inexistência da contribuição. Fonte: Tipos básicos NF-e/NFC-e.
Fragmento completo de ISSQNtot, parcial em relação à nota, assumindo prestação em 30/09/2026:
<ISSQNtot xmlns="http://www.portalfiscal.inf.br/nfe">
<vCOFINS>5.00</vCOFINS>
<dCompet>2026-09-30</dCompet>
</ISSQNtot>
vCOFINS fica depois de vPIS quando este existe e antes de dCompet. Fonte: Schemas XML NF-e/NFC-e PL 010f.
Como investigar a rejeição 609
A regra W22-10 compara o total com S11 dos itens sujeitos ao ISSQN; a divergência corresponde à rejeição 609, nas condições documentadas. Leia o código e a mensagem do retorno real antes de atribuir a causa. Liste os itens participantes, preserve os valores efetivamente serializados e some-os com aritmética decimal. Compare esse resultado com a tag de total, procurando item omitido, soma duplicada, ancestral errado ou alteração posterior ao cálculo.
Corrija a origem comprovada do erro no cálculo ou no mapeamento; depois gere uma nova prévia e valide novamente o campo, os itens e o XSD aplicável. Não edite XML já assinado ou autorizado para acertar a soma. A regra é facultativa no MOC para 55/65. Para o total de COFINS de itens com ICMS, a comparação é W14-10/603. A aceitação pelo XSD demonstra estrutura, não autorização nem tratamento fiscal correto. Fonte: MOC 7 Anexo I — leiaute e regras de validação.
O PIS dos serviços em ISSQNtot/vPIS completa a leitura das contribuições sem unificar suas somas.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/total/ISSQNtot/vCOFINS- Namespace
http://www.portalfiscal.inf.br/nfe- Leiaute
- 4.00 · PL_010e_v1.02
- Ocorrências no XSD
- 0–1 no contexto do elemento pai
- Tipo
- TDec_1302Opc · 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]{1}[1-9]{1}|0\.[1-9]{1}[0-9]{1}|[1-9]{1}[0-9]{0,12}(\.[0-9]{2})?- whiteSpace
preserve