EnviaLoteV3

Olá, como podemos lhe ajudar?
< Todos tópicos
Print

Envia Lote de NF-e da versão 3.x/4.00

Assinatura

int EnviaLoteV3(string siglaWSint tipoAmbientestring nomeCertificadostring versaostring msgDadosint GZipout string msgRetWSout string msgResultadoout string nRecout string dhRecbtoout string tMedstring proxystring usuariostring senhastring licenca)

Descrição:

Funcionalidade para transmissão de lote de NF-e para o web service da SEFAZ identificada no parâmetro siglaWS.

PREENCHIMENTO DA siglaWS PARA ESCOLHA DO WEBSERVICE

SVAN, caso a UF seja usuária da SEFAZ Virtual do Ambiente Nacional (MA);

SVRS, caso a UF seja usuária da SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PA, PB, PI, RJ, RN, RO, RR, SC, SE e TO);

sigla da UF, caso a UF tenha aplicação própria (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP);

PRENCHIMENTO 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 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:

nometipofluxodescrição
siglaWSstringentradainformar a sigla do WS de envio, veja Tabela de siglaWS
tipoAmbienteinteiroentradainformar o código do ambiente desejado: 1- produção ou 2-homologação
NomeCertificadostringentradainformar 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”.
versaostringentradainformar a versão da mensagem do WS – 4.00.
msgDadosstringentrada/saídainformar a string com o lote da NFC-e neste parâmetro, retorna a mensagem XML enviada para o WS.
GZipintentradainformar o indicador de compactação da mensagem XML: 0 – não compactado, 1 – compactado.
msgRetWSstringsaídaretorna a mensagem XML de resposta do WS
msgResultadostringsaídaretorna a literal do resultado da chamada do WS
nRecstringsaídaretorna o número do recibo do lote atribuído ao lote pela SEFAZ, este será utilizado para consultar o resultado do processamento do lote.
dhRecbtostringsaídaretorna a data e hora de recebimento do lote pela SEFAZ.
tMedstringsaídaretorna o tempo médio de resposta do serviço em segundos dos últimos 5 minutos.
proxystringentradainformar ‘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’
usuariostringentradainformar o usuário para autenticação no proxy se necessário
senhastringentradainformar a senha de autenticação no proxy se necessário
licencastringentradainformar a chave da licenca de uso ou registro, 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

Retorno:

O resultado da chamada do EnviaLoteV3 é o código numérico que retorna como resultado da chamada com os seguintes significados:

