16.7.1. Dados do Produto
16.7.1.1. Detalhe dos Produtos e Serviços
16.7.1. Dados do Produto
« Anterior
16.7.1.2. Detalhe dos Produtos e Serviços 2G
Próximo »

16.7.1.1. Detalhe dos Produtos e Serviços

Funcionalidade para gerar o XML do grupo do detalhamento de produtos e Serviços da NF-e

Assinatura

string produto(string cProd, string cEAN, string xProd, string NCM, string EXTIPI, int genero, int CFOP, string uCom, double qCom, double vUnCom, double vProd, string cEANTrib, string uTrib, double qTrib, double vUnTrib, double vFrete, double vSeg,double vDesc, string DI, string DetEspecifico);

Descrição:

Funcionalidade para gerar o XML do grupo do detalhamento de produtos e Serviços na versão 1.10 do leiaute da NF-e.

A versão 1.10 do leiaute da NF-e vale somente até 31/03/2011, prorrogado pelo Ato COTEPE 36/2010.

Parâmetros:

nome tipo tam. obrig. descrição
cProd string 1-60 sim informar o código do produto ou serviço. Preencher com CFOP, caso se trate de itens não relacionados com mercadorias/produtos e que o contribuinte não possua codificação própria. Formato ”CFOP9999”.
cEAN string 0,8,12,13,14 sim informar o GTIN (Global Trade Item Number) do produto, antigo código EAN ou código de barras. Preencher com o código GTIN-8, GTIN-12, GTIN-13 ou GTIN-14 (antigos códigos EAN, UPC e DUN-14), não informar o conteúdo da TAG em caso de o produto não possuir este código.
xProd string 1-120 sim informar a descrição do produto ou serviço.
NCM string 8 não informar o Código NCM com 8 dígitos, pode ser omitido quando a operação não for de comércio exterior (importação/ exportação) ou o produto não seja tributado pelo IPI.
EXTIPI string 2,3 não informar de acordo com o código EX da TIPI se houver para o NCM do produto.
genero inteiro - não informar o gênero (posição do capítulo do NCM) quando a operação não for de comércio exterior (importação/ exportação) ou o produto não seja tributado pelo IPI, pode ser omitido se o NCM tiver sido informado. Em caso de serviço informar o código 99.
CFOP inteiro 4 sim informar o CFOP - Código Fiscal de Operações e Prestações.
uCOM string 1-6 sim informar a unidade de comercialização do produto (Ex. pc, und, dz, kg, etc.).
qCOM duplo 12,4 sim informar a quantidade de comercialização do produto.
vUnCOM duplo 16,4 sim informar o valor unitário de comercialização do produto.
vProd duplo 15,2 sim informar o valor total bruto do produto ou serviços.
cEANTrib string 0,8,12,13,14 sim informar o GTIN (Global Trade Item Number) da unidade de tributação do produto, antigo código EAN ou código de barras. Preencher com o código GTIN-8, GTIN-12, GTIN-13 ou GTIN-14 (antigos códigos EAN, UPC e DUN-14), não informar o conteúdo da TAG em caso de o produto não possuir este código.
uTrib string 1-6 sim informar a unidade de tributação do produto (Ex. pc, und, dz, kg, etc.).
qTrib duplo 12,4 sim informar a quantidade de tributação do produto.
vUnTriv duplo 16,4 sim informar o valor unitário de tributação do produto.
vFrete duplo 15,2 não informar o valor do Frete, o Frete deve ser rateado entre os itens de produto.
vSeg duplo 15,2 não informar o valor do Seguro, o Seguro deve ser rateado entre os itens de produto.
vDesc duplo 15,2 não informar o valor do desconto do item de produto ou serviço.
DI string - não informar o XML do grupo DI - dados da importação nas operações de importação.
DetEspecifico string - não informar o XML do grupo veicProd - detalhamento de específico de veículos novos ou com o XML do grupo med - detalhamento de específico de medicamentos ou com o XML do grupo arma - detalhamento de específico de armamentos ou com o XML do grupo comb - detalhamento de específico de combustíveis e lubrificantes.

Diagrama:

DiagramaProduto

Dica

Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.

Os grupos XML veicProd (detalhamento específico de veículos novos), med (detalhamento específico de medicamentos e insumos), arma (detalhamento específico de armamentos) e comb (detahamento específico de combustíveis e lubrificantes) são grupos XML que devem ser gerados em separado e são mutuamente exclusivos. Apenas um deles deve ser informado no parâmetro DetEspecifico.

Retorno:

Um string com o grupo XML do detalhe do Produto ou Serviço

XML:

Exemplo de XML do produto simples

<prod>
        <cProd>00001</cProd>
        <cEAN/>
        <xProd>Agua Mineral</xProd>
        <CFOP>5101</CFOP>
        <uCom>dz</uCom>
        <qCom>1000.0000</qCom>
        <vUnCom>1</vUnCom>
        <vProd>1000.00</vProd>
        <cEANTrib/>
        <uTrib>und</uTrib>
        <qTrib>12000.0000</qTrib>
        <vUnTrib>1</vUnTrib>
