Pular para o conteúdo principal
A integração Webhooks é para desenvolvedores. Ela envia um evento JSON para um endereço HTTPS que você escolhe sempre que algo acontece no Foliant. Assim, o seu próprio sistema pode reagir, por exemplo, arquivando o PDF de cada fatura ou buscando uma exportação concluída. A integração Webhooks está em beta. Se você não a encontrar em Configurações › Integrações, ela ainda não está disponível para a sua loja. Entre em contato com o suporte para pedir acesso.

Eventos

Conectar webhooks

  1. No Foliant, acesse Configurações › Integrações.
  2. Em Webhooks, clique em Conectar.
  3. Preencha as configurações:
  4. Clique em Conectar.
Você pode alterar a URL, o segredo e os eventos depois, em Configurações na página da integração.

O que cada solicitação contém

O Foliant envia uma solicitação POST com um corpo JSON:

Dados de document.generated

  • template: o uuid e o name do modelo.
  • document_type: invoice, credit_note, quote ou vazio para outros documentos.
  • order: o id, o name e o type do pedido (pedidos ou pedidos preliminares).
  • refund_id e fulfillment_id, quando o documento é de um reembolso ou de um envio.
  • document_number e issued_at, para documentos numerados.
  • source: como ele foi gerado, como download, admin_download, export ou email.
  • export: o ID da exportação, quando ele faz parte de uma exportação.
  • generated_at.

Dados de export.completed

  • export: o uuid, o order_type, os template_uuids, o número de orders, os orders_skipped (excluídos depois de terem sido escolhidos) e os documents, o requested_by (merchant ou customer) e o completed_at.
  • download_url: um link para baixar a exportação, e download_url_expires_at, quando esse link deixa de funcionar.
  • download_expires_at: quando a própria exportação expira.
Os eventos contêm IDs e contagens, não endereços de e-mail de clientes.

Cabeçalhos

Verificar a assinatura

A assinatura é um HMAC-SHA256 em hexadecimal do timestamp, de um ponto final e do corpo bruto da solicitação (<timestamp>.<body>), usando o seu segredo de assinatura como chave. Calcule-a do seu lado e compare com o valor depois de sha256= em X-Foliant-Signature. Use o corpo bruto exatamente como foi recebido.

Respostas e novas tentativas

  • Qualquer resposta 2xx conta como entregue.
  • Se o seu endpoint retornar um erro 5xx, 408 ou 429, ou não responder em 10 segundos, o Foliant tenta de novo mais tarde, esperando mais a cada vez, até 5 tentativas.
  • Outras respostas 4xx são definitivas: o Foliant não tenta de novo.
  • Cada evento é entregue uma vez por documento ou exportação. As novas tentativas nunca o enviam duas vezes depois de um sucesso.
Todas as entregas aparecem em Atividade na página da integração, onde você pode clicar em Tentar novamente em uma entrega que falhou. Veja Atividade da integração.

Artigos relacionados