WhatsApp

Envie mensagens de status de pedidos via WhatsApp diretamente pela API.

A integração com WhatsApp requer que o recurso esteja habilitado no seu plano e que você tenha conectado um número no Dashboard → WhatsApp.

Visão Geral

Com a integração WhatsApp você pode:

  • Verificar o status da conexão do seu número.
  • Enviar o último status de rastreio de um pedido manualmente.
  • As notificações automáticas são disparadas a cada mudança de evento Correios (configurável no dashboard).

Status da Conexão

GET/api/public/whatsapp/status
Auth

Retorna o status atual da integração WhatsApp do seu time.

Resposta

{
  "ok": true,
  "status": "connected",
  "provider": "cloud",
  "phoneNumber": "5511999999999",
  "lastConnectedAt": "2026-04-19T10:00:00.000Z"
}

O campo status pode ser: connected, disconnected, connecting ou not_configured.

O campo provider indica o provedor ativo do time: web (WhatsApp Web/Evolution) ou cloud (WhatsApp Business Cloud API oficial).

Enviar Mensagem

POST/api/public/whatsapp/enviar
Auth30/min por chave

Envia o último status de rastreio de um pedido via WhatsApp para o número cadastrado no pedido (ou um número informado no body).

Body (JSON)

CampoTipoObrig.Descrição
orderIdstringsimID do pedido no seu time.
phonestringnãoNúmero de destino (apenas dígitos, com DDI). Se omitido, usa o telefone cadastrado no pedido.

Resposta de Sucesso (200)

{
  "ok": true,
  "messageId": "3EB0796DC3B64F123456"
}

Erros comuns

  • 401 unauthorized — Chave de API inválida.
  • 403 plan_limit — Recurso não disponível no plano.
  • 404 not_found — Pedido não encontrado.
  • 422 not_connected — WhatsApp desconectado. Reconecte no dashboard.
  • 422 no_phone — Pedido sem telefone; forneça o campo phone.

Exemplos

cURL

# Status da conexão
curl "https://seurastreio.com.br/api/public/whatsapp/status" \
  -H "Authorization: Bearer sr_live_sua_chave_aqui"

# Enviar mensagem
curl -X POST "https://seurastreio.com.br/api/public/whatsapp/enviar" \
  -H "Authorization: Bearer sr_live_sua_chave_aqui" \
  -H "Content-Type: application/json" \
  -d '{"orderId": "ord_123456"}'

JavaScript

const res = await fetch("https://seurastreio.com.br/api/public/whatsapp/enviar", {
  method: "POST",
  headers: {
    Authorization: "Bearer sr_live_sua_chave_aqui",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ orderId: "ord_123456" }),
});
const data = await res.json();
console.log(data.ok, data.messageId);

Templates de Mensagem

As mensagens são geradas a partir de templates configuráveis no Dashboard → WhatsApp. As variáveis disponíveis são:

CampoTipoObrig.Descrição
{{nome}}stringnãoNome do cliente.
{{numero}}stringnãoNúmero do pedido.
{{codigo}}stringnãoCódigo de rastreio.
{{status}}stringnãoDescrição do último evento.
{{link}}stringnãoLink de rastreio público.

Cloud API: janela de 24h e templates oficiais

Na integração oficial (Cloud API), mensagens “livres” só podem ser enviadas dentro da janela de 24h após o cliente enviar uma mensagem para a empresa. Fora dessa janela, o WhatsApp exige envio via template oficial aprovado.

No dashboard você pode mapear cada evento (ex.: “Saiu para entrega”) para um template oficial aprovado. Se não houver mapeamento, o envio fora da janela de 24h pode falhar.