WebService para gerar a DANFE e o XML de uma NF

No artigo de hoje, vou demonstrar em como gerar uma DANFE ou XML de nota através de um WebService.

Basicamente, seja SOAP ou REST, você deve criar um método que recebe o número da Nota, a Série e a Filial.

Através disso, realize uma consulta na SF2, e acione as funções para gerar os arquivos pdf da DANFE ou o XML da nota.

Após gerar, criptografe o conteúdo do arquivo, por exemplo, usando Base64. E envio essa parte criptografada como resultado do consumo da sua API.

Na outra ponta, o sistema que receber essa string em Base64, basta de-criptografar e gerar o arquivo com a extensão necessária.

Tanto que, além do AdvPL com as APIs construídas (nesse caso foi usado SOAP, mas pode ser adaptado para REST), preparei um exemplo em PHP, que consome a API, e lista os dados das NFs, como na imagem abaixo:

Página usando PHP, com os botões para gerar da DANFE ou XML

Ao clicar no botão Danfe, é consumido a API, e através da lógica descrita acima, é montado o PDF e exibido como download para o navegador:

Opção do navegador para fazer download

Depois de fazer o download, é exibido a DANFE que foi originalmente gerada pelo Protheus via AdvPL:

Exemplo de danfe após fazer o download

Esse é um Fonte Premium, disponível para os assinantes dos Cursos do Terminal de Informação (assinatura de R$ 29,99 ao mês).

Ou se preferir, compre esse fonte premium por R$ 399,99 de modo avulso pelo Mercado Pago clicando aqui (após realizar o pagamento, nos envie o comprovante via e-Mail).

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan Atilio (Daniel Atilio)
Especialista em Engenharia de Software pela FIB. Entusiasta de soluções Open Source. E blogueiro nas horas vagas.

Deixe uma resposta