- 14.7.2. Impostos do Produto
14.7.2.10. COFINS [18-01-14] - 14.7.2.9. PISST NT2020005 [11-07-21]
« Anterior - 14.7.2.11. COFINSST NT2020005 [11-07-21]
Próximo »
14.7.2.10. COFINS [18-01-14]
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.
Novidades
Casas decimais - os campos de alíquota e percetual foram alterados para serem gerados com até 4 decimais, ex: 18.00, 1.234, 1.2345, etc. Os zeros não siginficativos só serão gerados para as 2 casas decimais: 18.00 (18, 18.0, 18.00, 18.000 e 18.0000 serão gerados como: 18.00)
CST=05 - A versão 3.10 do leiaute da NF-e passa a aceitar o valor 05 para o CST.
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-4 | ? | Informar a alíquota percentual do COFINS, este campo deve ser informado em caso de alíquota ad valorem. (quantidade de decimais alterado para aceitar de 2 a 4 decimais) |
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. |
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)
Dim Util As Object Set Util = CreateObject("NFe_Util_2G.Util") ' ' 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) MsgBox COFINS, vbInformation, "Informação"
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)
Dim Util As Object Set Util = CreateObject("NFe_Util_2G.Util") ' ' 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, 05, 06, 07, 08 ou 09)
Dim Util As Object Set Util = CreateObject("NFe_Util_2G.Util") ' ' 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, 05, 06, 07, 08 ou 09)
<COFINS> <COFINSNT> <CST>04</CST> </COFINSNT> </COFINS>
Exemplo para EMISSOR OPTANTE DO SIMPLES NACIONAL (vide NT 2009/004)
Dim Util As Object Set Util = CreateObject("NFe_Util_2G.Util") ' ' 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.
- 14.7.2.10. COFINS [18-01-14]
14.7.2. Impostos do Produto - « Anterior
14.7.2.9. PISST NT2020005 [11-07-21] - Próximo »
14.7.2.11. COFINSST NT2020005 [11-07-21]