← Blog

·

WhatsApp para infoprodutores: acesso, suporte e recuperação de vendas

Atualizado em 25/10/2026

Para infoprodutores, a API oficial do WhatsApp liga a plataforma de pagamento ao WhatsApp do comprador: quando a venda é aprovada, o postback (webhook) da plataforma chega ao seu sistema, que envia na hora um template de utilidade com o link de acesso. O mesmo fluxo avisa PIX e boleto gerados e ainda não pagos, e o suporte acontece na janela de 24 horas aberta quando o aluno responde. Tudo pelo número oficial do produtor, sem depender de celular ou de ferramenta não oficial.

Este guia mostra o fluxo completo, os templates de cada etapa, um exemplo de código para receber o postback e as regras da Meta que separam utilidade de marketing nessa operação.

Os três momentos em que o WhatsApp faz diferença

MomentoGatilhoMensagemCategoria provável
Acesso liberadoPostback de compra aprovadaLink da área de membros e loginUtilidade
Pagamento pendentePostback de PIX ou boleto geradoLembrete com o link de pagamentoUtilidade, se não tiver persuasão
SuporteMensagem do alunoRespostas livres, humanas ou automáticasServiço, dentro da janela

Carrinho abandonado (a pessoa saiu do checkout sem gerar pagamento) é outro caso. A Meta diz explicitamente que lembretes de carrinho são marketing, mesmo que o usuário tenha pedido. Veja recuperação de PIX, boleto e carrinho abandonado.

Pré-requisitos

  • Número registrado na API oficial e templates aprovados. Se você está começando, leia o guia da API oficial do WhatsApp.
  • Plataforma de pagamento com notificação por webhook (postback) para os eventos de compra. Confira na documentação da sua plataforma quais eventos ela envia e como validar a origem da requisição.
  • Telefone do comprador coletado no checkout, com um aviso claro de que ele vai receber mensagens sobre a compra pelo WhatsApp.
  • Um serviço que receba o postback e chame a API do WhatsApp. Pode ser código próprio ou uma ferramenta como n8n.

Os templates

Acesso liberado

{
  "name": "acesso_liberado",
  "language": "pt_BR",
  "category": "UTILITY",
  "components": [
    {
      "type": "BODY",
      "text": "Olá, {{1}}. Seu pagamento de {{2}} foi aprovado e o seu acesso já está liberado. Entre com o e-mail {{3}} pelo botão abaixo.",
      "example": { "body_text": [["Paula", "Curso Exemplo", "paula@email.com"]] }
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "URL",
          "text": "Acessar a área de membros",
          "url": "https://membros.exemplo.com/entrar/{{1}}",
          "example": ["https://membros.exemplo.com/entrar/a1b2c3"]
        }
      ]
    }
  ]
}

É uma confirmação da compra que o cliente fez, sem oferta. Não coloque “aproveite também o nosso outro curso” aqui: a Meta diz que mensagens de pedido não podem promover produtos, fazer upsell ou cross-sell, e um template que mistura utilidade e marketing é classificado como marketing. Veja como a Meta classifica templates.

Pagamento pendente (PIX ou boleto)

No Brasil, boa parte das compras sai por PIX (pagamento instantâneo do Banco Central, com QR Code ou código copia e cola) ou boleto (título bancário com vencimento, pago em banco ou aplicativo, cuja compensação não é instantânea). Quando a plataforma gera o pagamento e ele não é concluído, um lembrete costuma ajudar.

{
  "name": "pagamento_pendente",
  "language": "pt_BR",
  "category": "UTILITY",
  "components": [
    {
      "type": "BODY",
      "text": "Olá, {{1}}. Seu pedido de {{2}} está aguardando o pagamento por {{3}}, com vencimento em {{4}}. Se você já pagou, pode desconsiderar este aviso.",
      "example": { "body_text": [["Paula", "Curso Exemplo", "boleto", "28/10/2026"]] }
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "URL",
          "text": "Ver pagamento",
          "url": "https://pagamento.exemplo.com/{{1}}",
          "example": ["https://pagamento.exemplo.com/pedido123"]
        }
      ]
    }
  ]
}

O exemplo da própria Meta para utilidade inclui lembretes de pagamento. O que leva para marketing é a persuasão: “últimas vagas”, “o preço vai subir”, “garanta já”, bônus para quem pagar hoje. Se você quer esse tom, crie um template de marketing e envie só para quem tem opt-in de marketing.

Código: do postback ao template

Um serviço em Node.js que recebe o postback, confere a origem, transforma o evento da plataforma em um evento seu e envia o template certo. Os nomes de eventos e campos variam de plataforma para plataforma, por isso o código usa uma camada de tradução.

import express from 'express';

const app = express();
app.use(express.json());

// Traduza os eventos da sua plataforma para eventos internos.
// Os nomes à esquerda são exemplos; use os da documentação da sua plataforma.
const EVENTOS = {
  'compra.aprovada': 'aprovada',
  'pix.gerado': 'pendente',
  'boleto.gerado': 'pendente',
  'compra.reembolsada': 'reembolsada',
};

