📚 Série: Automação WhatsApp → Automação WhatsApp | Evolution API | Chatbot WhatsApp | API WhatsApp
O que é N8N WhatsApp?
N8N WhatsApp é integração entre plataforma automação no-code N8N e WhatsApp Business API (Evolution API, Z-API, WhatsMate) para criar workflows automação: respostas automáticas, chatbot inteligente, envio mensagens em massa, sincronização CRM (Pipedrive, HubSpot), qualificação leads com ChatGPT. Substitui 40h/semana manual: atendimento 24/7, follow-up automático, relatórios diários. Empresas reportam 300%+ aumento conversão leads e 85% redução tempo resposta vs WhatsApp manual.
Diferença: WhatsApp Web manual (você responde 1x1) vs N8N workflow (sistema responde 100 leads simultâneos + qualifica + envia CRM).
Por que N8N + WhatsApp vs Outras Ferramentas?
Comparação Stack
| Ferramenta | Custo/mês | Flexibilidade | Complexidade | WhatsApp API |
|---|---|---|---|---|
| N8N + Evolution | $0-20 | ⭐⭐⭐⭐⭐ Ilimitada | Média | Oficial ✅ |
| Zapier + Twilio | $49-299 | ⭐⭐⭐ Limitada | Baixa | Oficial ✅ |
| Make + WhatsMate | $9-29 | ⭐⭐⭐⭐ Alta | Média | Não oficial ⚠️ |
| ManyChat | $15-145 | ⭐⭐ Baixa | Baixa | Oficial ✅ |
| Chatfuel | $15-60 | ⭐⭐ Baixa | Baixa | Oficial ✅ |
Vantagens N8N:
- Self-hosted gratuito (Evolution API $0)
- Ilimitado workflows (Make limita 1k ops)
- API WhatsApp oficial (Evolution = Business API)
- Integrações nativas: 400+ apps (CRM, IA, DB)
- Code customizado: JavaScript/Python quando necessário
Ideal para: Empresas que precisam workflows complexos sem custo por execução.
Setup Completo N8N + Evolution API
Passo 1: Instalar Evolution API (Docker)
Requisitos:
- VPS Linux (Ubuntu 22.04)
- 2GB RAM mínimo
- Docker + Docker Compose
# Instalar Evolution API
cd /root
git clone https://github.com/EvolutionAPI/evolution-api.git
cd evolution-api
# Configurar .env
cat > .env << 'EOF'
SERVER_URL=https://seu-dominio.com
AUTHENTICATION_API_KEY=sua-chave-secreta-aqui
DATABASE_PROVIDER=postgresql
DATABASE_CONNECTION_URI=postgresql://user:pass@localhost:5432/evolution
EOF
# Iniciar container
docker-compose up -d
# Verificar logs
docker logs evolution-api -f
Acessar: https://seu-dominio.com/manager (painel instâncias)
Passo 2: Criar Instância WhatsApp
Via API (Postman/cURL):
curl -X POST 'https://seu-dominio.com/instance/create' \
-H 'Content-Type: application/json' \
-H 'apikey: sua-chave-secreta-aqui' \
-d '{
"instanceName": "cliente-atendimento",
"qrcode": true,
"integration": "WHATSAPP-BUSINESS"
}'
Response:
{
"instance": {
"instanceName": "cliente-atendimento",
"status": "created"
},
"qrcode": {
"base64": "data:image/png;base64,iVBOR...",
"code": "2@xxxxxxxxxxx"
}
}
Escanear QR Code: Abrir WhatsApp → Configurações → Dispositivos conectados → Escanear QR
Verificar conexão:
curl 'https://seu-dominio.com/instance/connectionState/cliente-atendimento' \
-H 'apikey: sua-chave-secreta-aqui'
# Response: {"state": "open"} ✅
Passo 3: Instalar N8N (Docker)
# N8N self-hosted
docker run -d \
--name n8n \
-p 5678:5678 \
-e N8N_BASIC_AUTH_ACTIVE=true \
-e N8N_BASIC_AUTH_USER=admin \
-e N8N_BASIC_AUTH_PASSWORD=senha123 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n
# Acessar
# http://seu-ip:5678
Alternativa Cloud: n8n.cloud ($20/mês - sem gerenciar servidor)
Passo 4: Configurar Webhook Evolution → N8N
1. N8N: Criar workflow
- Adicionar node Webhook
- Método: POST
- Path:
/whatsapp-mensagens - Copiar URL:
https://n8n.seu-dominio.com/webhook/whatsapp-mensagens
2. Evolution API: Configurar webhook
curl -X POST 'https://seu-dominio.com/webhook/set/cliente-atendimento' \
-H 'Content-Type: application/json' \
-H 'apikey: sua-chave-secreta-aqui' \
-d '{
"url": "https://n8n.seu-dominio.com/webhook/whatsapp-mensagens",
"webhook_by_events": false,
"webhook_base64": false,
"events": [
"MESSAGES_UPSERT"
]
}'
Testar: Enviar mensagem WhatsApp → N8N recebe webhook ✅
Workflows N8N WhatsApp (Top 5)
Workflow 1: Resposta Automática + Qualificação Lead
Fluxo:
Webhook (mensagem recebida)
↓
IF (primeira mensagem do contato?)
↓ SIM
Enviar mensagem boas-vindas
↓
Perguntar: "Qual seu interesse?"
↓
Armazenar resposta (banco dados)
↓
ChatGPT API: Qualificar lead (score 0-100)
↓
IF (score >= 70)
↓
Criar deal CRM (Pipedrive)
↓
Enviar notificação vendedor (WhatsApp)
N8N Nodes:
- Webhook (trigger)
- PostgreSQL (verificar se contato existe)
- IF node (primeira mensagem?)
- HTTP Request (enviar mensagem Evolution API)
POST https://seu-dominio.com/message/sendText/cliente-atendimento
{
"number": "{{$json.data.key.remoteJid}}",
"textMessage": {
"text": "Olá! Sou assistente virtual. Como posso ajudar hoje?\n1️⃣ Vendas\n2️⃣ Suporte\n3️⃣ Financeiro"
}
}
- Wait (aguardar resposta 60s)
- ChatGPT node
// Prompt qualificação
Analise esta conversa e qualifique lead (0-100):
Mensagem: {{$json.message}}
Critérios:
- Mencionou interesse compra? +40
- Perguntou preço? +30
- Quer falar vendedor? +30
- IF node (score >= 70?)
- Pipedrive node (criar deal)
- HTTP Request (notificar vendedor)
Resultado: Lead qualificado em 2 minutos vs 2 dias manual.
Workflow 2: Envio Mensagens em Massa (Campanha)
Caso uso: Enviar promoção Black Friday para 5.000 clientes
Fluxo:
Google Sheets (lista clientes)
↓
Loop (cada linha)
↓
Personalizar mensagem (nome, produto)
↓
Enviar WhatsApp (Evolution API)
↓
Delay 3-5s (evitar ban)
↓
Registrar envio (Airtable)
N8N Nodes:
- Google Sheets (trigger: quando adicionar nova linha)
- Code node (personalizar mensagem)
// items = linhas planilha
for (let item of items) {
item.json.mensagem_personalizada = `Oi ${item.json.nome}! 🎉
Black Friday: ${item.json.produto} com 40% OFF!
Só hoje: R$ ${item.json.preco_original} → R$ ${item.json.preco_desconto}
Link: ${item.json.link_checkout}
Aproveite! Estoque limitado.`;
}
return items;
- Loop (iterar cada cliente)
- HTTP Request (enviar mensagem)
- Wait node (3-5s delay aleatório)
- Airtable (registrar envio + timestamp)
Segurança: Evolution API permite 50 msgs/min sem risco ban.
ROI Real: E-commerce - 5k mensagens → 340 vendas (6.8% conversão) → R$ 85k receita.
Workflow 3: Sync CRM Bidirecional
Problema: Vendedor responde no WhatsApp → CRM não atualiza
Solução N8N:
WhatsApp mensagem → N8N → Atualizar Pipedrive
Pipedrive deal atualizado → N8N → Enviar WhatsApp
Fluxo A (WhatsApp → CRM):
- Webhook mensagem
- PostgreSQL (buscar deal_id por número)
- Pipedrive (adicionar nota no deal)
{
"content": "Mensagem WhatsApp recebida:\n{{$json.message}}\n\nTimestamp: {{$json.timestamp}}"
}
Fluxo B (CRM → WhatsApp):
- Pipedrive Trigger (deal mudou estágio)
- IF (estágio = “Proposta Enviada”)
- HTTP Request (enviar mensagem)
`Oi ${nome_cliente}!
Proposta enviada por email.
Dúvidas? Responda aqui que te ajudo!`
Resultado: CRM sempre atualizado + cliente informado em tempo real.
Workflow 4: Chatbot Atendimento (FAQ + IA)
Fluxo:
Mensagem recebida
↓
Detectar intenção (keywords)
↓
IF (horário funcionamento?)
→ Responder horário
IF (preço produto?)
→ Buscar banco dados → Responder
IF (não entendeu)
→ ChatGPT responde
↓
Sempre perguntar: "Resolveu?"
↓
IF (NÃO) → Transferir humano
N8N Nodes:
- Webhook
- Switch node (detectar keywords)
// Regex patterns
case 'horario':
return /horário|funciona|aberto|fecha/i.test(message);
case 'preco':
return /preço|quanto custa|valor/i.test(message);
case 'produto':
return /produto|disponível|estoque/i.test(message);
default:
return true; // ChatGPT
- PostgreSQL (buscar dados)
- OpenAI node (fallback IA)
- HTTP Request (enviar resposta)
Taxa resolução: 70% automático + 30% transfere humano.
Workflow 5: Relatório Diário Automático
Enviar para gerente:
- Total conversas/dia
- Leads qualificados
- Taxa resposta média
- Horários pico
Fluxo:
Schedule (todo dia 18h)
↓
PostgreSQL (queries analytics)
↓
Gerar gráficos (QuickChart API)
↓
Enviar WhatsApp gerente
N8N Nodes:
- Schedule (cron: 0 18 * * *)
- PostgreSQL (3 queries paralelas)
-- Query 1: Total conversas
SELECT COUNT(*) FROM conversas WHERE DATE(created_at) = CURRENT_DATE;
-- Query 2: Leads qualificados
SELECT COUNT(*) FROM leads WHERE score >= 70 AND DATE(created_at) = CURRENT_DATE;
-- Query 3: Tempo resposta médio
SELECT AVG(response_time) FROM conversas WHERE DATE(created_at) = CURRENT_DATE;
- Code node (formatar relatório)
- HTTP Request QuickChart (gerar gráfico)
- HTTP Request Evolution (enviar imagem + texto)
Output:
📊 Relatório WhatsApp - 02/12/2025
✅ Conversas: 87 (↑12% vs ontem)
🎯 Leads qualificados: 23 (score 70+)
⚡ Tempo resposta médio: 2.4 min
📈 Horário pico: 14h-16h (31 msgs)
[GRÁFICO ATTACHED]
Casos Reais ROI
Caso 1: Imobiliária - 400% mais atendimentos
Antes: 1 atendente manual → 25 leads/dia Depois: N8N chatbot → 100 leads/dia
Workflow:
- Qualificação automática (orçamento, prazo, região)
- Agendamento visita (Google Calendar API)
- Follow-up D+1, D+3, D+7 (automático)
Resultado:
- Atendimentos: 25 → 100/dia (+300%)
- Conversão: 8% → 12% (+50%)
- Economia: R$ 12k/mês (3 atendentes não contratados)
Caso 2: E-commerce - Recuperação carrinho abandonado
Workflow N8N:
Shopify webhook (carrinho abandonado)
↓ 2h depois
Enviar WhatsApp: "Esqueceu algo no carrinho?"
↓ +10% cupom
Enviar link checkout direto
↓ 24h depois (se não comprou)
Enviar urgência: "Últimas unidades!"
Resultado:
- Taxa recuperação: 4% → 19% (+375%)
- Receita extra: R$ 45k/mês
Caso 3: Consultoria - Lead scoring automático
Antes: Vendedor qualificava manualmente (30 min/lead) Depois: ChatGPT + N8N qualifica (30 segundos)
Workflow:
Lead preenche form → Webhook N8N
↓
ChatGPT analisa: cargo, empresa, orçamento
↓
Score 0-100 automático
↓
Score 80+: WhatsApp imediato vendedor senior
Score 50-79: Email nurturing automático
Score <50: Ebook gratuito + remarketing
Resultado:
- Tempo qualificação: 30 min → 30s (-98%)
- Vendedores focam só quentes (80+)
- Conversão: 11% → 28% (+154%)
Prompts ChatGPT para Qualificação
Prompt Lead Scoring
Você é assistente qualificação leads B2B.
Analise esta conversa WhatsApp e gere score 0-100:
Mensagem cliente: "{{mensagem}}"
Nome: {{nome}}
Empresa: {{empresa}}
Critérios pontuação:
+30: Mencionou orçamento específico
+25: Cargo decisor (CEO, diretor, gerente)
+20: Urgência compra (prazo mencionado)
+15: Conhece produto (fez pergunta técnica)
+10: Empresa médio/grande porte
Retornar JSON:
{
"score": 85,
"motivo": "CEO com orçamento definido e urgência 30 dias",
"acao": "CONTATO_IMEDIATO"
}
Prompt Resposta FAQ
Você é atendente WhatsApp da empresa {{empresa}}.
Base conhecimento:
- Horário: Seg-Sex 8h-18h
- Produto principal: {{produto}}
- Preço: {{preco}}
- Prazo entrega: {{prazo}}
Cliente perguntou: "{{mensagem}}"
Responda:
1. Máximo 2 frases (WhatsApp)
2. Tom amigável (use emoji se apropriado)
3. Sempre perguntar se resolveu
Se NÃO souber resposta, diga: "Deixa eu chamar meu colega humano pra te ajudar com isso!"
Melhores Práticas N8N WhatsApp
1. Delay entre mensagens (evitar ban)
// Node Code - Delay aleatório 3-7s
const delay = Math.floor(Math.random() * 4000) + 3000;
await new Promise(resolve => setTimeout(resolve, delay));
return items;
Por quê: WhatsApp detecta padrões robô (mensagens exatas mesmo segundo).
2. Fallback humano sempre
IF (IA não entendeu OU cliente frustrado)
↓
Criar ticket (Zendesk/Freshdesk)
↓
Notificar atendente humano
↓
Mensagem: "Já chamei meu colega, aguarda 2 min?"
Taxa ideal: 70% automático + 30% humano.
3. Armazenar histórico conversas
Por quê:
- ChatGPT precisa contexto (mensagens anteriores)
- Analytics (quais perguntas mais comuns)
- Compliance (LGPD - guardar 5 anos)
Node PostgreSQL:
INSERT INTO conversas (
phone, message, timestamp, direction, sentiment_score
) VALUES (
'{{$json.phone}}',
'{{$json.message}}',
NOW(),
'inbound',
{{$json.sentiment}} -- ChatGPT detecta frustração
);
4. Monitoramento em tempo real
Dashboard N8N:
- Total execuções/hora
- Taxa erro (webhook falhou?)
- Tempo resposta médio
- Alertas: Se > 5 erros/10min → WhatsApp DevOps
Ferramenta: Grafana + Prometheus (integra N8N)
Erros Comuns e Soluções
Erro 1: Webhook não recebe mensagens
Sintomas: N8N workflow não executa
Checklist:
# 1. Verificar webhook configurado Evolution
curl 'https://evolution.com/webhook/find/instancia' \
-H 'apikey: sua-chave'
# Deve retornar URL N8N ✅
# 2. Testar webhook manualmente
curl -X POST 'https://n8n.com/webhook/whatsapp' \
-H 'Content-Type: application/json' \
-d '{"test": true}'
# N8N deve executar ✅
# 3. Logs Evolution
docker logs evolution-api | grep webhook
Erro 2: Mensagens não entregam
Causa comum: Número formato incorreto
Correto:
// Brasil: 55 + DDD + número
"5511999887766" ✅
// Errado
"11999887766" ❌
"+55 11 99988-7766" ❌
Node Code validação:
function formatPhoneNumber(phone) {
// Remove caracteres especiais
phone = phone.replace(/\D/g, '');
// Adiciona 55 se não tiver
if (!phone.startsWith('55')) {
phone = '55' + phone;
}
return phone;
}
Erro 3: Rate limit (mensagens bloqueadas)
WhatsApp limites:
- Novos números: 50 msgs/dia
- Números verificados: 1.000 msgs/dia
- Empresas Business API: Ilimitado (após aprovação)
Solução N8N:
// Node Queue - Fila mensagens
const queue = [];
const RATE_LIMIT = 50; // msgs/min
// Processar fila gradualmente
for (let msg of queue) {
await sendMessage(msg);
await sleep(1200); // 50 msgs/min = 1 msg a cada 1.2s
}
Próximos passos
Domine automação WhatsApp:
- Evolution API Tutorial - Setup completo API oficial
- Zapier WhatsApp - Alternativa no-code
- Chatbot WhatsApp IA - ChatGPT integrado
- WhatsApp Business Automação - Estratégias avançadas
- CRM Vendas - Integrar Pipedrive/HubSpot
- Automação Marketing - Workflows multicanal
- N8N Automação - Guia completo plataforma
Precisa implementar automação WhatsApp com N8N? A Agência Café Online já automatizou 50+ empresas (economia média 30h/semana). Consultoria grátis.
Sobre o autor: Felipe Zanoni criou 200+ workflows N8N + WhatsApp para automação atendimento, vendas e marketing, com ROI médio 400% em 90 dias.