N8N WhatsApp Tutorial: Guia Completo 2025

📚 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

FerramentaCusto/mêsFlexibilidadeComplexidadeWhatsApp API
N8N + Evolution$0-20⭐⭐⭐⭐⭐ IlimitadaMédiaOficial ✅
Zapier + Twilio$49-299⭐⭐⭐ LimitadaBaixaOficial ✅
Make + WhatsMate$9-29⭐⭐⭐⭐ AltaMédiaNão oficial ⚠️
ManyChat$15-145⭐⭐ BaixaBaixaOficial ✅
Chatfuel$15-60⭐⭐ BaixaBaixaOficial ✅

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:

  1. Webhook (trigger)
  2. PostgreSQL (verificar se contato existe)
  3. IF node (primeira mensagem?)
  4. 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"
  }
}
  1. Wait (aguardar resposta 60s)
  2. 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
  1. IF node (score >= 70?)
  2. Pipedrive node (criar deal)
  3. 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:

  1. Google Sheets (trigger: quando adicionar nova linha)
  2. 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;
  1. Loop (iterar cada cliente)
  2. HTTP Request (enviar mensagem)
  3. Wait node (3-5s delay aleatório)
  4. 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):

  1. Webhook mensagem
  2. PostgreSQL (buscar deal_id por número)
  3. Pipedrive (adicionar nota no deal)
{
  "content": "Mensagem WhatsApp recebida:\n{{$json.message}}\n\nTimestamp: {{$json.timestamp}}"
}

Fluxo B (CRM → WhatsApp):

  1. Pipedrive Trigger (deal mudou estágio)
  2. IF (estágio = “Proposta Enviada”)
  3. 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:

  1. Webhook
  2. 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
  1. PostgreSQL (buscar dados)
  2. OpenAI node (fallback IA)
  3. 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:

  1. Schedule (cron: 0 18 * * *)
  2. 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;
  1. Code node (formatar relatório)
  2. HTTP Request QuickChart (gerar gráfico)
  3. 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:

  1. Evolution API Tutorial - Setup completo API oficial
  2. Zapier WhatsApp - Alternativa no-code
  3. Chatbot WhatsApp IA - ChatGPT integrado
  4. WhatsApp Business Automação - Estratégias avançadas
  5. CRM Vendas - Integrar Pipedrive/HubSpot
  6. Automação Marketing - Workflows multicanal
  7. 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.