---
title: "Notificações de pedido no WhatsApp: confirmação, rastreio e carrinho abandonado"
description: "As notificações transacionais são o módulo de WhatsApp mais fácil de vender. Quais eventos disparar e o código que amarra tudo ao status do pedido."
url: "https://wame.api.br/blog/notificacoes-pedido-whatsapp-api"
language: "pt-BR"
og:type: "article"
published_time: "2026-09-10"
modified_time: "2026-09-10"
author: "Raphael Serafim"
keywords: "notificação de pedido whatsapp, carrinho abandonado whatsapp, rastreio pedido whatsapp, confirmação de pedido whatsapp api, e-commerce whatsapp api, status do pedido whatsapp, automação e-commerce whatsapp"
reading_time: "10 min de leitura"
---

# 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. Quais eventos disparar 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](/api-whatsapp-para-software-house), 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

```js
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](/blog/templates-whatsapp-api-criar-aprovar-enviar) 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](/blog/lista-contatos-optin-optout-whatsapp) 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](/blog/fila-rate-limit-retry-disparo-whatsapp): 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.

```js
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](/blog/multiatendimento-mesmo-numero-whatsapp).

## 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](/blog/quanto-cobrar-integracao-whatsapp-recorrencia) em vez de hora faturada uma vez.

## Perguntas 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.
