- 14. Gerar XML da NF-e [23-12-13]
14.3. Emitente da NF-e 2G [03-06-24] - 14.2.6. Cupom Fiscal referenciado
« Anterior - 14.4. Destinatário da NF-e 3.10 [23-12-13]
Próximo »
14.3. Emitente da NF-e 2G [03-06-24]
Funcionalidade para gerar o XML do grupo do Emitente da NF-e
Assinatura
string emitente2G(string CNPJ, string CPF, string xNome, string xFant, string xLgr, string nro, string xCpl, string xBairro, string cMun, string xMun, string UF, string CEP, string cPais, string xPais, string fone, string IE, string IEST, string IM, string CNAE, string CRT)
Descrição:
Funcionalidade para gerar o XML do grupo do Emitente da NF-e da versão 2.00/3.00/3.10 do leiaute da NF-e.
Parâmetros:
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
CNPJ | string | 14 | sim | informar o CNPJ do emitente, sem formatação ou máscara |
CPF | string | 11 | sim | informar o CPF do emitente, sem formatação ou máscara, utilizado apenas quando o fisco emite a nota fiscal |
xNome | string | 2-60 | sim | informar a razão social do emitente |
xFant | string | 1-60 | não | informar o nome fantasia do emitente, pode ser omitido |
xLgr | string | 2-60 | sim | informar o logradouro do emitente |
nro | string | 1-60 | sim | informar o número do endereço do emitente, campo obrigatório. Informar S/N ou . (ponto) ou - (traço) para evitar falha de schema XML quando não houver número. |
xCpl | string | 1-60 | não | informar o complemento do endereço do emitente, pode ser omitido |
xBairro | string | 2-60 | sim | informar o bairro do endereço do emitente |
cMun | string | 7 | sim | informar o código do município na codificação do IBGE com 7 dígitos |
xMun | string | 2-60 | sim | informar o nome do município |
UF | string | 2 | sim | informar a sigla da UF |
CEP | string | 8 | sim | informar o CEP, passou a ser de informação obrigatória a partir da NT 2011/004. |
cPais | string | 4 | não | informar o código do pais na codificação do BACEN, se informado deve ser 1058 |
xPais | string | 6 | não | informar o nome do país, se informado deve ser Brasil ou BRASIL |
fone | string | 6-14 | não | informar o telefone com DDD + número, sem formatação (campo com tamanho aumentado) |
IE | string | 2-14 | sim | informar a IE do emitente, sem formatação ou máscara |
IEST | string | 2-14 | não | informar a IE ST, sem formatação ou máscara, quando praticar alguma operação como substituto tributário |
IM | string | 1-15 | não | informar a Inscrição Municipal, sem formatação ou máscara, quando emitir NF conjugada (prestação de serviço com fornecimento de peças) |
CNAE | string | 7 | não | informar o CNAE Fiscal, este campo deve ser informado em conjunto com o campo IM e vice-versa, a informação de um e omissão do outro resulta em falha de Schema XML |
CRT | string | 1 | sim | informar o Código de Regime Tributário - CRT, valores válidos: 1 - Simples Nacional; 2 - Simples Nacional - excesso de sublimite de receita bruta; 3 - Regime Normal; 4 - Simples Nacional - Microempreendedor Individual - MEI (a partir de 02/09/2024 NT 2024/001). |
Diagrama:
Dica
Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.
Os campos em verde são tags novas ou tags que sofreram alteração na definição na versão 2.00 do leiaute.
Retorno:
Um string com o grupo XML do emitente
XML:
Exemplo de XML da versão 2.00 do leiaute da NF-e
<emit> <CNPJ>99999090910270</CNPJ> <xNome>NF-e Associacao NF-e</xNome> <xFant>NF-e</xFant> <enderEmit> <xLgr>Rua Central</xLgr> <nro>100</nro> <xCpl>Fundos</xCpl> <xBairro>Distrito Industrial</xBairro> <cMun>3502200</cMun> <xMun>Angatuba</xMun> <UF>SP</UF> <CEP>17100171</CEP> <cPais>1058</cPais> <xPais>Brasil</xPais> <fone>1733021717</fone> </enderEmit> <IE>123456789012</IE> <CRT>3</CRT> <!-- acrescimo da identificacao do regime tributario do emissor, para maiores detalhes veja item 9.8 da NT 2009/006 --> </emit>
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 Object Set objNFeUtil = CreateObject("NFe_Util_2G.Util") ' ' criação dos grupos ' '=====grupo de identificação do emitente (grupo B do Manual de integração 4.01-NT2009/006 - página 113)======= ' ' <>&" são caracteres reservados do XML e devem ser evitados ou substituídos ' por < &gy; & " ' ' Vale ressaltar que as aplicações das UF devem mostrar DIAS & DIAS TENTANDO S/A, ' pois não entedem & como &, assim talvez seja melhor substituir o & por e. ' emi_CNPJ = "99999999000191" ' CNPJ do emitente sem máscara de formatação emi_CPF = "" ' CPF do emitente, uso exclusivo do Fisco emi_xNome = "DIAS e DIAS TENTANDO S/A" ' Razão social do emitente, evitar caracteres acentuados e & emi_xFant = "DDT" ' Nome fantasia emi_xLgr = "AV PRINCIPAL" ' logradouro emi_nro = "S/N" ' número, informar S/N quando inexistente para evitar erro de Schema XML emi_xCpl = "10 andar" ' complemento do endereço, o conteúdo pode ser omitido emi_xBairro = "CENTRO" ' bairro emi_cMun = "3550308" ' código do município - codificação IBGE, deve ser ' compatível com a UF emi_xMun = "SAO PAULO" ' nome do município emi_UF = "SP" ' sigla da UF emi_CEP = "01300000" ' CEP - sem máscara emi_cPais = "1058" ' código do país - deve fixo em 1058 - Brasil emi_xPais = "Brasil" ' nome do país (Brasil ou BRASIL) emi_fone = "1133221234" ' número do telefone sem máscara emi_IE = "123456789011" ' Inscrição Estadual do emitente sem máscara emi_IEST = "" ' Inscrição Estadual do ST emi_IM = "" ' Inscrição Municipal emi_CNAE = "" ' Código do CNAE emi_CRT = "1" ' Código do CRT: 1-Simples Nacional; ' 2-Simples Nacional - excesso de sublimite de receita bruta; ' 3 - Regime Normal. ' ' gera grupo emi ' emi = objNFeUtil.emitente2G(emi_CNPJ, emi_CPF, emi_xNome, emi_xFant, emi_xLgr, emi_nro, emi_xCpl, emi_xBairro, emi_cMun, emi_xMun, emi_UF, emi_CEP, emi_cPais, emi_xPais, emi_fone, emi_IE, emi_IEST, emi_IM, emi_CNAE, emi_CRT)
Delphi
procedure TForm1.Button4Click(Sender: TObject); // // Exemplo de montagem do grupo emitente // var Util: Olevariant; // exemplo em latebindig emi: widestring; emi_CNPJ: widestring; emi_CPF: widestring; emi_xNome: widestring; emi_xFant: widestring; emi_xLgr: widestring; emi_nro: widestring; emi_xCpl: widestring; emi_xBairro: widestring; emi_cMun: widestring; emi_xMun: widestring; emi_UF: widestring; emi_CEP: widestring; emi_cPais: widestring; emi_xPais: widestring; emi_fone: widestring; emi_IE: widestring; emi_IEST: widestring; emi_IM: widestring; emi_CNAE: widestring; // // campos novos // emi_CRT: widestring; begin // // criação dos grupos // //=====grupo de identificação do emitente (grupo B do Manual de integração 4.01-NT2009/006 - página 113)======= // // <>&" são caracteres reservados do XML e devem ser evitados ou substituídos // por < &gy; & " // // Vale ressaltar que as aplicações das UF devem mostrar DIAS & DIAS TENTANDO S/A, // pois não entedem & como &, assim talvez seja melhor substituir o & por e. // emi_CNPJ := '99999999000191'; // CNPJ do emitente sem máscara de formatação emi_CPF := ''; // CPF do emitente, uso exclusivo do Fisco emi_xNome := 'DIAS e DIAS TENTANDO S/A'; // Razão social do emitente, evitar caracteres acentuados e & emi_xFant := 'DDT'; // Nome fantasia emi_xLgr := 'AV PRINCIPAL'; // logradouro emi_nro := 'S/N'; // número, informar S/N quando inexistente para evitar erro de Schema XML emi_xCpl := '10 andar'; // complemento do endereço, o conteúdo pode ser omitido emi_xBairro := 'CENTRO'; // bairro emi_cMun := '3550308'; // código do município - codificação IBGE, deve ser // compatível com a UF emi_xMun := 'SAO PAULO'; // nome do município emi_UF := 'SP'; // sigla da UF emi_CEP := '01300000'; // CEP - sem máscara emi_cPais := '1058'; // código do país - deve fixo em 1058 - Brasil emi_xPais := 'Brasil'; // nome do país (Brasil ou BRASIL) emi_fone := '1133221234'; // número do telefone sem máscara emi_IE := '123456789011'; // Inscrição Estadual do emitente sem máscara emi_IEST := ''; // Inscrição Estadual do ST emi_IM := ''; // Inscrição Municipal emi_CNAE := ''; // Código do CNAE emi_CRT := '1'; // Código do CRT: 1-Simples Nacional; // 2-Simples Nacional - excesso de sublimite de receita bruta; // 3 - Regime Normal. // // gera grupo emi // Util := CreateOleObject('NFe_util_2G.util'); emi := Util.emitente2G(emi_CNPJ, emi_CPF, emi_xNome, emi_xFant, emi_xLgr, emi_nro, emi_xCpl, emi_xBairro, emi_cMun, emi_xMun, emi_UF, emi_CEP, emi_cPais, emi_xPais, emi_fone, emi_IE, emi_IEST, emi_IM, emi_CNAE, emi_CRT); end;
- 14.3. Emitente da NF-e 2G [03-06-24]
14. Gerar XML da NF-e [23-12-13] - « Anterior
14.2.6. Cupom Fiscal referenciado - Próximo »
14.4. Destinatário da NF-e 3.10 [23-12-13]