Mensageria via webhook — notificando o cliente

Como usar os eventos de webhook da Abbiamo para disparar mensagens ao cliente em cada etapa do pedido, tanto para entregas quanto para retiradas (takeout).

A Abbiamo entrega atualizações em tempo real de cada pedido via webhook. Este guia mostra como usar esses eventos para disparar mensagens ao cliente — por WhatsApp, SMS, e-mail ou qualquer canal — em cada etapa do ciclo de vida do pedido.

Para o contrato completo de cada evento (campos, payloads, exemplos por status), consulte a referência dos webhooks: ORDER_STATUS_CHANGE e TOKEN_GENERATED.

Quem faz o quê

AtorResponsabilidade
AbbiamoDispara os eventos de webhook a cada mudança de status do pedido e a cada geração de token de retirada.
EmbarcadorRecebe os eventos, extrai os dados relevantes (tracking, token) e aciona o canal de mensageria escolhido.
ClienteRecebe as mensagens e acompanha o pedido via link de rastreio ou usa o código de retirada na loja.

O link de rastreio tem uma parte fixa e uma parte variável — o código de rastreio (tracking) enviado em todos os eventos ORDER_STATUS_CHANGE:

https://rastreios.net/track/{tracking}

Para pedidos de entrega, o link exibe posição do motorista, ETA e histórico de status. Para pedidos de retirada, o link exibe localização da loja, endereço completo e distância estimada até a filial.


Pedidos de entrega (order_type: DELIVERY)

Os três gatilhos mais usados para mensageria em entregas:

Status no webhookMomento
CREATEDPedido criado com sucesso
START_DELIVERYMotorista saiu para a última milha
SUCCESSFULEntrega concluída

Templates de exemplo

1 — Pedido criado

Olá [customer_name],
Seu pedido foi criado com sucesso! Acompanhe todas as atualizações em tempo real:
https://rastreios.net/track/[tracking]

2 — Pedido em rota

Olá [customer_name],
Seu pedido saiu para entrega. Acompanhe o trajeto e o status em tempo real:
https://rastreios.net/track/[tracking]

3 — Pedido entregue

Olá [customer_name],
Sua entrega foi realizada com sucesso!
Confirme o recebimento e deixe sua avaliação:
https://rastreios.net/track/[tracking]

Os campos customer_name e tracking estão disponíveis em todos os eventos ORDER_STATUS_CHANGE. Consulte a referência do evento para o payload completo.


Pedidos de retirada (order_type: TAKEOUT)

Para retiradas, há dois webhooks envolvidos:

  • ORDER_STATUS_CHANGE — para os gatilhos de status do pedido.
  • TOKEN_GENERATED — para obter o código de retirada (token) que o cliente usa na loja.

Gatilhos de status

Status no webhookSubstatusMomento
PENDINGPedido criado ou adiado
SUCCESSFULWITHDRAWNPedido retirado pelo cliente

O primeiro PENDING representa a criação do pedido — exceto quando ele foi criado diretamente em READY_FOR_TAKEOUT, caso em que o primeiro PENDING já indica adiamento. A partir do segundo PENDING, independentemente da origem, o evento sempre significa que o pedido foi adiado para uma nova data.

Código de retirada

O token de retirada chega pelo webhook TOKEN_GENERATED, no campo token. Um evento é disparado:

  • Quando o pedido fica pronto para retirada (primeira emissão do token).
  • Quando o cliente solicita reenvio do código — a Abbiamo gera um novo token e dispara o mesmo evento novamente.

Basta escutar o TOKEN_GENERATED e, a cada evento recebido, enviar (ou reenviar) o código ao cliente — sempre usando o mesmo template.

Sempre use o token do evento mais recente. Cada reenvio gera um novo código — o anterior é invalidado.

Templates de exemplo

1 — Pronto para retirada (disparado a cada TOKEN_GENERATED — primeiro envio e reenvios)

Olá [customer_name],
Seu pedido nº [order_number] está disponível para retirada.

Código de rastreio: [tracking]
Código de confirmação: [token]

Endereço e mapa da loja:
https://rastreios.net/track/[tracking]

2 — Pedido retirado

Olá [customer_name],
Seu pedido foi retirado com sucesso! Deixe sua avaliação:
https://rastreios.net/track/[tracking]

Referências relacionadas

Nesta página