14.7.2. Impostos do Produto
14.7.2.8. PIS
14.7.2.7. II
« Anterior
14.7.2.9. PISST NT2020005
Próximo »

14.7.2.8. PIS [18-01-14]

Grupo de PIS da NF-e

Funcionalidade para gerar o XML do grupo do PIS da NF-e

Assinatura

string PIS(string CST, double vBC, double pPIS, double vPIS, double qBCProd, double vAliqProd);

Descrição:

Funcionalidade para gerar as informações do PIS 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 PIS, para CST=05 informe o grupo PISST PISST.
Cabe ressaltar que a informação do grupo PISST não desobriga a informação do grupo PIS.
vBC double 15,2 ? Informar o Valor da BC do PIS, este campo deve ser informado em caso de alíquota ad valorem.
pPIS double 5,2-4 ? Informar a alíquota percentual do PIS, este campo deve ser informado em caso de alíquota ad valorem.
(quantidade de decimais alterado para aceitar de 2 a 4 decimais)
vPIS double 15,2 sim Informar o Valor do PIS
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 PIS 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 PIS: 0.65% (pPIS)
  • BC do PIS: Valor da BC: 100,00 (vBC)
  • Valor do PIS: 0.65% de 100,00 = 0.65

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 PIS em R$: 0,0076 (*vAliqProd)
  • Quantidade do produto na unidade tibutável: 1000 (qBCProd)
  • Valor do PIS: 1000 x 0,0076 = 0,76

Diagrama:

DiagramaIdentificacao

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
 '
 pis_CST = "01"
 pis_vBC = 100
 pis_pPIS = 0.65
 pis_qBCProd = 0
 pis_vAliqProd = 0
 pis_vPIS = 0.65
 '
 ' chamada da DLL para criar o grupo PIS
 '
 PIS = util.PIS( pis_CST, pis_vBC, pis_pPIS, pis_vPIS, pis_qBCProd, pis_vAliqProd)
 
 MsgBox PIS, vbInformation, "Informação"

Trecho do XML do grupo PIS para Alíquota ad valorem (CST = 01 ou 02)

<PIS>
    <PISAliq>
       <CST>01</CST>
       <vBC>100.00</vBC>
       <pPIS>0.65</pPIS>
       <vPIS>0.65</vPIS>
    </PISAliq>
</PIS>

Exemplo para Alíquota específica (CST = 03)

 
 Dim Util As Object
 
 Set Util = CreateObject("NFe_Util_2G.Util")
 
 '
 ' atribuição de valores
 '
  pis_CST = "03"
  pis_vBC = 0
  pis_pPIS = 0
  pis_qBCProd = 1000
  pis_vAliqProd = 0.0076
  pis_vPIS = 0.76
  '
  ' chamada da DLL para criar o grupo PIS
  '
 PIS = util.PIS( pis_CST, pis_vBC, pis_pPIS, pis_vPIS, pis_qBCProd, pis_vAliqProd)

Trecho do XML do grupo PIS para Alíquota específica (CST = 03)

<PIS>
    <PISQtde>
       <CST>03</CST>
       <qBCProd>1000.0000</qBCProd>
       <vAliqProd>0.0076</vAliqProd>
       <vPIS>0.76</vPIS>
    </PISQtde>
</PIS>

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
 '
 pis_CST = "04"
 pis_vBC = 0
 pis_pPIS = 0
 pis_qBCProd = 0
 pis_vAliqProd = 0
 pis_vPIS = 0
 '
 ' chamada da DLL para criar o grupo PIS
 '
 PIS = util.PIS( pis_CST, pis_vBC, pis_pPIS, pis_vPIS, pis_qBCProd, pis_vAliqProd)

Trecho do XML do grupo PIS para operação não tributadas - NT (CST = 04, 05, 06, 07, 08 ou 09)

<PIS>
    <PISNT>
       <CST>04</CST>
    </PISNT>
</PIS>

Exemplo de PIS 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
 '
 pis_CST = "99"
 pis_vBC = 0
 pis_pPIS = 0
 pis_qBCProd = 0
 pis_vAliqProd = 0
 pis_vPIS = 0
 '
 ' chamada da DLL para criar o grupo PIS
 '
 PIS = util.PIS( pis_CST, pis_vBC, pis_pPIS, pis_vPIS, pis_qBCProd, pis_vAliqProd)

Trecho do XML do grupo PIS para EMISSOR OPTANTE DO SIMPLES NACIONAL

<PIS>
    <PISOutr>
       <CST>99</CST>
       <qBCProd>0.0000</qBCProd>
       <vAliqProd>0.0000</vAliqProd>
       <vPIS>0.00</vPIS>
    </PISOutr>
</PIS>

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.8. PIS
14.7.2. Impostos do Produto
« Anterior
14.7.2.7. II
Próximo »
14.7.2.9. PISST NT2020005