DEV Community

coda
coda

Posted on

A Engenharia por trás dos "Grupos de Oferta": Construindo uma Máquina de Vendas Autônoma com Node.js, IA e WhatsApp

Você já entrou naqueles grupos de "Achadinhos da Shopee" ou "Promoções Amazon" e se perguntou: como esse admin consegue postar 50 ofertas por dia, com link traqueado, imagem formatada e um texto persuasivo, sem dormir?

Spoiler: Ele não consegue.

A maioria desses "super afiliados" não são pessoas operando celulares freneticamente. São scripts rodando em servidores (provavelmente um VPS de $5), orquestrando uma arquitetura de eventos complexa.

Como desenvolvedor, sempre fui fascinado pela interseção entre código e dinheiro. Então, decidi "engenhar reverso" (e construir) a stack técnica que transforma um link cru em uma máquina de comissões passiva.

Hoje, vou abrir a caixa preta de como funciona a automação técnica de uma mina de ouro de afiliados: do Scraping à Entrega via WhatsApp.

**

A Arquitetura da "Money Machine" 🏗️

**
Para automatizar 100% do processo, precisamos de 4 microsserviços atuando em conjunto:

  1. O Caçador (The Hunter): Monitora preços e novas ofertas via Scraping ou API.

  2. O Conversor (The Broker): Transforma links comuns em links de afiliado (Deep Linking).

  3. O Copywriter (The Brain): Uma IA que analisa o produto e gera o texto de venda.

  4. O Entregador (The Courier): A automação "grey hat" do WhatsApp.

Vamos quebrar cada etapa.

1. O Caçador: Monitorando oportunidades
O primeiro passo é saber o que postar. Existem duas formas de fazer isso: a limpa e a bruta.

A forma limpa é usar as APIs oficiais (Amazon Product Advertising API, por exemplo). Mas a maioria dos "hackers" de afiliados prefere a abordagem bruta: Scraping.

Usando Python (BeautifulSoup) ou Node.js (Puppeteer), o bot varre listas de "Best Sellers" ou monitora quedas de preço em tempo real.

// Exemplo simplificado de um monitor com Puppeteer
const monitorPrice = async (url) => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto(url);

  const price = await page.$eval('.price-tag', el => el.innerText);
  const title = await page.$eval('.product-title', el => el.innerText);

  if (isGoodDeal(price)) {
    triggerPipeline({ title, price, url });
  }
};
Enter fullscreen mode Exit fullscreen mode

2. O Conversor: Gerando o Cash 💸
Aqui é onde a mágica financeira acontece. Não adianta postar o link shopee.com.br/produto. Você precisa do seu parâmetro de rastreio.

A maioria das plataformas fornece endpoints para Deep Linking. O script recebe a URL crua, bate na API da plataforma de afiliados e retorna o link encurtado com seu ID.

Desafio técnico: Algumas APIs têm rate limits agressivos. Implementar filas (Redis/BullMQ) aqui é essencial para não perder a comissão porque a API time-outou.

3. O Copywriter: A IA Persuasiva 🤖
Antigamente, os bots usavam templates prontos: "Olha essa oferta: [Nome] por [Preço]". Isso converte pouco e parece spam.

Hoje, a stack moderna integra a OpenAI API (GPT-4o ou gpt-4o-mini para economizar). O script envia o título do produto e a descrição técnica, e pede para a IA:

Criar um senso de urgência ("Últimas unidades!").

Listar benefícios em bullet points (mais legível no WhatsApp).

Adicionar emojis relevantes.

O payload para a API fica mais ou menos assim:

const prompt = `
Atue como um especialista em ofertas. Crie um texto curto para WhatsApp sobre o produto: "${productTitle}".
Preço original: ${oldPrice}. Preço atual: ${newPrice}.
Use emojis. Crie urgência. O link é: ${affiliateLink}.
`;
Enter fullscreen mode Exit fullscreen mode

A IA transforma uma ficha técnica chata em:

"🚨 BAIXOU MUITO!

👟 Tênis Nike Revolution 6 De: ~R$ 399~ Por: R$ 249,90 🔥

✅ Super leve pra correr ✅ Amortecimento reforçado

🏃‍♂️ Corre antes que acabe: [Link]"

4. O Entregador: WhatsApp Automation (A Zona Cinza) 💀
Aqui é onde a maioria dos devs trava. A API oficial do WhatsApp (Cloud API) é cara e proíbe marketing agressivo. A solução? Bibliotecas open-source que simulam um cliente web.

No ecossistema Node.js, a biblioteca Baileys é a rainha. Ela conecta via WebSocket, simula o pareamento do QR Code e permite enviar mensagens como se fosse um humano.

Para evitar o temido "Ban Hammer" do WhatsApp, a implementação precisa de cuidados:

Atraso aleatório (Jitter): Nunca envie mensagens em intervalos exatos (ex: a cada 60s). Varie entre 45s e 120s.

Typing Presence: Simule que está "digitando" antes de enviar.

Rotação de Sessões: Em operações grandes, usa-se um "farm" de números.

// Snippet usando Baileys para enviar a oferta
const sendMessage = async (jid, content) => {
    await sock.sendPresenceUpdate('composing', jid);
    await delay(getRandomInt(2000, 5000)); // Delay "humano"

    await sock.sendMessage(jid, { 
        image: { url: content.imageUrl }, 
        caption: content.aiCopy 
    });
}
Enter fullscreen mode Exit fullscreen mode

**

O Resultado

**
Quando você une esses quatro pontos, você tem um sistema que roda 24/7, encontrando promoções enquanto você dorme e pingando milhares de pessoas com ofertas irresistíveis escritas por IA.

Tecnicamente, é um projeto fascinante de orquestração de APIs e automação.

Mas... Code is Cheap, Community is Gold
Construir o robô é a parte divertida para nós, devs. Mas a realidade é que o bot não serve de nada se você não tiver audiência. O verdadeiro desafio não é o código Python ou Node.js, mas sim:

Como encher esses grupos de pessoas reais?

Como evitar que o grupo vire um deserto de spam?

Quais as regras para manter o engajamento alto?

Se você está apenas procurando onde divulgar seus links ou entender a dinâmica desses grupos, você pode buscar por agregadores de grupos de Whatsapp que listam grupos de vendas no Whatsapp e ver com seus próprios olhos como isso acontece

Top comments (0)