- 16.1. Identificação da NF-e
16.1.1. Identificação da NF-e - 16.1. Identificação da NF-e
« Anterior - 16.1.2. Identificação da NF-e 2G
Próximo »
16.1.1. Identificação da NF-e
Funcionalidade para gerar o XML do grupo do Identificação da NF-e
Assinatura
string identificador(int cUF, int cNF, string natOp, int indPag, int mod, int serie, int nNF, DateTime dEmi, DateTime dSaiEnt, int tpNF, string cMunFG, string NFref, int tpImp, int tpEmis, int cDV, int tpAmb, int finNFe, int procEmi, string verProc)
Descrição:
Funcionalidade para gerar o XML do grupo do Identificação da NF-e da 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 |
|---|---|---|---|---|
| cUF | inteiro | - | sim | informar o código da UF do emitente do Documento Fiscal, utilizar a codificação do IBGE (Ex. SP->35, RS->43, etc.) |
| cNF | inteiro | - | sim | informar o código numérico que compõe a Chave de Acesso. Número aleatório gerado pelo emitente para cada NF-e para evitar acessos indevidos da NF-e. |
| natOpe | string | 1-60 | sim | informar a natureza da operação de que decorrer a saída ou a entrada, tais como: venda, compra, transferência, devolução, importação, consignação, remessa (para fins de demonstração, de industrialização outra), conforme previsto na alínea 'i', inciso I, art. 19 do CONVÊNIO S/Nº, de 15 de dezembro de 1970. |
| indPag | inteiro | - | sim | informar o indicador da forma de pagamento: 0 - pagamento à vista;1 - pagamento à prazo;2 - outros. |
| mod | inteiro | - | sim | informar o código do Modelo do Documento Fiscal, código 55 para a NF-e. |
| serie | inteiro | - | sim | informar a série do Documento Fiscal, informar 0 (zero) para série única. A emissão normal pode utilizar série de 0-889, a emissão em contingência SCAN deve utilizar série 900-999. |
| nNF | infeiro | - | sim | informar o Número do Documento Fiscal. |
| dEmi | data | - | sim | informar a data de emissão do Documento Fiscal. |
| dSaiEnt | data | - | não | informar a data de saída ou entrada da mercadoria ou do produto, pode ser omitido. |
| tpNFe | inteiro | - | sim | informar o código do tipo do Documento Fiscal: 0 - entrada / 1 - saída |
| cMunFG | string | 7 | sim | informar o código do Município de Ocorrência do Fato Gerador do ICMS, que é o local onde ocorre a entrada ou saída da mercadoria, utilizar a Tabela do IBGE |
| NFRef | string | - | não | informar o grupo de informações NFRef dos documentos fiscais referenciados, Utilizar para referenciar um Documento Fiscal vinculado a NF-e atual. Esta informação será utilizada nas hipóteses previstas na legislação. (Ex.: Devolução de Mercadorias, Substituição de NF cancelada, Complementação de NF, etc.). Necessário montar o grupo XML do documento correspondente. |
| tpImp | inteiro | - | sim | informar o formato de impressão do DANFE: 1-retrato / 2-paisagem. |
| tpEmis | inteiro | - | sim | informar o código da forma de emissão: 1 - Normal - emissão normal; 2 - Contingência FS - emissão em contingência com impressão do DANFE em Formulário de Segurança; 3 - Contingência SCAN - emissão em contingência no Sistema de Contingência do Ambiente Nacional - SCAN;4 - Contingência DPEC - emissão em contingência com envio da Declaração Prévia de Emissão em Contingência - DPEC;5 - Contingência FS-DA - emissão em contingência com impressão do DANFE em Formulário de Segurança para Impressão de Documento Auxiliar de Documento Fiscal Eletrônico (FS-DA). |
| cDV | inteiro | - | sim | informar o código do dígito verificador - DV da Chave de Acesso da NF-e, o DV será calculado com a aplicação do algoritmo módulo 11 (base 2,9) da Chave de Acesso. |
| tpAmb | inteiro | - | sim | informar o código de identificação do Ambiente: 1-Produção/ 2-Homologação |
| finNFe | inteiro | - | sim | infformar o código da finalidade de emissão da NF-e: 1- NF-e normal; 2-NF-e complementar; 3 - NF-e de ajuste. |
| procEmi | inteiro | - | sim | informar o código de identificação do processo de emissão da NF-e: Identificador do processo de emissão da NF-e: 0 - emissão de NF-e com aplicativo do contribuinte; 1 - emissão de NF-e avulsa pelo Fisco; 2 - emissão de NF-e avulsa, pelo contribuinte com seu certificado digital, através do site do Fisco;3- emissão NF-e pelo contribuinte com aplicativo fornecido pelo Fisco. |
| verProc | string | 1-20 | sim | informar a versão do processo de emissão da NF-e utilizada (aplicativo emissor de NF-e). |
Dica para omitir um parâmetro do tipo data
Informar a menor data aceita pela linguagem:
Delphi: 0 (zero)
.NET (c#, VB.NET): DateTime.MinValue
VB 6.0 : #12:00:00 AM#
Outros (xBase, etc) : 1899-12-30
Diagrama:

Dica
Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.
O grupo XML NFRef dos documentos fiscais referenciados deve ser criado em separado se necessário.
Retorno:
Um string com o grupo XML de identificação
XML:
Exemplo de XML da versão 1.10 do leiaute da NF-e
<ide> <cUF>35</cUF> <cNF>518005127</cNF> <natOp>Venda a vista</natOp> <indPag>0</indPag> <mod>55</mod> <serie>1</serie> <nNF>1</nNF> <dEmi>2008-05-06</dEmi> <dSaiEnt>2008-05-06</dSaiEnt> <tpNF>0</tpNF> <cMunFG>3550308</cMunFG> <tpImp>1</tpImp> <tpEmis>1</tpEmis> <cDV>3</cDV> <tpAmb>2</tpAmb> <finNFe>1</finNFe> <procEmi>0</procEmi> <verProc>NFe_Util_v1.4</verProc> </ide>
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 sendo 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 ' ' criação dos grupos ' ' '========grupo de identificação da NF-e - grupo B do Manual de integração - páginas 86 a 89 ' ide_cUF = 35 ' código da UF - tabela do IBGE: 35 - SP, 43 - RS, etc. (vide página 141 do manual) ide_natOp = "Venda" ' naturez da operação ide_indPag = 0 ' 0=pagamento à vista ide_mode = 55 ' modelo da nota fiscal eletronica ide_serie = 0 ' série única = 0 ide_nNF = 1 ' número da NF-e ide_dEmi = #11/28/2008# ' data de emissão ide_dSaiEnt = #12:00:00 AM# ' data em branco = 30/12/1899 ide_tpNF = 1 ' número da nota fiscal de saída ide_cMunFG = 3550308 ' código do município do IBGE de ocorrência do FG do ICMS (vide página 141 do manual) ide_tpImp = 1 ' orientação da impressão 1-retrato/2-paisagem ide_tpAmb = 2 ' ambiente de envio da NF-e 1-produção / 2 - homologação ide_finNFe = 1 ' finalidade da emissão da NF-e 1- NF-e normal ide_tpEmis = 1 ' forma de emissão da NF-e 1- normal, 2 - contingência FS, 3 - contingência SCAN, etc. ide_procEmi = 0 ' identificação do processo de emissão da NF-e 0 - aplicação do contribuinte ide_verProc = "NFe_Util_v1.4" ' identificação da versão do processo de emissão ide_NFref = "" ' grupo XML da NF referenciada, utilizar as funcionalidade para gerar o grupo da NFRef se necessário ' ' gera a chave de acesso da NF-e ' ' utilizar a função criaChaveNFe para gerar a chave de acesso, código da NF-e e DV ' '=========variáveis de trabalho ' ' Dim resultado As Long Dim cUF, ano, mes, modelo, serie, numero, codigoseguranca As String Dim msgResul As String Dim cNF As String Dim cDV As String cUF = Trim(Str(ide_cUF)) ano = Format(ide_dEmi, "YY") mes = Format(ide_dEmi, "mm") modelo = Trim(Str(ide_mode)) serie = Trim(Str(ide_serie)) numero = Trim(Str(ide_nNF)) msgResul = "" codigoseguranca = "segredo" ' informar uma expressão para garantir o sigilo da forma de cálculo do cNF cNF = "" cDV = "" chaveNFE = "" If objNFeUtil.CriaChaveNFe(cUF, ano, mes, emi_CNPJ, modelo, serie, numero, codigoseguranca, msgResul, cNF, cDV, chaveNFE) <> 5601 Then MsgBox "Ocorreu um erro ao gerar a chave de acesso " + msgResult, vbInformation, "Resultado" End If ide_cNF = Val(cNF) ' código numérico que compõe a chave de acesso ide_cDV = Val(cDV) ' DV da chave de acesso da NF-e ' ' gera grupo ide ' ide = objNFeUtil.identificador(ide_cUF, ide_cNF, ide_natOp, ide_indPag, ide_mode, ide_serie, ide_nNF, ide_dEmi, ide_dSaiEnt, ide_tpNF, ide_cMunFG, ide_NFref, ide_tpImp, ide_tpEmis, ide_cDV, ide_tpAmb, ide_finNFe, ide_procEmi, ide_verProc)
- 16.1.1. Identificação da NF-e
16.1. Identificação da NF-e - « Anterior
16.1. Identificação da NF-e - Próximo »
16.1.2. Identificação da NF-e 2G