2014
Consultando uma NFS-e – Antigo
31 de julho de 2014Última atualização em: 31 de julho, 2014
Atenção: O módulo NFS-e agora está integrado ao InvoiCy. Consulte aqui a documentação:
Neste artigo iremos demonstrar como realizar a consulta de NFS-e através do Web Service do InvoiCy.
A partir de agora, assumimos que você já leu o artigo Emitir uma NFS-e. Caso ainda não tenha lido o artigo, recomendamos que realize a leitura do mesmo, para facilitar o entendimento deste artigo.
A consulta de uma NFS-e é extremamente simples, embora seja vital para o processo, pois na consulta que o emissor pode verificar o status do envio dos RPS. Para que isso se torne possível, siga os seguintes passos:
1. Consumindo o Web Service
Primeiramente, você deve realizar o consumo do Web Service de Consulta de NFS-e – https://gnfse.gnfe.com.br/apnuc137.aspx?wsdl
2. Criar o XML para o envio
O XML de consulta pode conter um ou mais RPS para consulta. Os detalhes de como criar o XML e transmitir estão detalhados abaixo.
Para obter os layouts de envio e retorno do XML de Consulta de NFS-e, faça o download do arquivo Consulta.zip. Nele você encontrará também o arquivo XSD e XML de exemplo.
O XML a ser enviado pode ser divido em duas partes: Cabeçalho (comum a todos os serviços – exceto no cadastro de prestador) e os dados do RPS (Tag <ListaRPS>). A Tag ListaRPS contém os dados do(os) RPS, e o cabeçalho contém os dados do emissor e a chave de comunicação. Para saber como gerar a Tag ListaRPS corretamente e como gerar a Chave de Comunicação, consulte o artigo Gerar um XML de Envio passo-a-passo.
Após finalizado, o documento XML deve ser inserido entre as TAGS <nfse:Entradaxml> </nfse:Entradaxml> do SOAP de envio. Veja abaixo um exemplo:
Nos casos em que for usada uma ferramenta RAD para consumo do Web Service através de componente nativo, por exemplo Visual Studio utilizando Web Reference, a conversão do XML para texto irá ocorrer de forma automática. Para os casos em que o desenvolvedor preferir codificar toda a comunicação sem utilizar componentes, além de ser necessário escrever todo o XML do SOAP, também deverá ser feita a conversão do XML do documento para texto, substituindo os caracteres “<”, “>” e “ “ ” (aspas) por “<”, “>” e “"” respectivamente, de acordo com a tabela da W3C: ttp://www.w3schools.com/html/html_entities.asp.
Para facilitar a geração do XML de integração, disponibilizamos o XML de envio, bem como um arquivo de esquema XSD que poderá servir como base. É recomendável que após a geração do arquivo XML e antes do consumo do Web Service, o mesmo seja validado contra o arquivo de esquema. Maiores detalhes no artigo Validação de arquivos XML.
3. Realize a leitura do retorno do envio da NFS-e
Após o envio do XML, precisamos realizar a leitura do retorno da consulta de NFS-e. O retorno recebido segue a seguinte estrutura SOAP:
A estrutura SOAP acima demonstra o retorno do serviço de Consulta de apenas uma NFS-e efetivada.
O seu sistema deve ler o retorno, validando as informações conforme o layout de retorno. O retorno criará um grupo para cada RPS, contendo o número, série, situação, entre outros. Retornará também o número da NFS-e e o código de verificação, caso o RPS tenha sido convertido em NFS-e.
Agora que você já consultou uma NFS-e, podemos dar prosseguimento ao próximo passo.
Seu próximo passo é: Cancelar uma NFS-e.
Artigos Relacionados:
- Como funciona o InvoiCy NFS-e
- Integrar com o InvoiCy NFS-e
- Cadastrar uma Empresa via Web Service
- Emitir uma NFS-e