Cancelando uma NFS-e – Antigo

Última atualização em: 31 de julho, 2014

 

Neste artigo iremos demonstrar como realizar o cancelamento de NFS-e através do Web Service do InvoiCy.

A partir de agora, assumimos que você já leu o artigo Consultar uma NFS-e. Caso ainda não tenha lido o artigo, recomendamos que realize a leitura do mesmo, para facilitar o entendimento deste artigo.

O Cancelamento de uma NFS-e é extremamente simples e constitui um processo adicional, embora usado com bastante frequência. 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 Cancelamento de NFS-e – https://gnfse.gnfe.com.br/apnuc138.aspx?wsdl

2. Criar o XML para o envio
O XML de Cancelamento pode conter um ou mais NFS-e a serem canceladas. Os detalhes de como criar o XML e transmitir estão detalhados abaixo.

Para obter os Layouts de envio e retorno do XML de Cancelamento de NFS-e, faça o download do arquivo Cancelamento.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/NFS-e (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 “&lt;”, “&gt;” e “&quot;” respectivamente, de acordo com a tabela da W3C: http://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 do cancelamento de NFS-e. O retorno recebido segue a seguinte estrutura SOAP:

A estrutura SOAP acima demonstra o retorno do serviço de Cancelamento de apenas uma NFS-e, porém, é possível cancelar mais de uma numa única requisição.
O seu sistema deve ler o retorno, validando as informações conforme o layout de retorno. O retorno criará um grupo para cada NFS-e, contendo o número, série, situação, entre outros. Retornará também os erros, caso a prefeitura não permita o cancelamento.
Agora que você já cancelou uma NFS-e, podemos dar prosseguimento ao próximo passo.
Seu próximo passo é: Download do XML da NFS-e.

Artigos Relacionados:

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s