</prod>

Exemplo de XML do produto com detalhamento específico de medicamento

 
<prod>
      <cProd>402729</cProd>
      <cEAN>7891058008628</cEAN>
      <xProd>DORFLEX 24X10 CP CH</xProd>
      <NCM>30049012</NCM>
      <genero>30</genero>
      <CFOP>5409</CFOP>
      <uCom>CX</uCom>
      <qCom>2.000</qCom>
      <vUnCom>25.4850</vUnCom>
      <vProd>50.97</vProd>
      <cEANTrib>7891058008628</cEANTrib>
      <uTrib>CX</uTrib>
      <qTrib>2.000</qTrib>
      <vUnTrib>25.4850</vUnTrib>
      <med>
           <nLote>602958</nLote>
           <dVal>2008-05-01</dVal>
           <vPMC>80.73</vPMC>
      </med>
</prod>

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.

Exemplos de uso:

Visual Basic 6.0

' inicializar variáveis
'...............................................

Dim objNFeUtil As NFe_Util_2G.Util
 
Set objNFeUtil = New NFe_Util_2G.Util
'
'
'================grupo de detalhe do produto (grupo I01 do Manual de integração - páginas 95)=======================
'
'
Prod_cProd = "001152"                       ' código do produto
Prod_cEAN = "7897844200115"                 ' código EAN (0, 8,12, 13 ou 14 caracteres), o conteúdo pode ser omitido se não tiver EAN
Prod_xProd = "Cola Especial para EPS"       ' código do produto, espaços em branco consecutivos ou no início ou fim do campo podem
                                            ' gerar erro de Schema XML, além de caracteres reservados do XML <>&"'
Prod_NCM = ""                               ' código NCM, pode informar somente a posição do capítulo se a operação não for sujeito ao IPI
Prod_ExTIPI = ""                            ' ExTipi, informar de acordo com o código EX da TIPI se houver para o NCM do produto
Prod_genero = 0                             ' informar as duas primeiras posições do NCM
Prod_CFOP = "5102"                          ' CFOP do operação, causa erro de XML se informado um código inexistente
Prod_uCOM = "UN"                            ' unidade de comercialização
Prod_qCom = 10                              ' quantidade de comercialização
Prod_vUnCom = 1                             ' valor unitário de comercialização, campo de mera demonstração deve ser o resultado da
                                            ' da divisão do vProd / qCom
Prod_vProd = 10                             ' valor do total do item
Prod_cEANTrib = "7897844200115"             ' código EAN (0, 8,12, 13 ou 14 caracteres), o conteúdo pode ser omitido se não tiver EAN,
                                            ' em geral é o mesmo código do EAN de comercialização
Prod_uTrib = "UN"                           ' unidade de tributação, na maioria dos casos é idêntico  ao vUnCom, pode diferente nos
                                            ' casos de produtos sujeitos a ST em que a unidade de pauta é diferente da unidade de
                                            ' comercialização
                                            ' Ex. unidade de comercialização = 1 pack de lata de cerveja => unidade de tributação = 
                                            ' 1 lata (preço de pauta)
Prod_qTrib = 10                             ' quantidade de comercialização
Prod_vUnTrib = 1                            ' valor unitário de tributação, campo de mera demonstração deve ser o resultado da
                                            '  divisão do vProd / qTrib
Prod_vFrete = 0                             ' valor do frete, se cobrado do cliente deve ser rateado entre os itens de produto
Prod_vSeguro = 0                            ' valor do seguro, se cobrado do cliente deve ser rateado entre os itens de produto
prod_Vdesc = 0                              ' valor do desconto concedido
Prod_DI = ""                                ' dados da importação, informar apenas no caso de NF de entrada (importação), para montar
                                            ' o grupo utilize a funcionalidade DI
Prod_DetEspecifico = ""                     ' dados específicos, informar para medicamento, veículos novos, armamentos e
                                            '  combustíveis, para montar o grupo utilizar a funcionalidade correspondente

'
'   gera grupo do produto
'
prod = objNFeUtil.produto(Prod_cProd, Prod_cEAN, Prod_xProd, Prod_NCM, Prod_ExTIPI, prod_gernero, Prod_CFOP, Prod_uCOM, Prod_qCom, Prod_vUnCom, Prod_vProd, Prod_cEANTrib, Prod_uTrib, Prod_qTrib, Prod_vUnTrib, Prod_vFrete, Prod_vSeg, Prod_Vdesc, Prod_DI, Prod_DetEstpecifico)

Importante

Se houver mais de um item de detalhe, o usuário deve concatenar os detalhes.

16.7.1.1. Detalhe dos Produtos e Serviços
16.7.1. Dados do Produto
« Anterior
16.7.1. Dados do Produto
Próximo »
16.7.1.2. Detalhe dos Produtos e Serviços 2G