códigoMensagemorigemregra
5001Erro: 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
5002Erro: 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
5003Erro: 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
5004Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: método não permitido)DLL
5005Erro: 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
5006Erro: 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
5007Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: mensagem maior que a permitida)DLL
5008Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Servidor com problemas)DLL
5009Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Serviço não implementado)DLL
5010Erro: 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
5011Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Causa provável da falha na conexão: Rede indisponível)DLL
5012Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Versão do SOAP não suportadaDLL
5013Erro: 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
5014Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Web Service não consumido, falha desconhecida)DLL
5015Erro: Falha na conexão: Tempo limite de time-out alcançado [TEMPO DE TIME OUT UTILIZADO ms] – [MENSAGEM DE ERRO DO WINDOWS]DLL
5016Erro: Falha na conexão: Falha da Biblioteca Criptografica: [MENSAGEM DE ERRO DO WINDOWS]DLL
5017Erro: Falha ao tratar o XML de retorno do WS: [MENSAGEM DE ERRO DO WINDOWS]DLL
5101Erro: A mensagem de retorno do WS não é um XML válido: [MENSAGEM DE ERRO DO WINDOWS]DLL
5102Erro: Tag cStat inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS]DLL
5103Erro: Tag xMotivo inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS]DLL
5104Erro: Tag [NOME TAG] inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS]DLL
5105Erro: O WS não devolveu nenhum resultadoDLL
5201Erro: O código do tipo de ambiente [CODIGO RECEBIDO PELA DLL] informado diferente de 1 – produção e 2 – homologaçãoDLL
5202Erro: A sigla da UF [SIGLA RECEBIDA PELA DLL] informada é inválidaDLL
5203Erro: Inexiste url para a UF [SIGLA UF] informada no ambiente [AMBIENTE] desejado, verifique se existe atualização do arquivo [NOME ARQUIVO] disponível.DLL
5204Erro: Arquivo que contem a URL do WS não localizado em [CAMINHO DA APLICACAO]DLL
5205Erro: Ocorreu um erro inesperado no processamento da URL (NOME URL) : [MENSAGEM DE ERRO DO WINDOWS]DLL
5206Erro: Ocorreu um erro de validação do XML (NOME XML) : [MENSAGEM DE ERRO DO WINDOWS]DLL
5403Erro: Falha ao acessar certificado digital [mensagem de ERRO DO WINDOWS]DLL
5404Erro: Nenhum certificado digital selecionadoDLL
5405Erro: Nenhum certificado válido foi encontrado com o nome [NomeCertificado] informado no repositório [MY do CurrentUser]DLL
5406Erro: Falha no tratamento do parâmetro nome: [nome informado]DLL
5407Erro: Quantidade de parâmetos inválido: [nome informado]DLL
5408Erro: Falha na criação do objeto certificate: [mensagem do ERRO DO WINDOWS]DLL
6101Erro: O parâmetro versao não foi informadoDLL
6102Erro: O conteúdo do parâmetro sigla da UF: [CONTEÚDO] é inválidoDLL
6103Erro: O conteúdo do parâmetro versao informado é inválido: [CONTEUDO]DLL– –
6110Erro: O nome do titular do certificado deve ser informadoDLL
6123Erro: O parâmetro tipoAmbiente deve ser informadoDLL
6124Erro: O parâmetro tipoAmbiente [CONTEUDO] deve ser 1 ou 2DLL
6141Erro: O parâmetro siglaWS deve ser informadoDLL
7001Erro: A licença não foi informadaDLL
7002Erro: A licença informada: [CONTEUDO] tem tamanho:[TAMANHO] diferente de 128DLL
7003Erro: A licença informada: [CONTEUDO] não pertence ao CNPJ:[TAMANHO]DLL
103Lote recebido com sucessoWS
108Serviço Paralisado Momentaneamente (curto prazo)WSB03
109Serviço Paralisado sem PrevisãoWSB04
213Rejeição: CNPJ-Base do Emitente difere do CNPJ-Base do Certificado DigitalWSF02
214Rejeição: Tamanho da mensagem excedeu o limite estabelecidoWSB01
225Rejeição: Falha no schema XMLWSD01
238Rejeição: Cabeçalho – Versão do arquivo XML superior a Versão vigenteWSC05
239Rejeição: Cabeçalho – Versão do arquivo XML não suportadaWSC06
242Rejeição: Cabeçalho – Falha no Schema XMLWSC01
243Rejeição: XML Mal FormadoWSB02
280Rejeição: Certificado Transmissor inválidoWSA01
281Rejeição: Certificado Transmissor Data ValidadeWSA02
282Rejeição: Certificado Transmissor sem CNPJWSA07
283Rejeição: Certificado Transmissor – erro Cadeia de CertificaçãoWSA03
284Rejeição: Certificado Transmissor revogadoWSA05
285Rejeição: Certificado Transmissor difere ICP-BrasilWSA06
286Rejeição: Certificado Transmissor erro no acesso a LCRWSA04
290Rejeição: Certificado Assinatura inválidoWSE01
291Rejeição: Certificado Assinatura Data ValidadeWSE02
292Rejeição: Certificado Assinatura sem CNPJWSE03
293Rejeição: Certificado Assinatura – erro Cadeia de CertificaçãoWSE04
294Rejeição: Certificado Assinatura revogadoWSE06
295Rejeição: Certificado Assinatura difere ICP-BrasilWSE07
296Rejeição: Certificado Assinatura erro no acesso a LCRWSE05
297Rejeição: Assinatura difere do calculadoWSF02
298Rejeição: Assinatura difere do padrão do ProjetoWSF01
299Rejeição: XML da área de cabeçalho com codificação diferente de UTF-8WSC01a
402Rejeição: XML da área de dados com codificação diferente de UTF-8WSD03
404Rejeição: Uso de prefixo de namespace não permitidoWSD02
409Rejeição: Campo cUF inexistente no elemento nfeCabecMsg do SOAP HeaderWSC02
410Rejeição: UF informada no campo cUF não é atendida pelo Web ServiceWSC03
411Rejeição: Campo versaoDados inexistente no elemento nfeCabecMsg do SOAP HeaderWSC04
565Rejeição: Falha no schema XML – inexiste a tag raiz esperada para a mensagemWSD01a
568Rejeição: Falha no schema XML – inexiste atributo versao na tag raiz da mensagemWSD02a
567Rejeição: Falha no schema XML – versão informada na versaoDados do SOAPHeader diverge da versão da mensagemWSD01c
587Rejeição: Usar somente o namespace padrão da NF-eWSD01d
588Rejeição: Não é permitida a presença de caracteres de edição no início/fim da mensagem ou entre as tags da mensagemWSD01e
595Rejeição: Versão de leiaute da NF-e utilizada não é mais válidaWSGB09.02
596Rejeição: Ambiente de homologação indisponível para recepção de NF-e da versão 1.10.WSGB09.03
999Rejeição: Erro não catalogado (mensagem)WS
Finalidade do nREC – número do recibo do lote

O nRec – 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 processamento do lote.

Número do Recibo do Lote é número de 15 dígitos com o seguinte significado:

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)
  • 5403 – 5408 – falha no acesso ao certificado digital
  • 5201 – 5206 – falha na recuperação da URL do WS desejado (problema no arquivo de configuração da URL)
  • 6101 – 6141 – falha no tratamento dos parâmetros da chamada da DLL
  • 7001 – 7003 – falha na validação da licença

Was this article helpful?
0 out of 5 stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
How can we improve this article?
Please submit the reason for your vote so that we can improve the article.
Anterior Envio assíncrono de lote de NF-e
Próxima BuscaLoteV3
Sumário