app.post('/postback', async (req, res) => {
  if (req.get('x-token-plataforma') !== process.env.TOKEN_PLATAFORMA) {
    return res.sendStatus(401);
  }
  res.sendStatus(200);

  const p = req.body;
  const evento = EVENTOS[p.evento];
  if (!evento) return;

  const pedido = await salvarPedido(p); // idempotente: ignore repetidos
  if (pedido.jaProcessado(evento)) return;

  if (evento === 'aprovada') {
    const token = await liberarAcesso(pedido);
    await enviarTemplate(pedido.telefone, 'acesso_liberado',
      [pedido.primeiroNome, pedido.produto, pedido.email], token);
  }

  if (evento === 'pendente') {
    await agendar(pedido.id, '2h', async () => {
      if ((await buscarPedido(pedido.id)).status !== 'pendente') return;
      await enviarTemplate(pedido.telefone, 'pagamento_pendente',
        [pedido.primeiroNome, pedido.produto, pedido.metodo, pedido.vencimento], pedido.idPagamento);
    });
  }

  if (evento === 'reembolsada') await revogarAcesso(pedido);
});

async function enviarTemplate(to, name, corpo, sufixoUrl) {
  return fetch('https://apis.vectalk.com.br/api/messages', {
    method: 'POST',
    headers: {
      Authorization: `Bearer ${process.env.VECTALK_TOKEN}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      messaging_product: 'whatsapp',
      to,
      type: 'template',
      template: {
        name,
        language: { code: 'pt_BR' },
        components: [
          { type: 'body', parameters: corpo.map((text) => ({ type: 'text', text })) },
          { type: 'button', sub_type: 'url', index: '0', parameters: [{ type: 'text', text: sufixoUrl }] },
        ],
      },
    }),
  });
}

Três detalhes que evitam dor de cabeça:

  • Idempotência. Plataformas reenviam postbacks quando não recebem resposta rápida. Guarde o ID do pedido e o evento, e não mande o mesmo template duas vezes.
  • Espera antes do lembrete. Um PIX gerado pode ser pago minutos depois. Esperar um intervalo e conferir o status de novo evita cobrar quem já pagou.
  • Validação da origem. Use o token ou a assinatura que a sua plataforma oferece. O cabeçalho do exemplo é ilustrativo.

Suporte na janela de 24 horas

Quando o aluno responde qualquer mensagem, abre-se a janela de atendimento de 24 horas, e você pode responder com texto livre, áudio, vídeo, PDF e botões sem novo template. Dúvidas comuns de infoproduto (não recebi o e-mail, esqueci a senha, onde está a aula, quero o certificado) cabem bem em um menu com botões ou em um assistente automático com passagem para humano. A política do WhatsApp Business exige caminhos claros para o atendimento humano quando há automação.

Para mensagens automáticas de boas-vindas e fora do horário, veja boas-vindas e ausência na API. Para entender o que pode ser enviado dentro e fora da janela, veja janela de 24 horas do WhatsApp.

Lançamentos, aulas ao vivo e avisos

Aviso de aula ao vivo para quem se inscreveu, lembrete de evento e abertura de carrinho são casos diferentes. Lembrar o inscrito do horário da aula que ele marcou pode ser utilidade; anunciar a abertura de vendas é marketing. Veja avisos de evento: utilidade ou marketing. Para campanhas, use opt-in de marketing e respeite o limite de mensagens do portfólio. Veja disparo em massa pela API oficial.

Opt-in e LGPD

A política do WhatsApp Business exige que a pessoa tenha fornecido o número e dado permissão para receber mensagens da sua empresa, e que pedidos para parar sejam respeitados. No checkout, um texto como “Vou receber mensagens sobre minha compra e meu acesso pelo WhatsApp” cobre as mensagens transacionais. Para ofertas, peça um opt-in separado. A LGPD (Lei 13.709/2018) também se aplica ao telefone e ao e-mail do comprador; avalie com o seu jurídico a base legal e o prazo de guarda. Este artigo não substitui orientação jurídica. Veja como montar uma lista opt-in.

Como fazer com a Vectalk

Na Vectalk, você cria os templates com POST /templates, envia com POST /messages (type: "template", com botão de URL dinâmica) e recebe as respostas dos alunos no webhook registrado com POST /webhooks, no mesmo formato da Meta. A Vectalk usa a Cloud API oficial e paga a Meta por você, então você não precisa cadastrar cartão na Meta. Veja a documentação de templates e crie sua conta.

Perguntas frequentes

Posso mandar o acesso por texto livre em vez de template?

Só se o comprador tiver falado com você pelo WhatsApp nas últimas 24 horas. Na maioria das compras, não falou, então o acesso precisa ir por template.

Lembrete de boleto é utilidade ou marketing?

Um lembrete neutro de pagamento de um pedido que o cliente gerou tende a ser utilidade. Se tiver urgência artificial, bônus ou desconto, vira marketing. A Meta tem a palavra final.

E carrinho abandonado?

A Meta classifica lembretes de carrinho como marketing. Use template de marketing e envie só para quem deu opt-in.

A plataforma mandou o mesmo postback duas vezes. O aluno vai receber dois acessos?

Só se o seu sistema não tratar repetição. Guarde o ID do pedido e o evento, e ignore o que já foi processado.

Preciso de um número só para o produto?

Não é obrigatório. O número oficial da marca pode cuidar de acesso e suporte. Se você tem várias marcas, números separados ajudam na organização e no nome de exibição.


Fontes oficiais consultadas em 25/10/2026: Diretrizes de categorias de template, Templates de utilidade, Preços, Limites de mensagens, Política de Mensagens do WhatsApp Business, Lei 13.709/2018 (LGPD), Documentação da API da Vectalk.

Integre o WhatsApp oficial ao seu sistema

A Vectalk entrega a Cloud API da Meta com os mesmos payloads e webhooks, um token para todas as contas e documentação completa.