Notificações de pedido no WhatsApp: confirmação, rastreio e carrinho abandonado
As notificações transacionais são o módulo de WhatsApp mais fácil de vender e o que menos gera reclamação. Quais eventos disparar, o que escrever em cada um, como não virar spam e o código que amarra tudo ao status do pedido.
A notificação transacional é o módulo de WhatsApp mais fácil de vender e o que menos gera reclamação — porque o cliente quer receber. Ninguém marca como spam a mensagem que diz que o pedido saiu para entrega.
Para quem entrega sistema para cliente de e-commerce, costuma ser o melhor primeiro módulo: valor óbvio, escopo pequeno, risco baixo.
Os cinco eventos que importam
| Evento | Quando | Por que existe |
|---|---|---|
| Pedido confirmado | Na hora | Confirma que deu certo |
| Pagamento aprovado | Ao confirmar | Fecha a ansiedade do Pix/cartão |
| Pedido enviado | Ao postar | Entrega o rastreio |
| Saiu para entrega | No dia | Faz a pessoa estar em casa |
| Entregue | Na conclusão | Fecha o ciclo, abre espaço para avaliação |
Cada uma responde a uma pergunta que chegaria ao seu suporte. É esse o teste: se você não consegue dizer que dúvida a mensagem responde, ela sobra.
O que escrever
Curto, com o dado concreto e uma saída.
Pedido confirmado
Oi, Ana! Pedido #1042 confirmado ✅ 2 itens · R$ 189,90 Assim que o pagamento for aprovado, aviso por aqui.
Pedido enviado
Seu pedido #1042 foi postado 📦 Rastreio: BR123456789BR Previsão: sexta-feira, 12/09
Saiu para entrega
Seu pedido #1042 saiu para entrega hoje 🚚 Se ninguém puder receber, responda aqui que a gente reagenda.
Três coisas em comum: número do pedido (o cliente tem mais de um), dado concreto (código, data, valor) e saída para responder. A saída importa mais do que parece — a resposta abre a janela de 24 horas, e todo o atendimento seguinte deixa de gerar cobrança nova.
Amarrar ao status do pedido
const NOTIFICACOES = {
confirmado: { template: 'pedido_confirmado', params: (p) => [p.cliente.nome, p.id, p.totalFmt] },
pago: { template: 'pagamento_aprovado', params: (p) => [p.id] },
enviado: { template: 'pedido_enviado', params: (p) => [p.id, p.rastreio, p.previsaoFmt] },
em_rota: { template: 'saiu_para_entrega', params: (p) => [p.id] },
entregue: { template: 'pedido_entregue', params: (p) => [p.id] },
};
async function aoMudarStatus(pedidoId, novoStatus) {
const cfg = NOTIFICACOES[novoStatus];
if (!cfg) return;
const pedido = await db.pedidos.completo(pedidoId);
if (!pedido.cliente.whatsapp) return;
if (await estaEmOptOut(pedido.cliente.whatsapp)) return;
// Idempotência: a restrição de unicidade em (pedido_id, tipo)
// faz a segunda tentativa falhar em vez de mandar duas vezes.
try {
await db.notificacoes.criar({ pedido_id: pedidoId, tipo: novoStatus });
} catch (e) {
if (e.code === '23505') return; // já enviada
throw e;
}
await fila.add('notificacao', {
to: pedido.cliente.whatsapp,
template: cfg.template,
params: cfg.params(pedido),
}, { jobId: `pedido:${pedidoId}:${novoStatus}` });
}
A idempotência aqui não é preciosismo. Status de pedido oscila — um pedido pode voltar para "pago" depois de uma reconciliação —, filas reprocessam, e webhooks de gateway chegam duplicados. Sem a restrição de unicidade, o cliente recebe "seu pedido foi enviado" três vezes.
Templates: a parte que atrasa o projeto
Na API oficial, a notificação parte de você com a janela fechada. Ou seja: template aprovado, sempre.
Isso muda o cronograma, e é o que mais pega gente desprevenida. Crie e submeta os templates no começo do projeto, não na véspera de subir.
A boa notícia é a categoria: notificação de pedido é utilidade, que é a mais barata e a mais fácil de aprovar. Não tente colocar promoção dentro dela — "seu pedido saiu para entrega, aproveite 20% na próxima compra" é reclassificado como marketing e cobrado como tal.
Carrinho abandonado: com cuidado
Este é marketing, não utilidade. Exige base legal adequada e template da categoria certa.
O que funciona:
- Uma mensagem, algumas horas depois — não uma sequência
- Só para quem já tinha relação com a loja
- Com o item citado pelo nome, não "você deixou algo no carrinho"
- Com saída explícita
Oi, Ana! Vi que o Tênis Runner 41 ficou no seu carrinho. Ainda tem no estoque — quer que eu guarde? Responda SAIR para não receber mais.
O que queima o número: três mensagens em 24 horas, desconto crescente a cada uma, e disparo para quem nunca comprou. A higiene da lista vale aqui inteira.
Volume e ritmo
Loja com movimento gera picos — uma promoção fecha 400 pedidos numa hora, e são 400 confirmações de uma vez.
Nunca envie direto do handler que muda o status. Enfileire com limitador: o pico entra na fila e escoa no ritmo que não queima o número.
Quando o cliente responde
Metade do valor está aqui. O cliente que responde "posso trocar o endereço?" abre a janela — e o atendimento seguinte não custa mensagem nova.
async function aoReceber(msg) {
const pedido = await db.pedidos.ultimoDoNumero(msg.from);
await notificarAtendimento({
de: msg.from,
texto: msg.text.body,
// Contexto pronto: o atendente abre a conversa já sabendo do que se trata
contexto: pedido ? `Pedido #${pedido.id} — ${pedido.status}` : null,
});
}
Levar o pedido junto da mensagem para a tela do atendente é o que faz o módulo parecer inteligente. Sem isso, ele pergunta "qual o número do seu pedido?" — e o cliente já sabia que o sistema sabia.
Se mais de uma pessoa responde por esse número, a distribuição e a trava que evita duas respostas para a mesma conversa estão em vários atendentes no mesmo número.
Conclusão
Notificação de pedido é o caso em que automação de WhatsApp é puro ganho: o cliente quer receber, o suporte recebe menos ligação, e o custo é baixo porque tudo cabe em utilidade.
Cinco eventos, templates aprovados cedo, idempotência por pedido e tipo, fila para o pico e resposta caindo no atendimento com o pedido junto. É um módulo de uma a duas semanas que se vende sozinho — e rende mensalidade em vez de hora faturada uma vez.
Pronto para automatizar seu WhatsApp?
Crie sua conta gratuita e comece a enviar mensagens pela API em minutos.
Começar grátisPerguntas frequentes
Quais notificações de pedido enviar pelo WhatsApp?+
As que reduzem ansiedade e evitam contato com o suporte: pedido confirmado, pagamento aprovado, pedido enviado com código de rastreio, saiu para entrega e entregue. Essas cinco cobrem quase todas as perguntas que chegariam ao atendimento.
Notificação de pedido precisa de template aprovado?+
Na API oficial, sim, sempre que a janela de 24 horas estiver fechada — o que é o caso normal, porque a notificação parte de você. Como são mensagens transacionais, a categoria utilidade costuma se aplicar, e ela é mais barata e mais fácil de aprovar que marketing.
Mensagem de carrinho abandonado é permitida?+
É marketing, e portanto exige base legal adequada e template da categoria correspondente. Funciona bem quando o cliente já tinha relação com a loja e a mensagem sai uma única vez, algumas horas depois. Insistir em sequência é o que transforma a estratégia em denúncia.
Quantas mensagens por pedido são demais?+
Entre quatro e cinco no ciclo inteiro é bem aceito, porque cada uma responde a uma pergunta que o cliente teria. O que incomoda não é a quantidade, é a mensagem que não informa nada novo. Se você não consegue dizer qual dúvida ela responde, ela sobra.
Como evitar mandar a mesma notificação duas vezes?+
Com uma tabela de notificações enviadas por pedido e por tipo, com restrição de unicidade. Antes de enviar, você tenta registrar; se já existir, não envia. Isso protege contra reprocessamento de fila, webhook duplicado e mudança de status que oscila.
Continue lendo
Como criar um chatbot de IA com a API da OpenAI para responder no WhatsApp
Um webhook, uma chamada à API da OpenAI e uma resposta pela WAME API: o código completo de um chatbot de IA que atende no WhatsApp, Instagram e Messenger. Com memória por contato, controle de custo e o que fazer quando a IA não deve responder.
Cobrança por Pix dentro do WhatsApp pela API: como enviar e o que muda na conversão
Mandar o código Pix no WhatsApp resolve o pior ponto da cobrança digital: o cliente não precisa sair do app. Como enviar a cobrança pela API, tratar a confirmação e evitar os erros que transformam a facilidade em suporte.
Erros da API do WhatsApp: o que cada um significa e como tratar
A mensagem não saiu e o log diz apenas 'erro ao enviar'. Os erros que você vai encontrar de verdade — janela fechada, número inválido, template não aprovado, limite atingido, instância caída — e o tratamento certo para cada um.