Skip to main content

Acompanhe cada passo da sua mensagem

Em sistemas antigos, você precisaria ficar perguntando para a API a cada 5 segundos (“Já chegou? Já chegou?”). Isso é ineficiente e derruba a performance do seu banco de dados. Na Zenvio, nós usamos Webhooks Assíncronos. Assim que o status da mensagem muda no WhatsApp, nós notificamos seu sistema automaticamente.

Uso e vantagem das filas

Para garantir que seu servidor nunca seja “bombardeado” por milhares de requisições simultâneas, nós processamos os webhooks através de filas de alta performance. O que isso significa na prática? Existe um pequeno delay técnico (geralmente alguns segundos) entre o evento ocorrer no WhatsApp e chegar no seu sistema. Isso é proposital e benéfico:
  1. Proteção de Pico: Se você enviar 10.000 mensagens de uma vez e todas forem entregues no mesmo segundo, nós enfileiramos os avisos de entrega e despachamos para você de forma ordenada. Seu servidor agradece.
  2. Prioridade Inteligente: Eventos críticos (como erros de envio) entram em uma Fila de Prioridade para serem processados antes de eventos menos urgentes.
É rápido o suficiente para parecer instantâneo, mas controlado o suficiente para não derrubar sua infraestrutura.

Segurança Militar (HMAC & Anti-Replay)

Como você sabe que o aviso de “Pagamento Recebido” veio mesmo da Zenvio e não de um hacker tentando fraudar seu sistema? Nós assinamos criptograficamente cada evento usando HMAC-SHA256. Validação Simples:
  1. Nós enviamos um hash no header X-Zenvio-Signature.
  2. Você usa o seu “Segredo de Webhook” (disponível no Dashboard) para recalcular o hash do payload.
  3. Se bater, a requisição é legítima.
Também incluímos o X-Zenvio-Timestamp para evitar ataques de repetição (replay attacks), garantindo que você só processe eventos recentes (janela de 5 minutos).

Se seu servidor piscar, nós seguramos

Se o seu sistema estiver fora do ar (Error 500 ou Timeout) no momento em que tentarmos avisar que uma mensagem foi lida, a informação não se perde. Nós temos uma política automática de Retentativa Exponencial:
  1. Tentamos entregar. Falhou?
  2. Esperamos 5 minutos.
  3. Esperamos 30 minutos.
  4. Esperamos 2 horas.
Nós garantimos que o status final da mensagem chegue até você, mesmo que sua infraestrutura tenha instabilidades momentâneas.