Nos planos Growth e superiores, o DigiEntrega pode notificar o seu sistema a cada evento de entrega — para alimentar CRM, planilha, automação de suporte ou o que você quiser construir. Este guia documenta o contrato técnico completo.
Configuração
No painel, em Configurações → Notificações automáticas, informe a URL do seu endpoint (HTTPS obrigatório). O DigiEntrega gera um segredo de assinatura — guarde-o para validar as chamadas.
Eventos disponíveis
| Evento | Quando dispara |
|---|---|
delivery.sent | Entrega enviada com sucesso ao comprador |
delivery.failed | Entrega falhou (com o código do motivo) |
delivery.unmapped | Pedido pago com produto sem arquivo mapeado |
delivery.revoked | Links do pedido revogados (reembolso/cancelamento) |
delivery.resolved | Uma falha anterior foi resolvida |
link.first_download | Primeiro download do arquivo pelo comprador |
Formato do payload
Toda chamada é um POST com Content-Type: application/json e este envelope:
{
"event": "delivery.sent",
"version": "1",
"occurred_at": "2026-07-03T14:25:00Z",
"digientrega": true,
"data": { ... }
}
O conteúdo de data varia por evento. Para delivery.sent: order_id, customer_email, product_id, product_name, download_url. Para delivery.failed, acrescente failure_code (ex.: quota_exceeded, email_bounce, file_missing) e error. Para link.first_download: order_id, product_id, customer_email, file_name.
Assinatura: valide toda chamada
Cada requisição leva o header:
X-DigiEntrega-Signature: <hex>
O valor é o HMAC-SHA256 do corpo bruto da requisição, calculado com o seu segredo e codificado em hexadecimal. Recalcule no seu servidor e compare (comparação de tempo constante) — se não bater, descarte a chamada. O User-Agent é DigiEntrega-Webhook/1.
Entrega e confiabilidade
- O DigiEntrega faz uma tentativa por evento, com timeout de 10 segundos. Responda
2xxrápido (processe depois, de forma assíncrona); - Não há refila automática de chamadas que falharam — trate o webhook como notificação em tempo real, não como fonte única da verdade;
- O painel mantém um log de tentativas (evento, status HTTP, horário) para você auditar o que foi enviado;
- Para conciliação garantida, combine o webhook com a exportação CSV de entregas do painel.
Dica
Ideias que já vimos funcionar: marcar o cliente no CRM quando link.first_download chegar (cliente ativou!), abrir ticket automático em delivery.failed, e disparar fluxo de reengajamento quando a entrega foi enviada mas o primeiro download nunca veio.