NF-eletrônica nacional
Informações Técnicas do Projeto Nota Fiscal eletrônica

Falhas na conexão com os Web Services da NF-e

Publicado em 02-08-08 4:29 pm por admin

A conexão com o Web Service da NF-e 

A conexão com os Web Services da NF-e é realizada através da Internet e a segurança e a privacidade é garantida com o uso do protocolo Secure Socket Layer – SSL, versão 3.0 que estabelece um canal de comunicação seguro com o uso de criptográfia.

A identificação das partes envolvidas na comunicação é realizada com a autenticação mútua através da troca de certificados digitais X509 -v3, no padrão ICP/BR. O certificado digital é enviado como um anexo da mensagem SOAP.

A maioria das falhas no estabelecimento desta conexão é causada pela recusa do certificado digital recebido por qualquer uma das partes, seja por ele não ser um certificado digital autêntico, padrão ICP/BR ou por o certificado digital utilizado pelo emissor ou pelo Web Service não ser considerado confiável.

Requisitos para estabelecer a conexão

Os requisitos para obter êxito na comunicação com os Web Services da NF-e são:

a) Certificado Digital do Emissor:

  • o emissor deve possuir um certificado digital x509 versão 3 emitidos por Autoridade Certificadora – AC credenciada à Infra-Estrutura de Chaves Públicas Brasileira – ICP-Brasil;
  • o certificado digital deve estar dentro do prazo de seu prazo de validade;
  • o certificado digital não deve estar revogado;
  • o certificado digital deve ser de pessoa jurídica - PJ e o respectivo CNPJ deve estar informado no campo otherName OID = 2.16.76.1.3.3;
  • a cadeia de certificados digitais da Autoridade Certificadora - AC deve estar instalada no repositório de certificados digitais do equipamento;

Caso o certificado digital seja do tipo A3, existe necessidade de o gerenciador do smartcard/token estar corretamente instalado, valendo ressaltar que o uso de versão incompátivel com o dispositivo pode provocar o mal funcionamento do dispositivo, como a falha no processo de assinatura digital.

b) Certificado Digital do Web Service:

A principal preocupação que deve existir com o certificado digital do Web Service é a instalação da cadeia de certificação da AC emissora do certificado digital utilizado pelo Web Service.

O caminho mais curto é a instalação de toda a cadeia de certificação das Autoridades Certificadoras da Infra-Estrutura de Chaves Públicas Brasileira - ICP-Brasil que pode ser obtida no Repositório da AC Raiz. Atualmente são 78 certificados digitais, o emissor tem a opção de instalar somente a cadeia de certificação necessária para acessar o Web Service da sua UF.

Apesar de existirem 28 unidades federadas, somente 12 unidades federas mantêm aplicação própria (AM, BA, CE, DF, GO, MG, MS, MT, PE, PR, RS e SP), as demais unidades federadas utilizam a SEFAZ Virtual do RS (AC, AL, AP, PB, RJ, RR, SC, SE, RO e TO) ou a SEFAZ Virtual do Ambiente Nacional - SVAN (ES, MA, PA, PI e RN), vale observar que a situação está em constante alteração, pois muitas UF estão concluindo o desenvolvimento dos sistemas próprios.

Os Web Services utilizam certificados digitais das seguintes cadeias de certificação da hierarquia ICP-Brasil (em ordem alfabética):

 Última atualização em 07/09/2009.

Assim, o emissor que desejar pode instalar somente a cadeia de certificação necessária para a sua UF.

Importante ressaltar que os emissores do DF devem instalar a cadeia de certificado proprietário do DF, pois se trata de certificado digital não autêntico.

Problemas na conexão

 No início do projeto é muito comum a ocorrência de erros na conexão que dificulta o processo de implementação da NF-e, principalmente se o interessado optar por desenvolver todas as funcionalidades necessárias para consumir os Web Services. 

A seguir relacionamos os erros mais comuns que podem ocorrer no estabelecimento da conexão com o Web Service:

  • The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. - a causa provável do erro é a inexistência da cadeia de certificação do Web Service acessado no equipamento do emissor, a instalação da cadeia de certificação correspondente deve resolver o problema.
  • The request was aborted: Could not create SSL/TLS secure channel. o certificado cliente não é um certificado aceito pelo Web Service que está configurado para não estabelecer a conexão, quando a servidor aceita o envio do certificado digital inválido, resulta em erro :The request failed with HTTP status 403: Forbidden. O emissor deve conseguir um certificado digital autêntico para prosseguir.
  • The remote name could not be resolved: nfe.sefaz.rsvirtual.gov.br - domínio inexistente, verificar a sintaxe do domínio na url;
  • The request failed with HTTP status 404: Not Found. - o serviço solicitado não existe, verificar a sintaxe do serviço na url;
  • Unable to connect to the remote server - impossibilidade de conexão com o servidor, contatar a UF do Web Service para obter maiores informações da disponbilidade do WS.
  • The request failed with HTTP status 503: Service Temporarily Unavailable. - o Web Service está temporariamente indisponível, o emissor deve tentar a conexão mais tarde.
  • The operation has timed out - a aplicação cliente abortou a requisição por time-out, o Web Service pode estar sobrecarregado ou existe algum problema no link.
  • The request failed with HTTP status 403: Forbidden. - o Web Service não estabeleceu a conexão por algum problema no certificado digital da aplicação cliente. Existem diversas causas para a falha, recomendamos que o emissor tente a conexão ao Web Service pelo browser, o uso do IE é recomendado por utilizar o mesmo repositório de certificados digitais no caso de aplicações .NET, como por exemplo a biblioteca NFe_Util.dll.  A conexão pelo browser mostra o código de erro HTTP com detalhes que permite identificar a real causa da falha, a seguir listamos os HTTP error da família 403 mais comuns (a lista completa está disponível em: http://www.wats.ca/show.php?contentid=36):
    • HTTP Error 403.7 - certificado digital do cliente não enviado para o servidor atachado na mensagem SOAP.
      Forbidden: Client certificate required. This error occurs when the resource you are attempting to access requires your browser to have a client Secure Sockets Layer (SSL) certificate that the server recognizes. This is used for authenticating you as a valid user of the resource. Please contact the Web server’s administrator to obtain a valid client certificate.
    • HTTP Error 403.9 - Muitos usuários conectado - erro raro.
      Access Forbidden: Too many users are connected. This error can be caused if the Web server is busy and cannot process your request due to heavy traffic. Please try to connect again later. Please contact the Web server’s administrator if the problem persists.
    • HTTP Error 403.13 - O certificado do cliente se encontra revogado.
      Client certificate revoked: The page you are trying to view requires the use of a valid client certificate. Your client certificate was revoked, or the revocation status could not be determined. The certificate is used for authenticating you as a valid user of the resource.
    • HTTP Error 403.16 - O certificado do cliente não é confiável ou é inválido.
      Client certificate untrusted or invalid: The page you are trying to view requires the use of a valid client certificate. Your client certificate is untrusted or invalid. The client certificate is used for authenticating you as a valid user of the resource.
    • HTTP Error 403.17 - O certificado do cliente não se encontra no período de validade.
      Client certificate has expired or is not yet valid: The page you are trying to view requires the use of a valid client certificate. Your client certificate has expired or is not yet valid. The client certificate is used for identifying you as a valid user of the resource.
1 Star2 Stars3 Stars4 Stars5 Stars (9 votos, média: 3.33 de 5)
Loading ... Loading ...
78,318 leituras | Imprimir Imprimir | Recomendar por e-mail Recomendar por e-mail |