- 16.7.2. Impostos do Produto
16.7.2.8. COFINS - 16.7.2.7. PISST
« Anterior - 16.7.2.9. COFINSST
Próximo »
16.7.2.8. COFINS
Grupo de COFINS da NF-e
Funcionalidade para gerar o XML do grupo do COFINS da NF-e
Assinatura
string COFINS(string CST, double vBC, double pCOFINS, double vCOFINS, double qBCProd, double vAliqProd);
Descrição:
Funcionalidade para gerar as informações do COFINS do item de produto da NF-e.
Este grupo é de informação obrigatória para todos os itens da NF-e.
Parâmetros:
| nome | tipo | tam. | obrig. | descrição |
|---|---|---|---|---|
| CST | string | 2 | sim | Informar o Código de Situação Tributária do COFINS, para CST=05 informe o grupo COFINSST COFINSST. Cabe ressaltar que a informação do grupo COFINSST não desobriga a informação do grupo COFINS. |
| vBC | double | 15,2 | ? | Informar o Valor da BC do COFINS, este campo deve ser informado em caso de alíquota ad valorem. |
| pCOFINS | double | 5,2 | ? | Informar a alíquota percentual do COFINS, este campo deve ser informado em caso de alíquota ad valorem. |
| vCOFINS | double | 15,2 | sim | Informar o Valor do COFINS |
| qBCProd | double | 16,4 | ? | Informar a quantidade vendida, este campo deve ser informado em caso de alíquota específica. |
| vAliqProd | double | 15,4 | ? | Informar a alíquota do COFINS em reais, este campo deve ser informado em caso de alíquota específica. |
CST = 05 do COFINS
Este grupo só serve para detalhar as informações do COFINS da operação própria do emissor da NF-e. Em algumas situações raras existe a necessidade de informar o CST = 05 - COFINS retido por Substituição Tributárias do destinatário da mercadoria. Nestes casos, o valor do COFINS ST deve ser informado no grupo COFINSST. Cabe ressaltar que a informação do grupo COFINSST não desobriga a informação do grupo COFINS.
Os tributos podem ter "Alíquota ad valorem" ou "Alíquota específica".
Alíquota ad valorem
Nesta modalidade de tributação, a base de cálculo é o valor do bem tributado e o valor do tributo é obtido com a aplicação de uma alíquota.
Ex.:
- Alíquota do COFINS: 3,00% (pCOFINS)
- BC do COFINS: Valor da BC: 100,00 (vBC)
- Valor do COFINS: 3.00% de 100,00 = 3.00
Alíquota específica
Nesta modalidade de tributação a base de cálculo é a quantia por unidade da mercadoria, o valor do tributo é um valor fixo para esta quantia, o valor total do tributo neste caso é o produto do valor do tributo pela quantidade.
Ex.:
- Valor da alíquota do COFINS em R$: 0,0076 (*vAliqProd)
- Quantidade do produto na unidade tibutável: 1000 (qBCProd)
- Valor do COFINS: 1000 x 0,0076 = 0,76
Diagrama:

Retorno:
Um string com o grupo XML de identificação
Exemplos:
Exemplo para Alíquota ad valorem (CST = 01 ou 02)
' ' atribuição de valores ' cofins_CST = "01" cofins_vBC = 100 cofins_pCOFINS = 3.00 cofins_qBCProd = 0 cofins_vAliqProd = 0 cofins_vCOFINS = 3.00 ' ' chamada da DLL para criar o grupo COFINS ' COFINS = util.COFINS( cofins_CST, cofins_vBC, cofins_pCOFINS, cofins_vCOFINS, cofins_qBCProd, cofins_vAliqProd)
Trecho do XML do grupo COFINS para Alíquota ad valorem (CST = 01 ou 02)
<COFINS> <COFINSAliq> <CST>01</CST> <vBC>100.00</vBC> <pCOFINS>3.00</pCOFINS> <vCOFINS>3.00</vCOFINS> </COFINSAliq> </COFINS>
Exemplo para Alíquota específica (CST = 03)
' ' atribuição de valores ' cofins_CST = "03" cofins_vBC = 0 cofins_pCOFINS = 0 cofins_qBCProd = 1000 cofins_vAliqProd = 0.0076 cofins_vCOFINS = 0.76 ' ' chamada da DLL para criar o grupo COFINS ' COFINS = util.COFINS( cofins_CST, cofins_vBC, cofins_pCOFINS, cofins_vCOFINS, cofins_qBCProd, cofins_vAliqProd)
Trecho do XML do grupo COFINS para Alíquota específica (CST = 03)
<COFINS> <COFINSQtde> <CST>03</CST> <qBCProd>1000.0000</qBCProd> <vAliqProd>0.0076</vAliqProd> <vCOFINS>0.76</vCOFINS> </COFINSQtde> </COFINS>
Exemplo para operação não tributadas - NT (CST = 04,06, 07, 08 ou 09)
' ' atribuição de valores ' cofins_CST = "04" cofins_vBC = 0 cofins_pCOFINS = 0 cofins_qBCProd = 0 cofins_vAliqProd = 0 cofins_vCOFINS = 0 ' ' chamada da DLL para criar o grupo COFINS ' COFINS = util.COFINS( cofins_CST, cofins_vBC, cofins_pCOFINS, cofins_vCOFINS, cofins_qBCProd, cofins_vAliqProd)
Trecho do XML do grupo COFINS para operação não tributadas - NT (CST = 04, 06, 07, 08 ou 09)
<COFINS> <COFINSNT> <CST>04</CST> </COFINSNT> </COFINS>
Exemplo para EMISSOR OPTANTE DO SIMPLES NACIONAL (vide NT 2009/004)
' ' atribuição de valores ' cofins_CST = "99" cofins_vBC = 0 cofins_pCOFINS = 0 cofins_qBCProd = 0 cofins_vAliqProd = 0 cofins_vCOFINS = 0 ' ' chamada da DLL para criar o grupo COFINS ' COFINS = util.COFINS( cofins_CST, cofins_vBC, cofins_pCOFINS, cofins_vCOFINS, cofins_qBCProd, cofins_vAliqProd)
Trecho do XML do grupo COFINS para EMISSOR OPTANTE DO SIMPLES NACIONAL
<COFINS> <COFINSOutr> <CST>99</CST> <qBCProd>0.0000</qBCProd> <vAliqProd>0.0000</vAliqProd> <vCOFINS>0.00</vCOFINS> </COFINSOutr> </COFINS>
Importante
O trecho do XML foi formatado para uma melhor visualização, a mensagem original não tem formatação.
Vale observar que a formatação pode corromper a assinatura digital, além de ocupar espaço e ser desnecessária, pois os browser exibem formatado.
- 16.7.2.8. COFINS
16.7.2. Impostos do Produto - « Anterior
16.7.2.7. PISST - Próximo »
16.7.2.9. COFINSST