Startup de IA conversacional
Plataforma omnichannel com IA e WhatsApp
Empresas conectavam o WhatsApp delas à plataforma e passavam o contexto do negócio. A IA respondia os clientes dessas empresas, buscava dados em sistemas externos quando precisava, e as empresas disparavam campanhas para milhares de contatos.
Em 30 segundos
- Full-stack numa startup que atendia os clientes de outras empresas com IA no WhatsApp.
- Construí do zero o sistema de campanhas em massa (planilha, fila no BullMQ, status por contato) e mantive os webhooks de mensagens.
- Cerca de 5 empresas, ~100 atendimentos por dia e picos de 1.000 mensagens.
- Quando
- abr 2025 — jan 2026
- Papel
- Desenvolvedor de Software · full-stack
- Escala
- ~5 empresas · ~100 interações/dia, picos de 1.000
- Stack
- Next.js, React, NestJS, PostgreSQL, BullMQ, OpenAI, WhatsApp Cloud API
Contexto
Uma startup de IA conversacional que vendia atendimento automatizado para outras empresas. O canal principal era o WhatsApp, pela API oficial da Meta; havia também um chat próprio e um painel de onde a equipe da empresa cliente podia falar com os clientes dela.
Atendíamos cerca de cinco empresas por vez, sempre com provas de conceito novas em andamento.
O problema
Cada empresa tem o próprio tom, as próprias regras e os próprios sistemas. A IA precisava responder como aquela empresa, e às vezes com dados que só existem nos sistemas dela, como um pedido ou um cadastro, sem expor ao modelo mais do que o necessário.
E campanhas em massa no WhatsApp têm regras próprias: mensagens fora da conversa só por template aprovado, a janela de 24 horas, limites de envio e o status de entrega de cada mensagem voltando depois, por webhook.
Minha parte
Trabalhei nas duas pontas, frontend e backend, e peguei problemas de DevOps quando foi preciso. Quando cheguei, a integração com o WhatsApp já estava sendo construída: dei manutenção nos webhooks e no envio de mensagens. O sistema de campanhas eu construí do zero.
- Campanhas: importação de planilha, disparo em massa em segundo plano e status de entrega por contato.
- Manutenção dos webhooks de mensagens e do envio de respostas pelo WhatsApp.
- Participação nos servidores MCP que ligavam a IA a mais de 10 APIs externas.
- Apoio ao sistema de IA configurável por empresa: atendimento, geração de leads e automação de fluxos.
Decisões técnicas
Tudo começa num webhook
A Meta entrega cada mensagem recebida por webhook. O backend identifica a empresa, monta a resposta com o contexto dela e responde pela API oficial. A IA levava de 10 segundos a um minuto por resposta.
Campanha é um job longo e controlado
A planilha importada vira um único job na fila (BullMQ) com todos os destinatários. Ele envia com alguns segundos de intervalo, grava cada envio no banco e segue para o próximo. Os webhooks de status marcam depois quem recebeu e quem não recebeu.
Os templates de marketing saem pela Marketing Messages Lite API da Meta, feita para esse tipo de envio.
A janela de 24 horas no banco
A última interação de cada contato fica registrada. Dentro da janela, a resposta é livre; fora dela, só por template, e o template reabre a janela para a conversa continuar.
MCP num serviço separado
Quando começamos, o MCP ainda era novo e não havia servidores prontos para o que precisávamos. Para cada API externa, estudávamos o formato dela e escrevíamos as ferramentas num serviço MCP próprio, em outro servidor: o backend fala com ele pela rede, e a lógica de cada integração fica fora do motor de conversa.
A IA não escolhe de quem são os dados
Quem está falando já é conhecido pelo número do WhatsApp. As ferramentas usam esse número, enviado nos headers, para buscar os dados nas APIs; o modelo recebe só o necessário para responder, e dados sensíveis ficam de fora do prompt.
Arquitetura
Resultado
A plataforma atendia cerca de cinco empresas, com uns 100 atendimentos por dia no total e picos de 1.000 mensagens. O sistema de campanhas que construí do zero entrou em uso para as empresas dispararem para listas inteiras de contatos.