Tema
Pagamentos e vendas
O Tesseract só conta uma venda quando o sistema de pagamento confirma. O site de vendas avisa o bot por webhook assinado e, opcionalmente, o bot confere direto na Safefy Pay.
Como o bot fica sabendo de uma venda
Há dois caminhos, e eles se completam. A mesma venda nunca conta duas vezes.
1. Aviso do site (principal)
Quando qualquer gateway confirma o pagamento, o site chama o bot:
POST https://app.tesseract-ai.com.br/api/webhooks/payments- cabeçalhos
x-tesseract-timestamp(segundos) ex-tesseract-signature: sha256=<HMAC-SHA256(segredo, "<timestamp>.<corpo>")>; o bot recusa se o horário divergir mais de 5 minutos; - corpo:
{"event":"order.paid" | "order.refunded","order_id","amount_cents","currency","method","product_id","phone","utm_term","paid_at"}.
Para ligar, use o mesmo segredo em Configurações → Pagamentos do bot e na aba Bot WhatsApp do admin do site, onde também vai a URL. A aba do site tem Reenviar ao bot para vendas que caíram com o bot fora do ar.
2. Consulta direta na Safefy (opcional)
Em Configurações → Safefy Pay do bot, cole a Public Key e a Secret Key da Safefy (painel da Safefy → Credenciais de API). Elas ficam cifradas e o painel mostra só os 4 últimos caracteres. Com elas, o bot (só leitura):
- consulta a Safefy a cada 5 minutos e registra as transações pagas (
completed) e os reembolsos (refunded); - usa o
externalIdda transação (o código do pedido do site) para que a venda avisada pelo site e a achada na Safefy contem uma vez só; - quando chega ao bot um aviso da Safefy sem a assinatura do site, vai conferir aquela transação na Safefy. O conteúdo do aviso nunca é aceito como prova de pagamento;
- conta como venda um pagamento achado mais de 6 h depois, mas não manda a mensagem de pagamento confirmado.
Testar Safefy confere as chaves e lista as últimas transações. Conferir pagamentos agora roda a consulta na hora. O ambiente (Produção ou Sandbox) vem do prefixo das chaves (pk_production_, pk_sandbox_).
Como a venda é ligada à conversa
- Pelo código da conversa que vai no link do checkout (
utm_term), visível no topo da conversa como "Código de rastreio". - Se não houver código, pelo telefone do comprador, com ou sem o nono dígito.
Uma venda achada sem conversa fica registrada à parte e não entra na conversão do bot. Se depois o site avisar a mesma venda com o código da conversa, ela passa para a conversa.
O que a venda faz no bot
- a conversa vai para Venda confirmada; follow-ups, checkout e remarketing param para ela;
- roda o fluxo com gatilho Pagamento confirmado (pós-compra) ou, sem ele, a mensagem de pagamento de Configurações, só dentro da janela de 24 h;
- no reembolso, a conversa volta para a etapa em que estava, se não houver outra venda paga.