Chatwoot + WhatsApp com Evolution API
Integrar o Chatwoot com WhatsApp via Evolution API permite receber e responder mensagens do WhatsApp diretamente no painel do Chatwoot, junto com outros canais (e-mail, Instagram, Telegram). Toda a stack roda na sua VPS com Docker — sem mensalidade por canal ou limite de conversas.
Arquitetura da integração
A Evolution API atua como bridge entre o WhatsApp Web e o Chatwoot. Ela recebe as mensagens do WhatsApp via WebSocket e as envia para o Chatwoot via webhook HTTP:
# Fluxo de mensagens:
# WhatsApp → Evolution API → webhook → Chatwoot → agente
# Fluxo de resposta:
# Agente no Chatwoot → API Chatwoot → Evolution API → WhatsApp
# Pré-requisitos na mesma VPS:
# - Chatwoot rodando e acessível (HTTPS obrigatório)
# - Evolution API rodando e acessível (HTTPS obrigatório)
# - Número WhatsApp disponível para escanear o QR codeCriar inbox do WhatsApp no Chatwoot
No painel do Chatwoot, crie uma inbox do tipo "API Channel" para receber as mensagens da Evolution API:
# No Chatwoot:
# Settings → Inboxes → Add Inbox → API
# Preencher:
# Channel Name: WhatsApp Principal
# Webhook URL: (deixar vazio por enquanto)
# Após criar, anote:
# - Inbox ID (aparece na URL: /app/accounts/1/settings/inboxes/INBOX_ID)
# - API Access Token (Settings → Integrations → API → Access Token)Configurar a Evolution API para o Chatwoot
Na Evolution API, crie uma instância do WhatsApp e configure a integração com o Chatwoot:
# Criar instância na Evolution API
curl -X POST https://evolution.seudominio.com.br/instance/create \
-H "apikey: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"instanceName": "whatsapp-principal",
"integration": "WHATSAPP-BAILEYS",
"chatwootAccountId": 1,
"chatwootToken": "SEU_ACCESS_TOKEN_CHATWOOT",
"chatwootUrl": "https://chat.seudominio.com.br",
"chatwootInboxId": INBOX_ID
}'
# Resposta inclui instanceId — anote para os próximos passosConectar o número via QR Code
Após criar a instância, gere o QR Code e escaneie com o WhatsApp:
# Obter QR Code (base64)
curl https://evolution.seudominio.com.br/instance/connect/whatsapp-principal \
-H "apikey: SUA_API_KEY"
# A resposta traz o campo "qrcode.base64"
# Acesse a interface web da Evolution API para escanear visualmente:
# https://evolution.seudominio.com.br/manager
# Verificar status da conexão
curl https://evolution.seudominio.com.br/instance/connectionState/whatsapp-principal \
-H "apikey: SUA_API_KEY"
# state: "open" = conectadoTestar a integração
Com a instância conectada, envie uma mensagem de teste para o número WhatsApp. A mensagem deve aparecer como uma nova conversa no Chatwoot:
# Enviar mensagem de teste via API
curl -X POST https://evolution.seudominio.com.br/message/sendText/whatsapp-principal \
-H "apikey: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"number": "5511999999999",
"text": "Teste de integração Chatwoot + Evolution API"
}'
# Verificar no Chatwoot:
# A conversa deve aparecer em Conversations com o canal "WhatsApp Principal"$ runstack deploy --plan starter
Não quer configurar manualmente?
Não quer configurar manualmente? Implante o Chatwoot em menos de 3 minutos com a Runstack. Infraestrutura da OPEN DATACENTER, com servidores no Brasil.