- 12.2. Envio de uma NF-e individual
12.2.1. EnviaNFe2G [15-08-17] - 12.2. Envio de uma NF-e individual
« Anterior - 12.2.2. BuscaNFe2G [15-08-17]
Próximo »
12.2.1. EnviaNFe2G [15-08-17]
Envia NF-e
Assinatura
string EnviaNFe2G(string siglaWS, ref string NFe, string nomeCertificado, string versao, out string msgDados, out string msgRetWS, out int cStat, out string msgResultado, out string nroRecibo, out string dhRecbto, out string tMed, string proxy, string usuario, string senha, string licenca)
Descrição:
Envia NF-e, funcionalidade para enviar uma única nota fiscal eletrônica.
A funcionalidade valida o Schema XML da NF-e, realiza assinatura digital, insere a NF-e no lote e faz o envio da NF-e.
A identificação do WS de envio deverá ser informada no parâmetro siglaWS.
Os emissores localizados em UF usuárias da SEFAZ Virtual devem informar a sigla SVAN (MA, PA e PI) ou a sigla SVRS (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), ou informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP) nos casos de UF que tenham aplicação própria. Em caso de emissão em contingência, informar a sigla SCAN, SVC-AN ou SVC-RS.
Envio em Lote
O WS de recepção de NF-e exige que a NF-e esteja contida em uma estrutura de lote, mesmo que seja uma única NF-e, assim esta funcionalidade insere a NF-e em lote para realizar o envio, o lote criado pode ser observado em msgDados.
Processo Assíncrono
A recepção do lote pela SEFAZ e a devolução do número do recibo do lote não significa que as NF-e foram autorizadas. É necessário consultar o resultado do processamento da NF-e enviada através da funcionalidade BuscaNFe e analisar o cStat da chamada para verificar se a NF-e foi autorizada. Em algumas situações o BuscaNFe não funciona, como nos casos em que o XML de retorno do WS esteja fora do padrão do projeto, prejudicando o processo de obtenção da mensagem XML da resposta, nestes casos, recomendamos o uso da funcionalidade BuscaLote que por não tratar o XML de retorno deve devolver a mensagem XML da resposta do WS.
Escolha do Ambiente
A funcionalidade utiliza o valor informado na tag tpAmb da NF-e, assim o usuário deve tomar o cuidado de informar o tpAmb corretamente para que a NF-e não seja enviada para o ambiente indesejado.
Novidades:
suporte para SEFAZ Virtual de Contingência - SVC-AN e SVC-RS - NT 2013/007
multiversão - possibilidade de consumir WS da versão 1.07 do leiaute (versões 2.04 e 3.00 do Manual de Integração) que utiliza área de cabeçalho e os WS da versão 2.00 (Manual de Integração versão 4.0x) que utilizam o SOAPHeader. A escolha do WS é realizada pelo parâmetro versao.
suporte SCAN, SVAN e SVRS - possibilidade de indicar o WS desejado, não sendo mais necessária a alteração manual da url no arquivo ws.xml.
padronização dos códigos de erro - os códigos de erro foram renumerados e as mensagens padronizadas.
retorno do cStat e xMotivo - o cStat da resultado da chamada e o xMotivo estão sendo devolvidos nos parâmetros resultado e msgResultado, vide códigos de retornos.
retorno do nRec, dhRecbto e tMed como parâmetros para facilitar a vida do desenvolvedor.
gravação do log - gravação do log da chamada da DLL quando o resultado da chamada for diferente de 103, 108 e 109. Se o resultado for maior que 999, indica que o WS nem chegou a ser consumido, se o resultado estiver compreendido na faixa: 214 e 999 , o WS foi consumido, mas a solicitação foi rejeitada pelo WS.
Preenchimento do nomeCertificado
informar o Nome do titular (campo Assunto) do certificado digital a ser utilizado na conexão SSL, formas possíveis:
1. uso de certificado digital existente no repositório MY do CSP do usuário corrente (currentuser)
É a forma de mais comum de uso, cabe ressaltar que é a única forma de uso de certificado digital do tipo A3 que a DLL oferece.
O usuário deve passar como parâmetro o campo assunto do certificado no parâmetro NomeCertificado para que a DLL localize um certificado digital com mesmo assunto no repositório MY do currentuser do equipamento.
Esta forma de uso requer a prévia instalação do certificado digital na conta do usuário do Windows (logon) que irá utilizar o certificado digital.2. uso de certificado digital em arquivo no formato pfx
Permite o de uso de certificado digital em arquivo formato pfx.
O caminho da localização (path) do arquivo pfx deve ser passado para a DLL no formato: ARQUIVO | [nome do arquivo pfx com caminho completo] | [senha do arquivo] no parâmetro NomeCertificado, ex.: "ARQUIVO|c:\certificado.pfx|senha".
Esta opção só funciona com certificado digital do tipo A1.3. uso de certificado digital em string base64
Permite uso o arquivo do certificado digital em formato pfx convertido em uma string base64. O certificado digital em string base64 deve ser passado para a DLL no formato: CERTIFICADO | [string base64 do arquivo pfx] | [senha do arquivo] no parâmetro NomeCertificado, ex.: "CERTIFICADO|MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy|senha".
Esta opção só funciona com certificado digital do tipo A1. É uma opção de uso que oferece maior versatilidade, pois permite o armazenamento do certificado digital em banco de dados na aplicação. É a forma mais indicada para uso em ASP.NET.
Parâmetros:
nome | tipo | fluxo | descrição |
---|---|---|---|
siglaWS | string | entrada | informar a sigla do WS desejado, veja Tabela de siglaWS |
NFe | string | entrada | informar a NF-e que deseja transmitir, a NF-e não deve estar assinada. |
NomeCertificado | string | entrada | informar o certificado digital que será utilizado para assinatura: 1. informar o assunto do certificado digital que deve existir no repositório MY do current user, ex.: "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS". 2. informar: ARQUIVO | [nome do arquivo pfx com caminho completo] | [senha do arquivo] para uso do certificado digital em arquivo pfx, ex.: "ARQUIVO|c:\certificado.pfx|senha". 3. informar: CERTIFICADO | [string base64 do arquivo pfx] | [senha do arquivo] no parâmetro NomeCertificado para passar uma string contendo um certificado digital em base64, ex.:"CERTIFICADO|MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy|senha". (novas opções) |
versao | string | entrada | informar a versão da mensagem do WS - 3.10 ou 4.00 [15-08-17] |
msgDados | string | saída | retorna a mensagem XML enviada para o WS. |
msgRetWS | string | saída | retorna a mensagem XML de resposta do WS |
cStat | inteiro | saída | retorna o resultado da chamada do WS. (nome do parâmetro alterado - ex-resultado) |
msgResultado | string | saída | retorna a literal do resultado da chamada do WS |
nroRecibo | string | saída | retorna o número do recibo do lote atribuído ao lote pela SEFAZ, este será utilizado para consultar o resultado do processamento do lote. |
dhRecbto | string | saída | retorna a data e hora de recebimento do lote pela SEFAZ. (parâmetro novo) |
tMed | string | saída | retorna o tempo médio de resposta do serviço em segundos dos últimos 5 minutos (parâmetro novo) |
proxy | string | entrada | informar 'http://proxyserver:port' quando existir uso de proxy no ambiente. verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo 'http://192.168.15.1:443' |
usuario | string | entrada | informar o usuário para autenticação no proxy se necessário |
senha | string | entrada | informar a senha de autenticação no proxy se necessário |
licenca | string | entrada | informar a chave da licença de uso, esta funcionalidade pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento, para maiores detalhes veja as condições de uso |
Atenção para as seguintes alterações nos parâmetros:
Parâmetros novos:
- versao;
- dhRecebto;
- tMed;
Parâmetros que mudaram de nome ou de lugar:
- resultado (mudou de nome para cStat);
Parâmetros eliminados:
- msgCabec;
Retorno:
O resultado da chamada do EnviaNFe é o XML da NFe assinada.
O parâmetro cStat retorna um código numérico com os seguintes significados:
código | Mensagem | origem | regra |
---|---|---|---|
5001 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: o certificado cliente: 1.não é ICP-Brasil; 2.fora do prazo de validade; 3.revogado; 4.certificado cliente não confiável para o Web Service acessado, contatar a SEFAZ) | DLL | - |
5002 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: a cadeia de certificação do Web Service acessado ou do certificado cliente inexistente no repositório de certificados do usuário corrente do Windows) | DLL | - |
5003 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: serviço inexistente, verifique se o nome do serviço da url acessada está correto no arquivo ws2.xml) | DLL | - |
5004 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: método não permitido) | DLL | - |
5005 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: a url não encontrada, verifique se o nome do domínio da url acessada está correto no arquivo ws2.xml) | DLL | - |
5006 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Time-Out, o WS não respondeu a solicitação no tempo estabelecido: [{1:0}]) | DLL | - |
5007 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: mensagem maior que a permitida) | DLL | - |
5008 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Servidor com problemas) | DLL | - |
5009 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Serviço não implementado) | DLL | - |
5010 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Serviço temporariamente indisponível, servidor sem recursos para atender a solicitação) | DLL | - |
5011 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Causa provável da falha na conexão: Rede indisponível) | DLL | - |
5012 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Versão do SOAP não suportada | DLL | - |
5013 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Web Service não consumido, não houve nenhum retorno ou resposta) | DLL | - |
5014 | Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Web Service não consumido, falha desconhecida) | DLL | - |
5015 | Erro: Falha na conexão: Tempo limite de time-out alcançado [TEMPO DE TIME OUT UTILIZADO ms] - [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5016 | Erro: Falha na conexão: Falha da Biblioteca Criptografica: [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5017 | Erro: Falha ao tratar o XML de retorno do WS: [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5101 | Erro: A mensagem de retorno do WS não é um XML válido: [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5102 | Erro: Tag cStat inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5103 | Erro: Tag xMotivo inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5104 | Erro: Tag [NOME TAG] inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5105 | Erro: O WS não devolveu nenhum resultado | DLL | - |
5201 | Erro: O código do tipo de ambiente [CODIGO RECEBIDO PELA DLL] informado diferente de 1 - produção e 2 - homologação | DLL | - |
5202 | Erro: A sigla da UF [SIGLA RECEBIDA PELA DLL] informada é inválida | DLL | - |
5203 | Erro: Inexiste url para a UF [SIGLA UF] informada no ambiente [AMBIENTE] desejado, verifique se existe atualização do arquivo [NOME ARQUIVO] disponível. | DLL | - |
5204 | Erro: Arquivo que contem a URL do WS não localizado em [CAMINHO DA APLICACAO] | DLL | - |
5205 | Erro: Ocorreu um erro inesperado no processamento da URL (NOME URL) : [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5206 | Erro: Ocorreu um erro de validação do XML (NOME XML) : [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5403 | Erro: Falha ao acessar certificado digital [mensagem de ERRO DO WINDOWS] | DLL | - |
5404 | Erro: Nenhum certificado digital selecionado | DLL | |
5405 | Erro: Nenhum certificado válido foi encontrado com o nome [NomeCertificado] informado no repositório [MY do CurrentUser] | DLL | - |
5406 | Erro: Falha no tratamento do parâmetro nome: [nome informado] | DLL | - |
5407 | Erro: Quantidade de parâmetos inválido: [nome informado] | DLL | - |
5503 | Erro: XML mal formado [MENSAGEM DE ERRO DO WINDOWS] | DLL | - |
5504 | Erro: Arquivo Schemal XML [nome do arquivo XML] não localizado na pasta [nome do pasta]} | DLL | - |
5505 | Erro: XML não atende a especificação do Schema XML | DLL | - |
5408 | Erro: Falha na criação do objeto certificate: [mensagem do ERRO DO WINDOWS] | DLL | - |
6301 | Erro: A NF-e a ser enviada não deve estar assinada, pois a NF-e será assinada pela DLL | DLL | - |
6302 | Erro: XML da NF-e de entrada (NFe) mal formado: [mensagem de ERRO DO WINDOWS] | DLL | - |
6303 | Erro: tag tpAmb inexistente na NF-e de entrada (NFe) [mensagem de erro] | DLL | - |
6304 | Erro: tag infNFe inexistente na NF-e de entrada (NFe) | DLL | - |
6305 | Erro: Atributo Id não localizado na tag infNFe da NF-e, validação da licença de uso prejudicada [CONTEUDO] | DLL | - |
6309 | Erro: O CNPJ informado tem tamanho diferente de 14 - [valor informado] - tamanho = [TAMANHO] | DLL | - |
6310 | Erro: A licença informada tem tamanho diferente de 128 - [CONTEUDO] - tamanho = {TAMANHO], o uso da DLL em ambiente de produção requer a informação da licença de uso. | DLL | - |
6311 | Erro: Funcionalidade: EnviaNFe não licenciada para o CNPJ: [valor informado] e licenca [TAMANHO] | DLL | - |
6312 | Erro: Atributo versão não localizado na tag infNFe da NF-e | DLL | - |
6313 | Erro: Versao inválida, diferente de 1.10 e 2.00 [valor informado] | DLL | - |
6314 | Erro: O conteúdo do atributo Id da tag infNFe é inválida | DLL | - |
7001 | Erro: A licença não foi informada | DLL | - |
7002 | Erro: A licença informada: [CONTEUDO] tem tamanho:[TAMANHO] diferente de 128 | DLL | - |
7003 | Erro: A licença informada: [CONTEUDO] não pertence ao CNPJ:[TAMANHO] | DLL | - |
103 | Lote recebido com sucesso | WS | - |
108 | Serviço Paralisado Momentaneamente (curto prazo) | WS | B03/K03 |
109 | Serviço Paralisado sem Previsão | WS | B04/K04 |
213 | Rejeição: CNPJ-Base do Emitente difere do CNPJ-Base do Certificado Digital | WS | F02 |
214 | Rejeição: Tamanho da mensagem excedeu o limite estabelecido | WS | B01 |
215 | Rejeição: Falha no schema XML | WS | D01 |
238 | Rejeição: Cabeçalho - Versão do arquivo XML superior a Versão vigente | WS | C02/C05 |
239 | Rejeição: Cabeçalho - Versão do arquivo XML não suportada | WS | C03/C06 |
242 | Rejeição: Cabeçalho - Falha no Schema XML | WS | C01 |
243 | Rejeição: XML Mal Formado | WS | B02 |
280 | Rejeição: Certificado Transmissor inválido | WS | A01 |
281 | Rejeição: Certificado Transmissor Data Validade | WS | A02 |
282 | Rejeição: Certificado Transmissor sem CNPJ | WS | A07 |
283 | Rejeição: Certificado Transmissor - erro Cadeia de Certificação | WS | A03 |
284 | Rejeição: Certificado Transmissor revogado | WS | A05 |
285 | Rejeição: Certificado Transmissor difere ICP-Brasil | WS | A06 |
286 | Rejeição: Certificado Transmissor erro no acesso a LCR | WS | A04 |
290 | Rejeição: Certificado Assinatura inválido | WS | E01 |
291 | Rejeição: Certificado Assinatura Data Validade | WS | E02 |
292 | Rejeição: Certificado Assinatura sem CNPJ | WS | E03 |
293 | Rejeição: Certificado Assinatura - erro Cadeia de Certificação | WS | E04 |
294 | Rejeição: Certificado Assinatura revogado | WS | E06 |
295 | Rejeição: Certificado Assinatura difere ICP-Brasil | WS | E07 |
296 | Rejeição: Certificado Assinatura erro no acesso a LCR | WS | E05 |
298 | Rejeição: Assinatura difere do padrão do Projeto | WS | F01 |
297 | Rejeição: Assinatura difere do calculado | WS | F02 |
299 | Rejeição: XML da área de cabeçalho com codificação diferente de UTF-8 | WS | C01a |
402 | Rejeição: XML da área de dados com codificação diferente de UTF-8 | WS | D03 |
404 | Rejeição: Uso de prefixo de namespace não permitido | WS | D02 |
409 | Rejeição: Campo cUF inexistente no elemento nfeCabecMsg do SOAP Header | WS | C02 |
410 | Rejeição: UF informada no campo cUF não é atendida pelo Web Service | WS | C03 |
411 | Rejeição: Campo versaoDados inexistente no elemento nfeCabecMsg do SOAP Header | WS | C04 |
516 | Rejeição: Falha no schema XML - inexiste a tag raiz esperada para a mensagem | WS | D01a |
517 | Rejeição: Falha no schema XML - inexiste atributo versao na tag raiz da mensagem | WS | D02a |
545 | Rejeição: Falha no schema XML - versão informada na versaoDados do SOAPHeader diverge da versão da mensagem | WS | D01c |
999 | Rejeição: Erro não catalogado (mensagem) | WS | - |
Finalidade do número do recibo do lote
O número do recibo do lote não é o protocolo de autorização. É um número que a SEFAZ atribui ao lote recebido, sendo necessário para consultar o resultado do pocessamento do lote.
Número do Recibo do Lote é número de 15 dígitos com o seguinte significado:
posição Descrição 1 a 2 código da UF do IBGE 3 órgão do tipo autorizador:
1 – Secretaria de Fazenda Estadual;
2 – Receita Federal;
3 – SEFAZ Virtual RS;
4 – SEFAZ Virtual RFB;
6 – SEFAZ Virtual Contingência do AN;
7 – SEFAZ Virtual Contingência do RS.4 a 15 sequencial
Tratamento de Erro:
Caso ocorra algum erro na chamada do WS (5001-6145) ou a requisição não seja atendida pelo WS (214-999), será gravado um log na pasta log, com as seguintes informações que devem ser úteis para identificação do problema:
- Timestamp - data e hora da ocorrência do erro
- WS - nome do WS acessado
- URL - URL do WS acessado
- ambiente - código do ambiente
- certificado - nome do titular (assunto) do certificado digital utilizado
- erro - código e descrição do erro
- msgDados - mensagem enviada ao WS
- msgRetWS - conteúdo do retorno do WS
Os erros com código > 5000 são erros tratados pela DLL e ocorrem nas seguintes situações:
- 5001 - 5017 - falha na tentativa de consumir o WS (problema de conexão/rede)
- 5101 - 5105 - falha no tratamento do XML de resposta do WS (problema na resposta do WS)
- 5201 - 5206 - falha na recuperação da URL do WS desejado (problema no arquivo de configuração da URL)
- 5403 - 5408 - falha no acesso ao certificado digital
- 6301 - 6314 - falha no tratamento dos pârametros da chamada da DLL
- 7001 - 7003 - falha na validação da licença
Histórico de atualização:
- 2010-02-02 - 2Gv0.0 - Versão beta preliminar.
- 2011-06-18 - 2Gv0.7 - Acréscimo de novas opções para uso de certificado digital
- 2013-12-09 - 2Gv2.0.1 - Atualização para suportar a SVC-AN e SVC-RS.
- 2017-08-15 - 2Gv4.00 - atualização para suportar a versão 4.00.
Mensagens XML - versão 1.10:
Exemplo de NF-e
<?xml version="1.0" encoding="utf-8"?> <NFe xmlns="http://www.portalfiscal.inf.br/nfe"> <infNFe Id="NFe35080599999090910270550010000000015180051273" versao="1.10"> <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>NF-eletronica.com</verProc> </ide> <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> </emit> <dest> <CNPJ>00000000000191</CNPJ> <xNome>DISTRIBUIDORA DE AGUAS MINERAIS</xNome> <enderDest> <xLgr>AV DAS FONTES</xLgr> <nro>1777</nro> <xCpl>10 ANDAR</xCpl> <xBairro>PARQUE FONTES</xBairro> <cMun>5030801</cMun> <xMun>Sao Paulo</xMun> <UF>SP</UF> <CEP>13950000</CEP> <cPais>1058</cPais> <xPais>BRASIL</xPais> <fone>1932011234</fone> </enderDest> <IE></IE> </dest> <retirada> <CNPJ>99171171000194</CNPJ> <xLgr>AV PAULISTA</xLgr> <nro>12345</nro> <xCpl>TERREO</xCpl> <xBairro>CERQUEIRA CESAR</xBairro> <cMun>3550308</cMun> <xMun>SAO PAULO</xMun> <UF>SP</UF> </retirada> <entrega> <CNPJ>99299299000194</CNPJ> <xLgr>AV FARIA LIMA</xLgr> <nro>1500</nro> <xCpl>15 ANDAR</xCpl> <xBairro>PINHEIROS</xBairro> <cMun>3550308</cMun> <xMun>SAO PAULO</xMun> <UF>SP</UF> </entrega> <det nItem="1"> <prod> <cProd>00001</cProd> <cEAN /> <xProd>Agua Mineral</xProd> <CFOP>5101</CFOP> <uCom>dz</uCom> <qCom>1000000.0000</qCom> <vUnCom>1</vUnCom> <vProd>10000000.00</vProd> <cEANTrib /> <uTrib>und</uTrib> <qTrib>12000000.0000</qTrib> <vUnTrib>1</vUnTrib> </prod> <imposto> <ICMS> <ICMS00> <orig>0</orig> <CST>00</CST> <modBC>0</modBC> <vBC>10000000.00</vBC> <pICMS>18.00</pICMS> <vICMS>1800000.00</vICMS> </ICMS00> </ICMS> <PIS> <PISAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pPIS>0.65</pPIS> <vPIS>65000</vPIS> </PISAliq> </PIS> <COFINS> <COFINSAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pCOFINS>2.00</pCOFINS> <vCOFINS>200000.00</vCOFINS> </COFINSAliq> </COFINS> </imposto> </det> <det nItem="2"> <prod> <cProd>00002</cProd> <cEAN /> <xProd>Agua Mineral</xProd> <CFOP>5101</CFOP> <uCom>pack</uCom> <qCom>5000000.0000</qCom> <vUnCom>2</vUnCom> <vProd>10000000.00</vProd> <cEANTrib /> <uTrib>und</uTrib> <qTrib>3000000.0000</qTrib> <vUnTrib>0.3333</vUnTrib> </prod> <imposto> <ICMS> <ICMS00> <orig>0</orig> <CST>00</CST> <modBC>0</modBC> <vBC>10000000.00</vBC> <pICMS>18.00</pICMS> <vICMS>1800000.00</vICMS> </ICMS00> </ICMS> <PIS> <PISAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pPIS>0.65</pPIS> <vPIS>65000</vPIS> </PISAliq> </PIS> <COFINS> <COFINSAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pCOFINS>2.00</pCOFINS> <vCOFINS>200000.00</vCOFINS> </COFINSAliq> </COFINS> </imposto> </det> <total> <ICMSTot> <vBC>20000000.00</vBC> <vICMS>18.00</vICMS> <vBCST>0</vBCST> <vST>0</vST> <vProd>20000000.00</vProd> <vFrete>0</vFrete> <vSeg>0</vSeg> <vDesc>0</vDesc> <vII>0</vII> <vIPI>0</vIPI> <vPIS>130000.00</vPIS> <vCOFINS>400000.00</vCOFINS> <vOutro>0</vOutro> <vNF>20000000.00</vNF> </ICMSTot> </total> <transp> <modFrete>0</modFrete> <transporta> <CNPJ>99171171000191</CNPJ> <xNome>Distribuidora de Bebidas Fazenda de SP Ltda.</xNome> <IE>171999999119</IE> <xEnder>Rua Central 100 - Fundos - Distrito Industrial</xEnder> <xMun>SAO PAULO</xMun> <UF>SP</UF> </transporta> <veicTransp> <placa>BXI1717</placa> <UF>SP</UF> <RNTC>123456789</RNTC> </veicTransp> <reboque> <placa>BXI1818</placa> <UF>SP</UF> <RNTC>123456789</RNTC> </reboque> <vol> <qVol>10000</qVol> <esp>CAIXA</esp> <marca>LINDOYA</marca> <nVol>500</nVol> <pesoL>1000000000.000</pesoL> <pesoB>1200000000.000</pesoB> <lacres> <nLacre>XYZ10231486</nLacre> </lacres> </vol> </transp> <infAdic> <infAdFisco>Nota Fiscal de exemplo NF-eletronica.com</infAdFisco> </infAdic> </infNFe> </NFe>
Resposta do WS para Lote Recebido
<?xml version="1.0" encoding="utf-8"?> <retEnviNFe versao="1.10" xmlns="http://www.portalfiscal.inf.br/nfe"> <tpAmb>2</tpAmb> <verAplic>RS20100112141932</verAplic> <cStat>103</cStat><xMotivo>Lote recebido com sucesso</xMotivo> <cUF>43</cUF> <infRec> <nRec>431000003874373</nRec> <dhRecbto>2010-02-08T00:49:13</dhRecbto> <tMed>1</tMed> </infRec> </retEnviNFe>
Resposta do WS para erro de envio
<?xml version="1.0" encoding="utf-8"?> <retEnviNFe versao="1.10" xmlns="http://www.portalfiscal.inf.br/nfe"> <tpAmb>2</tpAmb> <verAplic>RS20100112141932</verAplic> <cStat>226</cStat> <xMotivo>Rejeicao: Codigo da UF do Emitente diverge da UF autorizadora</xMotivo> <cUF>35</cUF> </retEnviNFe>
Mensagens XML - versão 2.00:
Exemplo de NF-e
<?xml version="1.0" encoding="utf-8"?> <!-- ================================================================================== Exemplo de XML da Nota Fiscal eletronica de 2G As principais alteracoes do leiaute estao comentadas, para maiores detalhes das alteracoes vide a NT 2009/006, disponivel em: http://www.nfe.fazenda.gov.br/portal/docs/NT2009.006_Substitui_NT2009.005.pdf Autor: blog da NF-eletronica, todos os direitos reservados, a reproducao e uso do exemplo e permitida, desde que com a devida citacao da fonte www.NF-eletronica.com/blog ================================================================================== --> <NFe xmlns="http://www.portalfiscal.inf.br/nfe"> <infNFe Id="NFe35100610142785000190552000000000011026974071" versao="2.00"> <!-- a versao do leiaute da nota fiscal foi alterada para 2.00, para maiores detalhes veja o item 9.1 da NT 2009/006 --> <!-- a formacao do atributo Id foi alterada com o a inclusao da tag tpEmis e reducao do tamanho do cNF, para maiores detalhes veja itens 5 e 9.2 da NT 2009/006 --> <ide> <cUF>35</cUF> <cNF>02697407</cNF> <!-- reducao do tamanho do cNF para 8 digitos, para maiores detalhes veja itens 5 e 9.2 da NT 2009/006 --> <natOp>Venda a vista</natOp> <indPag>0</indPag> <mod>55</mod> <serie>200</serie> <!-- a serie permitida para emissao na SEFAZ foi restringida para faixa 0-889, para maiores detalhes veja item 9.3 da NT 2009/006 --> <nNF>1</nNF> <dEmi>2010-06-14</dEmi> <dSaiEnt>2010-06-14</dSaiEnt> <hSaiEnt>09:00:00</hSaiEnt> <!-- acrescimo da hora de saida da mercadoria, para maiores detalhes veja item 9.4 da NT 2009/006 --> <tpNF>1</tpNF> <cMunFG>3550308</cMunFG> <tpImp>1</tpImp> <tpEmis>1</tpEmis> <cDV>1</cDV> <tpAmb>2</tpAmb> <finNFe>1</finNFe> <procEmi>0</procEmi> <verProc>NFe_Util 2Gv0.4</verProc> </ide> <emit> <CNPJ>10142785000190</CNPJ> <xNome>M R M KATO ASAKURA - ME</xNome> <xFant>FlexDocs Documentos Eletronicos</xFant> <enderEmit> <xLgr>Avenida Doutor Altino Arantes</xLgr> <nro>131</nro> <xCpl>6 ANDAR SALA 66</xCpl> <xBairro>Centro</xBairro> <cMun>3534708</cMun> <xMun>Ourinhos</xMun> <UF>SP</UF> <CEP>19900030</CEP> <cPais>1058</cPais> <xPais>Brasil</xPais> <fone>1433001000</fone> </enderEmit> <IE>495171423115</IE> <CRT>3</CRT> <!-- acrescimo da identificacao do regime tributario do emissor, para maiores detalhes veja item 9.8 da NT 2009/006 --> </emit> <dest> <CNPJ>99999999000191</CNPJ> <xNome>DISTRIBUIDORA DE AGUAS MINERAIS</xNome> <enderDest> <xLgr>AV DAS FONTES</xLgr> <nro>1777</nro> <xCpl>10 ANDAR</xCpl> <xBairro>PARQUE FONTES</xBairro> <cMun>3550308</cMun> <xMun>Sao Paulo</xMun> <UF>SP</UF> <CEP>43950000</CEP> <cPais>1058</cPais> <xPais>BRASIL</xPais> <fone>1132011234</fone> </enderDest> <IE></IE> <email>contato@nf-eletronica.com</email> <!-- acrescimo do email do destinatario, para maiores detalhes veja item 9.12 da NT 2009/006 --> </dest> <det nItem="1"> <prod> <cProd>00001</cProd> <cEAN /> <xProd>Agua Mineral</xProd> <NCM>25</NCM> <!-- tag NCM passou a ser obrigatoria e substituiu a tag genero para quando a informacao do NCM completo e dispensada, para maiores detalhes veja itens 9.15 e 9.16 da NT 2009/006 --> <CFOP>5101</CFOP> <uCom>dz</uCom> <qCom>1000000</qCom> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 4), para maiores detalhes veja item 9.17 da NT 2009/006 --> <vUnCom>1</vUnCom> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 10), para maiores detalhes veja item 9.17 da NT 2009/006 --> <vProd>10000000.00</vProd> <cEANTrib /> <uTrib>und</uTrib> <qTrib>12000000</qTrib> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 4), para maiores detalhes veja item 9.18 da NT 2009/006 --> <vUnTrib>1</vUnTrib> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 10), para maiores detalhes veja item 9.18 da NT 2009/006 --> <indTot>1</indTot> <!-- acrescimo do indTot para indicar se o valor do item compoe a valor total da NF-e, para maiores detalhes veja item 9.20 da NT 2009/006 --> </prod> <imposto> <ICMS> <ICMS00> <orig>0</orig> <CST>00</CST> <modBC>0</modBC> <vBC>10000000.00</vBC> <pICMS>18.00</pICMS> <vICMS>1800000.00</vICMS> </ICMS00> </ICMS> <PIS> <PISAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pPIS>0.65</pPIS> <vPIS>65000</vPIS> </PISAliq> </PIS> <COFINS> <COFINSAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pCOFINS>2.00</pCOFINS> <vCOFINS>200000.00</vCOFINS> </COFINSAliq> </COFINS> </imposto> </det> <det nItem="2"> <prod> <cProd>00002</cProd> <cEAN /> <xProd>Agua Mineral</xProd> <NCM>25</NCM> <!-- tag NCM passou a ser obrigatoria e substituiu a tag genero para quando a informacao do NCM completo e dispensada, para maiores detalhes veja itens 9.15 e 9.16 da NT 2009/006 --> <CFOP>5101</CFOP> <uCom>pack</uCom> <qCom>5000000.0000</qCom> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 4), para maiores detalhes veja item 9.17 da NT 2009/006 --> <vUnCom>2</vUnCom> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 10), para maiores detalhes veja item 9.17 da NT 2009/006 --> <vProd>10000000.00</vProd> <cEANTrib /> <uTrib>und</uTrib> <qTrib>3000000.0000</qTrib> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 4), para maiores detalhes veja item 9.18 da NT 2009/006 --> <vUnTrib>0.3333</vUnTrib> <!-- o tamanho do campo e quantidade de decimais foi alterada (de 0 a 10), para maiores detalhes veja item 9.18 da NT 2009/006 --> <indTot>1</indTot> <!-- acrescimo do indTot para indicar se o valor do item compoe a valor total da NF-e, para maiores detalhes veja item 9.20 da NT 2009/006 --> </prod> <imposto> <ICMS> <ICMS00> <orig>0</orig> <CST>00</CST> <modBC>0</modBC> <vBC>10000000.00</vBC> <pICMS>18.00</pICMS> <vICMS>1800000.00</vICMS> </ICMS00> </ICMS> <PIS> <PISAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pPIS>0.65</pPIS> <vPIS>65000</vPIS> </PISAliq> </PIS> <COFINS> <COFINSAliq> <CST>01</CST> <vBC>10000000.00</vBC> <pCOFINS>2.00</pCOFINS> <vCOFINS>200000.00</vCOFINS> </COFINSAliq> </COFINS> </imposto> </det> <total> <ICMSTot> <vBC>20000000.00</vBC> <vICMS>3600000.00</vICMS> <vBCST>0</vBCST> <vST>0</vST> <vProd>20000000.00</vProd> <vFrete>0</vFrete> <vSeg>0</vSeg> <vDesc>0</vDesc> <vII>0</vII> <vIPI>0</vIPI> <vPIS>130000.00</vPIS> <vCOFINS>400000.00</vCOFINS> <vOutro>0</vOutro> <vNF>20000000.00</vNF> </ICMSTot> </total> <transp> <modFrete>0</modFrete> <transporta> <CNPJ>99999999000272</CNPJ> <xNome>Transportadora Paulista</xNome> <IE>171999999119</IE> <xEnder>Rua Central 100 - Fundos - Distrito Industrial</xEnder> <xMun>SAO PAULO</xMun> <UF>SP</UF> </transporta> <veicTransp> <placa>BXI1717</placa> <UF>SP</UF> <RNTC>123456789</RNTC> </veicTransp> <reboque> <placa>BXI1818</placa> <UF>SP</UF> <RNTC>123456789</RNTC> </reboque> <vol> <qVol>10000</qVol> <esp>CAIXA</esp> <marca>LINDOYA</marca> <nVol>500</nVol> <pesoL>1000000000.000</pesoL> <pesoB>1200000000.000</pesoB> <lacres> <nLacre>XYZ10231486</nLacre> </lacres> </vol> </transp> <infAdic> <infAdFisco>Nota Fiscal de exemplo NF-eletronica.com</infAdFisco> <infCpl>Exemplo de NF-e da versao 2.00.</infCpl> </infAdic> </infNFe> </NFe>
Resposta do WS para Lote Recebido
<retEnviNFe versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe"> <tpAmb>2</tpAmb> <verAplic>RS20100112141932</verAplic> <cStat>103</cStat> <xMotivo>Lote recebido com sucesso</xMotivo> <cUF>43</cUF> <dhRecbto>2010-02-08T01:08:34</dhRecbto> <infRec> <nRec>431000003874378</nRec> <tMed>1</tMed> </infRec> </retEnviNFe>
Importante
O nRec é um número do Recibo de entrega do Lote e NÃO É NEM SIGNFICA QUE O LOTE/NF-E TEVE O SEU USO AUTORIZADO, sendo necessário consultar o resultado do processamento do lote através da funcionalidade BuscaLote2G.
Os XML acima foram identados para uma melhor visualização, a mensagem original não tem formatação.
Os XML das mensagens de retorno da versão 2.00 não têm a declaração XML.
Exemplos de uso:
Visual Basic 6.0
' declaração das variáveis que serão utilizadas na passagem de parâmetros da DLL ' Dim msgDados As String ' informar a string com o lote da NF-e neste parâmetro, retorna a mensagem XML enviada para o WS Dim msgRetWS As String ' retorna a mensagem XML de resposta do WS Dim msgResultado As String ' retorna a literal do resultado da chamada do WS Dim cStat As Long ' retorna o resultado da chamada do WS Dim nroRecibo As String ' retorna o número do recibo do lote atribuído ao lote pela SEFAZ, este será utilizado para consultar o resultado do processamento do lote Dim dhRecbto As String ' retorna a data e hora de recebimento do lote pela SEFAZ Dim tMed As String ' retorna o tempo médio de resposta do serviço em segundos dos últimos 5 minutos Dim siglaWS As String ' informar a sigla do WS de envio, informar SVAN - SEFAZ Virtual do Ambiente Nacional (MA, PA e PI) ou SVRS - SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), caso a UF seja usuário da SEFAZ Virtual, em caso contrário informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP). Em caso de contingência SCAN, informar a sigla SCAN Dim nomeCertificado As String ' informar o Nome do titular (campo Assunto) do certificado digital a ser utilizado na conexão SSL. Ex.: "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS" ' ' As variáveis do proxy devem ser informadas se necessário ' ' proxy deve ser informado com o endereço da url : porta, ex: 192.168.15.1:443 ' Dim proxy As String ' informar 'http://proxyserver:port' quando existir uso de proxy no ambiente. verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo 'http://192.168.15.1:443' Dim usuario As String ' informar o usuário para autenticação no proxy se necessário Dim senha As String ' informar a senha de autenticação no proxy se necessário ' Dim licenca As String ' informar a chave da licença de uso, esta funcionalidade pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento ou registro, para maiores detalhes veja as condições de uso ' Dim nfe As String ' informar a NF-e que deseja transmitir, a NF-e não deve estar assinada Dim nfeAssinada As String ' recebe o XML da NFe assinada Dim versao As String ' informar a versão da mensagem do WS - 1.10 (manual de integração versão 2.04 ou 3.00) ou 2.00 (manual de integração versão 4.0x) ' ' Importante: todas as variáveis utilizadas como parâmetro da DLL devem ser inicializadas ' ' proxy = "" ' informar 'http://proxyserver:port' quando existir uso de proxy no ambiente. verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo 'http://192.168.15.1:443' usuario = "" ' informar o usuário para autenticação no proxy se necessário senha = "" ' informar a senha de autenticação no proxy se necessário msgDados = "" ' informar a string com o lote da NF-e neste parâmetro, retorna a mensagem XML enviada para o WS msgRetWS = "" ' retorna a mensagem XML de resposta do WS nroRecibo = "" ' retorna o número do recibo do lote atribuído ao lote pela SEFAZ, este será utilizado para consultar o resultado do processamento do lote dhRecbto = "" ' retorna a data e hora de recebimento do lote pela SEFAZ tMed = "" ' retorna o tempo médio de resposta do serviço em segundos dos últimos 5 minutos licenca = "" ' informar a chave da licença de uso, esta funcionalidade pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento ou registro, para maiores detalhes veja as condições de uso ' ' prepara variáveis ' nomeCertificado = "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS" ' ' importante: indicar aqui assunto do certificado digital válido, este da associacao trata-se apenas de um exemplo para testes ' ' EXEMPLO PARA USO DE ARQUIVO PFX ' 'nomeCertificado = "ARQUIVO|c:\certificado.pfx|associacao" ' ' onde: ' ARQUIVO --> indica opção de uso de arquivo PFX ' c:\certificado.pfx --> nome e caminho do arquivo PFX ' associacao --> senha do arquivo PFX ' ' ' EXEMPLO PARA USO DE ARQUIVO PFX EM STRING BASE64 ' 'nomeCertificado = "CERTIFICADO|MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy|senha" ' ' onde: ' CERTIFICADO --> indica opção de uso de arquivo PFX em base64 ' MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy --> arquivo PFX em base64 ' senha --> senha do arquivo PFX ' siglaWS = "RS" ' informar a sigla do WS de envio, informar SVAN - SEFAZ Virtual do Ambiente Nacional (MA, PA e PI) ou SVRS - SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), caso a UF seja usuário da SEFAZ Virtual, em caso contrário informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP). Em caso de contingência SCAN, informar a sigla SCAN ambiente = 2 ' ambiente consultado: 1- produção e 2-homologação versao = "2.00" ' informar a versão da mensagem do WS - 1.10 (manual de integração versão 2.04 ou 3.00) ou 2.00 (manual de integração versão 4.0x) ' ' Dim nomeArquivo As String ' nome do arquivo que contem a NFe ' nomeArquivo = "NFe.xml" ' importante: verificar a existência do arquivo solicitado na pasta do VB e indicar o caminho correto para ele ' ' Carrega o conteúdo do nome do arquivo em nfe ' Open nomeArquivo For Input As #1 nfe = Input$(LOF(1), 1) Close #1 ' Dim Result As Long Dim objNFeUtil As NFe_Util_2G.Util ' ' instancia a DLL ' Set objNFeUtil = New NFe_Util_2G.Util ' ' Screen.MousePointer = vbHourglass ' ampulheta ' nfeAssinada = objNFeUtil.EnviaNFe2G(siglaWS, nfe, nomeCertificado, versao, msgDados, msgRetWS, cStat, msgResultado, nroRecibo, dhRecbto, tMed, proxy, usuario, senha, licenca) ' ' Screen.MousePointer = vbDefault ' normal ' ' mostra mensagem XML enviada e a mensagem de retorno do WS ' MsgBox msgDados + Chr(13) + Chr(13) + msgResultado + Chr(13) + Chr(13) + msgRetWS, vbInformation, "Resultado do Envio do Lote" ' ' libera classe ' Set objNFeUtil = Nothing ' ' implementar o tratamento do retorno ' ' cStat = 103 ==> NFe enviada, guardar a NFeAssinada, o número do recibo e fazer a busca do resultado do processamento (BuscaNFe) ' ' cStat = 108/109 ==> WS de recepção com problemas, avaliar a possibilidade de emissão em contingência ' ' cStat > 109 e menor que 1000 ==> WS consumido, contudo ocorreu algum problema, verifique o código e descrição do erro, recomendamos o exame do manual de integração para identificar a possível causa do erro ' ' cStat > 999 ==> código de erro da DLL, o WS não chegou a ser consumido, verifique o código e descrição do erro e providencie a solução.
xBase (Visual FoxPro)
&& && exemplo de envio de uma NF-e && && veja: https://www.flexdocs.net/guiaNFe/WS.NFe.enviaNFe2G.html && ----------------------------------------------------------------------------- && && declaração das variáveis && LOCAL siglaWS as String LOCAL NFe as String LOCAL nomeCertificado as String LOCAL versao as String LOCAL msgDados as String LOCAL msgRetWS as String LOCAL cStat as Integer LOCAL msgResultado as String LOCAL nroRecibo as String LOCAL dhRecbto as String LOCAL tMed as String LOCAL proxy as String LOCAL usuario as String LOCAL senha as String LOCAL licenca as String LOCAL nfeAssinada as String && && inicialização das variáveis && siglaWS = "SP" && sigla do WS para onde sera enviada a NF-e && && carregue a string NFe com o conteúdo do XML da NF-e que deseja transmitir && a nfe não deve estar assinada && NFe = FILETOSTR("c:\nfe2.xml") && && informar o conteúdo do campo assundo do certificado digital, utilize o pegaDadosCertificados para recuperar a informacao && e armazene na configuracao da sua aplicacao && nomeCertificado = "CN=M R M KATO ASAKURA - EPP:69621187915, OU=AC CAIXA PJ, OU=Caixa Economica Federal, O=ICP-Brasil, C=br" versao = "2.00" && informar a versão do WS, atualmente é a 2.00 msgDados = "" && parâmetro que devolve o XML que foi transmitido, necessário para solicitar suporte msgRetWS = "" && parâmetro que devolve a resposta do WS consumido, necessário para solicitar suporte cStat = 0 && parãmetro que devolve o resultado da chamada do WS msgResultado = "" && parãmetro que devolve a literal da mensagem do resultado da chamada do WS nroRecibo = "" && parâmetro que devolve o número do recibo do lote, necessário para fazer a busca do resultado do processamento da NF-e dhRecbto = "" && parâmetro que devolve a data e hora de recepçaão do lote tMed = "" && parâmetro que devolve o tempo médio de processamento do lote && && os dados do proxy só devem ser informados quando existir um proxy no ambiente de rede && proxy = "" usuario = "" licenca = "" && && instanciar o DLL && obj = CREATEOBJECTEX("NFe_util_2G.util","","") && && IMPORTANTE, a DLL envia a NF-e para o ambiente declarado na nota fiscal!, assim verifique se o tpAmb && está com 2 para não enviar a NF-e para o ambiente de produção (tpAmb=1) && nfeAssinada = obj.EnviaNFe2G(siglaWS, NFe, nomeCertificado, versao, @msgDados, @msgRetWS, @cStat, @msgResultado, @nroRecibo, @dhRecbto, @tMed, proxy, usuario, senha, licenca) && ? "Resultado do envio" ? "-----------------------------------" ? msgResultado ? IF cStat = 103 then ? "NF-e enviada com sucesso!" ? ? "Faça a busca do resultado do seguinte lote:" ? "Número do Recibo do lote : " + nroRecibo ? && && grava nota fiscal assinada que vai ser necessário na busca do resultado do processamento && STRTOFILE(nfeAssinada, "c:\nfeassinada.xml") ELSE ? "O envio da NF-e falhou, analise a mensagem de erro, caso necessite suporte anexe o conteúdo do log" ? ? "log de Erro Envio de NFe:" + CHR(13)+ "msgDados =[" + msgDados + "]" + chr(13) + "msgRetWS =[" + msgRetWS + "]" + CHR(13) + "msgResultado = [" + msgResultado + "]" ? STRTOFILE("log de Erro Envio de NFe:"+CHR(13)+ "msgDados =["+msgDados+"]" + chr(13) + "msgRetWS =["+msgRetWS+"]" + CHR(13) + "msgResultado = ["+msgResultado+"]", "c:\log.txt") ENDIF
- 12.2.1. EnviaNFe2G [15-08-17]
12.2. Envio de uma NF-e individual - « Anterior
12.2. Envio de uma NF-e individual - Próximo »
12.2.2. BuscaNFe2G [15-08-17]