Pular para conteúdo

Rede de Representantes

Prospecção automatizada de representantes comerciais para a Bepex via email (Amazon SES) e WhatsApp (Chatwoot), com cadência multi-toque controlada em PostgreSQL. Roda no n8n self-hosted.

O que é

A Bepex quer expandir sua rede de representantes comerciais no Brasil inteiro, prospectando profissionais que já vendem revestimentos para fachadas e têm relacionamento com arquitetos e construtoras. O sistema automatiza a cadência de contato, com gancho de venda "aumento de ticket médio" ao trabalhar com a linha Bepex.

Cadência vigente: email dia 0/3 → WhatsApp dia 7/14 → WhatsApp catálogo dia 21 → email catálogo dia 22.

Status atual

⛔ PAUSADO — Dispatcher e Worker desativados em 2026-07-03 (inbox 63 / slot B desconectou de novo). Reativar só com o go do Rafael, e só depois de o WhatsApp do slot B reconectar de forma estável.

Item Estado
Workflows n8n Dispatcher + Worker desativados (2026-07-03)
Envio de email (SES) Funcional (sem processar — Worker inativo)
WhatsApp slot A (inbox 62) Funcional (sem processar — Worker inativo)
WhatsApp slot B (inbox 63) Instável — desconectou novamente em 2026-07-03
Slot C Removido em 2026-06-03 (Prospecção 3 / inbox 64 liberada; 38 leads ex-slot C redistribuídos A/B)
Opt-out WF-Rep-Optout ATIVO — link de descadastro nos emails dias 0, 3 e 22
Camada de IA de variação (WhatsApp) Construída (2026-07-07), Worker deixado inativo
Banco PostgreSQL, tabela representantes (~242 leads; 3 opted_out)

Detalhes do estado da fila e do incidente inbox 63 em historico.md.

Bug estrutural conhecido (sem solução no stack atual)

Inboxes 62/63 são Channel::Api e não propagam delivery receipts. O Worker vê HTTP 200 do Chatwoot e avança sequence_day mesmo quando a bridge de WhatsApp não entrega — não há como detectar não-entrega. Foi a causa do incidente inbox 63 (jun/2026). Se o WhatsApp de um slot cair, os leads avançam a cadência sem receber as mensagens.

Decisões arquiteturais importantes

  1. NÃO usa Pipedrive. Contatos ficam 100% no PostgreSQL para não poluir o CRM (decisão Rafael, 2026-04-01).
  2. Rotação de remetentes (sender slots) atribuída round-robin no import; cada contato mantém o mesmo remetente em toda a sequência. Escalável para N slots.
  3. Domínio separado para prospecção: emails saem de @bepexmkt.com.br (não @bepex.com.br) para isolar reputação de envio. DKIM/SPF separados.
  4. Encaminhamento centralizado: respostas dos slots redirecionam para andrei@bepexmkt.com.br — caixa única de monitoramento.
  5. SES com raw body (workaround obrigatório do n8n — ver referencia-tecnica.md § SES).
  6. Dispatcher + Worker (desde 2026-05-13): execução monolítica gerava runs de 8h que excediam o timeout do n8n. Refatorado para Dispatcher (verifica pendentes, dispara) + Worker (processa 1 lead, wait aleatório, self-trigger via webhook). Execuções curtas (~30s) e independentes.
  7. Fallback de canal: lead sem email pula os dias de email; sem telefone pula os de WhatsApp; sem nenhum contato é marcado completed.
  8. Camada de IA (WhatsApp, 2026-07-07): varia o texto de cada WhatsApp com IA leve (anti-ban) + cap de volume por número, com fallback garantido para o template estático.

Frentes paralelas

Além da prospecção fria (motor SES+WhatsApp, base PostgreSQL), o projeto tem frentes de descoberta e reengajamento que não usam o banco representantes:

  • Reengajamento no Pipedrive (2026-07-03): garimpa representantes antigos já cadastrados no Pipedrive (filtros salvos Pessoas 139534 / Negócios 139535). Fonte é o Pipedrive, não o banco. Ver referencia-tecnica.md § Filtros Pipedrive.
  • Reativação de respondentes WhatsApp (2026-07-03/04): auditoria de todas as conversas resolvidas dos inboxes 62/63 para achar quem respondeu de verdade. Métricas e entregável em historico.md.
  • Sales Navigator (2026-07-07): descoberta de novos reps via LinkedIn Sales Navigator (só levantamento de nomes; contato enriquecido depois no DataAdv). Queries, geoIDs e quirks em referencia-tecnica.md § Sales Navigator.

Quem faz o quê

Pessoa Papel
Rafael Arquiteto e operador da automação, consultor externo da Bepex
Andrei Mazer Consultor comercial da Bepex; monitora respostas em andrei@bepexmkt.com.br e no Chatwoot (persona dos envios)
Enríco (dono da Bepex) Aprovação de textos, contratos e validação dos dados financeiros
Gustavo Sanders Reaborda leads das listas de reativação/reengajamento

Como operar no dia a dia

Importar novos leads

  1. Preparar CSV com colunas: nome, email, telefone, empresa, cidade, estado, linkedin_url, notas.
  2. Gerar SQL INSERT com round-robin A/B e next_action_date = CURRENT_DATE.
  3. Executar via workflow utilitário _TEMP_Probe (nó Postgres Execute Query). A coluna email não tem constraint UNIQUE — não usar ON CONFLICT (email).
  4. Alternativa: WF-Rep-Import (manual trigger, puxa Google Sheet publicada como CSV).

Monitorar

  • Dispatcher roda 2x/dia (8h e 14h, seg-sáb): só verifica se há leads e dispara o Worker.
  • Worker roda N vezes/dia (1 lead por execução, ~30s), auto-pausa fora do horário comercial (8h–18h BRT) e aplica label ia-atendendo em toda conversa WhatsApp criada.
  • Respostas: tarefa responder-prospects-representantes busca conversas com label ia-atendendo que tiveram resposta e envia follow-up como "Andrei Mazer", convidando para o Calendly.

Pausar/retomar um lead

UPDATE representantes SET sequence_status = 'paused' WHERE id = X;                                  -- pausar
UPDATE representantes SET sequence_status = 'active', next_action_date = CURRENT_DATE WHERE id = X;  -- retomar

Adicionar novo remetente (slot D, E, …)

  1. Criar caixa de email no Hostinger (bepexmkt.com.br).
  2. Criar inbox no Chatwoot (chat.bepex.com.br, account 2) se for WhatsApp.
  3. Atualizar o array SENDERS nos dois Code nodes (Import e Worker) — ver referencia-tecnica.md.

Índice da subpasta

Documento Conteúdo
README.md (este) Visão executiva, status, decisões-chave, como operar
arquitetura.md Fluxo nó-por-nó do Dispatcher + Worker + Import + Optout, banco de dados, integrações, camada de IA
referencia-tecnica.md IDs, credenciais (nomes), SQL, configs de sender slots, padrão SES, filtros Pipedrive, Sales Navigator, camada de IA
historico.md Cronologia completa de criação, bugs, fixes e decisões
ARQUIVOS.md Manifesto dos anexos (protótipos, PDFs, CSVs, contratos, exports) que vivem no Drive