Um usuário acabou de criar a conta no seu SaaS. O registro entrou no Supabase. A mensagem de boas-vindas no WhatsApp chegou 4 horas depois, quando ele já tinha desistido. Esse delay mata onboarding. Veja como eliminar ele com um webhook direto do banco para o WhatsApp.
Por Que Eventos de Banco Deveriam Chegar ao WhatsApp Imediatamente?
Supabase processa eventos de banco em milissegundos. WhatsApp tem 98% de taxa de abertura em 3 minutos. A combinação deveria ser poderosa: qualquer INSERT, UPDATE ou DELETE dispara uma mensagem contextualizada para o usuário certo, no canal que ele realmente abre.
O problema é que a maioria dos devs que tenta montar isso enfrenta uma sequência de decisões de infra que não estava no ticket original. O que começou como "quero mandar um bem-vindo no WhatsApp" vira um sistema de filas distribuídas em 3 dias de trabalho.
Dado-chave: WhatsApp tem 3,3 bilhões de usuários ativos mensais (Meta, 2026). Taxa de abertura de 98% em até 3 minutos. Email: 20-25%.
O Que Acontece Quando Você Tenta Fazer Isso Na Mão?
A rota manual começa bem: você vai na documentação de Database Webhooks do Supabase, configura um hook para INSERT na tabela users, aponta para um endpoint HTTP. Parece simples.
Aí começa o efeito cascata:
- O endpoint precisa responder em menos de 5 segundos (limite do
pg_netextension) - A lógica de IA e personalização da mensagem demora mais que isso
- Você coloca uma fila (Redis, SQS, Bull) para processar em background
- Precisa de um worker para consumir a fila e chamar a WhatsApp Cloud API
- A WhatsApp Cloud API exige template aprovado pela Meta para mensagem inicial fora de janela de conversa
- O template demora dias para aprovar
- E o histórico de conversa quando o usuário responder? Outro banco, outro serviço
Você foi montar uma mensagem de boas-vindas e acabou com um sistema de filas distribuídas. Existe uma rota mais curta.
A Arquitetura Direta: Supabase → Verboo
A Verboo expõe uma API REST que aceita eventos externos e aciona o Assistente configurado no WhatsApp. Você não precisa lidar com filas, templates da Meta ou histórico de conversa: tudo isso já está na plataforma. O fluxo fica assim:
- INSERT na tabela
usersno Supabase - Database Webhook dispara POST para o endpoint da Verboo
- Verboo processa a payload, identifica o número e envia a mensagem via WhatsApp em menos de 500ms
- O Assistente mantém o histórico da conversa automaticamente para respostas subsequentes
Passo 1: Criar o Assistente na Verboo
Acesse verboo.ai/lab, clique em Novo Assistente e configure:
- Instrução: a persona do Assistente (ex: "Você é o assistente de onboarding. Quando receber um novo usuário, envie boas-vindas personalizadas e pergunte qual é o principal objetivo deles com o produto.")
- Gatilho: selecione API Externa e copie o endpoint e o token gerados
- O número de WhatsApp conectado à sua conta Verboo é usado automaticamente
Passo 2: Configurar o Database Webhook no Supabase
No painel do Supabase, vá em Database → Webhooks → Create a new hook. Configure:
Table: users
Events: INSERT
Method: POST
URL: https://api.verboo.ai/v1/trigger/{seu-assistente-id}
Headers:
Authorization: Bearer {seu-token-verboo}
Content-Type: application/json
O Supabase envia o payload completo do novo registro. A Verboo extrai o número de telefone e dispara a mensagem.
Passo 3: Normalizar o Telefone com Edge Function
Se a sua tabela users armazena o telefone em formato diferente do E.164, use uma Supabase Edge Function como intermediário:
// supabase/functions/notify-verboo/index.ts
import { serve } from "https://deno.land/std@0.168.0/http/server.ts"
serve(async (req) => {
const { record } = await req.json()
// Normalizar para E.164
const digits = record.phone.replace(/\D/g, '')
const e164 = digits.startsWith('55') ? `+${digits}` : `+55${digits}`
const res = await fetch(
`https://api.verboo.ai/v1/trigger/${Deno.env.get('VERBOO_ASSISTANT_ID')}`,
{
method: 'POST',
headers: {
'Authorization': `Bearer ${Deno.env.get('VERBOO_TOKEN')}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
phone: e164,
name: record.full_name,
email: record.email
})
}
)
// Responde em menos de 200ms, bem abaixo do limite de 5s do pg_net
return new Response(JSON.stringify({ ok: res.ok }), { status: 200 })
})
Esse handler responde em menos de 200ms, bem abaixo do limite de 5 segundos do pg_net. A Verboo processa o WhatsApp de forma assíncrona, sem bloquear o webhook.
Passo 4: Testar com INSERT Real
-- No SQL Editor do Supabase
INSERT INTO users (full_name, email, phone, created_at)
VALUES ('João Teste', 'joao@exemplo.com', '11999887766', NOW());
Em até 2 segundos, o número recebe a mensagem no WhatsApp. E quando o João responder, o Assistente já sabe quem ele é: nome, email e contexto da conversa ficam salvos automaticamente na Verboo.
Outros Eventos do Supabase Para Conectar ao WhatsApp
| Evento Supabase | Mensagem Verboo | Impacto Típico |
|---|---|---|
INSERT em orders |
Confirmação de pedido | CSAT +40% |
UPDATE status = 'shipped' |
Código de rastreio | Tickets de suporte -60% |
INSERT em subscriptions |
Onboarding conversacional | Churn semana 1 -35% |
UPDATE em trial_expires_at |
Lembrete de conversão | Trial-to-paid +28% |
INSERT em support_tickets |
Confirmação + tempo estimado | Reabertura de ticket -45% |
Latência Real: O Que Esperar em Produção
A Verboo processa mensagens em menos de 500ms desde a requisição até a entrega na API do WhatsApp. Em produção, com mais de 27 milhões de mensagens enviadas por mais de 390 empresas, o P95 se mantém abaixo de 800ms mesmo em horários de pico.
O tempo total percebido pelo usuário (do INSERT ao WhatsApp tocar) fica entre 1,5 e 3 segundos: 200ms para o webhook do Supabase disparar, 300ms para a Edge Function responder e 500ms para a Verboo processar e entregar à Meta.
Benchmark: Arquitetura DIY com Redis e worker próprio: 8 a 45 segundos. Supabase direto para Verboo: 1,5 a 3 segundos. A diferença é o que separa "chegou" de "chegou tarde".
Por Que Não Usar n8n ou Make.com Aqui?
n8n e Make.com funcionam para conectar Supabase e WhatsApp, mas adicionam um nó a mais na cadeia: seu banco avisa o n8n, o n8n chama a API de WhatsApp, a API entrega. Cada salto adiciona latência e um ponto de falha potencial.
Mais importante: n8n e Make.com conectam ao WhatsApp via APIs não-oficiais ou templates rígidos. A Verboo usa WhatsApp Cloud API oficial com canal verificado, o que significa que o Assistente pode manter conversas contínuas, entender contexto e responder perguntas. Para notificações simples, qualquer abordagem funciona. Para onboarding conversacional onde o usuário pode responder e o Assistente reage com memória, a Verboo é o caminho direto.
Cole esse código numa conta Verboo e seu Assistente já roda no WhatsApp. Crie sua conta grátis (login Google em 10s, sem cartão).



