2>IA como canal de distribuição não é mais hipótese — é roadmap
Quando li a matéria do Abril.com.br sobre a Gê, a assistente financeira da Genial que já atende um em cada quatro clientes digitais pelo WhatsApp, meu primeiro pensamento foi: “isso é engenharia, não marketing”. Cem mil usuários em menos de um ano conversando com um bot que faz Pix, consulta saldo e ainda recomenda investimentos não é trivial. Por trás de cada mensagem existe um pipeline de NLP, integração com APIs bancárias, conformidade regulatória e um motor de regras que precisa respeitar o perfil do investidor (suitability). Vou destrinchar o que tem de real aí dentro — e o que falta no noticiário.
O que a Gê realmente faz (e o que a matéria deixou de fora)
Segundo o Abril.com.br, a Genial posiciona a Gê como “porta de entrada para diferentes serviços da instituição”. Traduzindo para quem mexe com código: é um orquestrador conversacional que despacha intenções para múltiplos microsserviços. O usuário pede “quanto tenho na conta?” → o classificador identifica a intenção → chama a API de saldo → monta a resposta natural. Pede “quero investir 500 reais” → dispara fluxo de suitability → consulta produtos disponíveis → confirma operação.
O detalhe técnico mais relevante é que a Genial pretende lançar um CDB exclusivo para o canal. Isso significa que a Gê não é só atendimento — é um ponto de venda com produto próprio. Para nós, devs, isso muda a arquitetura: agora o bot precisa controlar funil de conversão, disparar mensagens proativas com sugestões personalizadas e medir LTV por canal conversacional.
Por que WhatsApp virou canal financeiro sério
Tem um motivo técnico que ninguém comenta: a Meta investiu pesado no WhatsApp Business API com webhooks estáveis, criptografia E2E e templates de mensagem aprovados. Para uma instituição financeira, isso resolve três problemas críticos:
- Compliance: mensagens são auditáveis e registradas com opt-in explícito.
- Infraestrutura: a Meta cuida de escala global, a Genial só consome a API.
- UX: o usuário não baixa nada, não cria senha, não aprende interface nova.
Quando uso WhatsApp como canal de bots em projetos, percebo que a taxa de engajamento é 4 a 5 vezes maior que apps nativos. Não é opinião — é dado de mercado.
Arquitetura provável: o que está rodando por trás da Gê
A Genial não publicou o stack, mas dá para inferir o desenho mínimo viável:
- Camada de entrada: WhatsApp Business API via provedor (Twilio, MessageBird, 360dialog ou a própria Meta).
- Gateway de mensagens: fila assíncrona (Kafka, SQS ou RabbitMQ) para absorver picos.
- Classificador de intenção: provavelmente um LLM com prompt engineering ou um modelo fine-tunado para domínio financeiro.
- Orquestrador: LangChain, Haystack ou solução proprietária para encadear tools/APIs.
- APIs core do banco: saldo, Pix, produtos de renda fixa, Tesouro Direto, suitability.
- Motor de recomendação: sugere investimentos com base no perfil cadastral e no histórico do usuário.
- Camada de auditoria: log de toda conversa para o Banco Central (Open Finance + regulação).
Na Prática: prototipando um classificador de intenção financeiro
Vamos sair do abstrato. Suponha que você precisa classificar mensagens de clientes de uma fintech em intenções como consultar_saldo, fazer_pix, investir, tirar_duvida. Isso é a coluna vertebral de qualquer assistente como a Gê. Aqui vai um exemplo funcional usando Python e a API da OpenAI — o mesmo padrão serve para Anthropic, Gemini ou modelos locais via Ollama:
import json
from openai import OpenAI
from pydantic import BaseModel, Field
client = OpenAI()
class IntencaoFinanceira(BaseModel):
intencao: str = Field(
description="Uma de: consultar_saldo, fazer_pix, investir, tirar_duvida, cancelar, falar_humano"
)
confianca: float = Field(ge=0.0, le=1.0)
entidades: dict = Field(
default_factory=dict,
description="Valores, contas, prazos extraídos da mensagem"
)
SYSTEM_PROMPT = """Você é o classificador de intenções de uma fintech brasileira.
Mapeie a mensagem do cliente para uma das intenções canônicas e extraia entidades.
Responda APENAS em JSON válido seguindo o schema."""
def classificar(mensagem: str, historico: list[dict] | None = None) -> IntencaoFinanceira:
msgs = [{"role": "system", "content": SYSTEM_PROMPT}]
if historico:
msgs.extend(historico[-6:]) # janela curta, custo controlado
msgs.append({"role": "user", "content": mensagem})
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=msgs,
response_format={"type": "json_object"},
temperature=0,
)
return IntencaoFinanceira(**json.loads(resp.choices[0].message.content))
# Teste real
resultado = classificar("Quero aplicar 2000 reais no Tesouro Selic amanhã cedo")
print(resultado.model_dump_json(indent=2))
# intencao: "investir", confianca: 0.96, entidades: {"valor": 2000, "ativo": "Tesouro Selic"}
Detalhe importante: usei temperature=0 e response_format=json_object. Em produção financeira, determinismo e schema rígido não são opcionais — são exigência de auditoria. Na minha experiência, pular isso é a forma mais rápida de receber um ticket do time de risco.
Webhook do WhatsApp Business API
Para fechar o loop, o webhook que recebe a mensagem do usuário e devolve a resposta da Gê segue essa estrutura:
from fastapi import FastAPI, Request
import httpx
app = FastAPI()
WHATSAPP_TOKEN = "EAAxxxxx" # token de acesso do Meta Business
@app.post("/webhook/whatsapp")
async def receber_mensagem(req: Request):
body = await req.json()
msg = body["entry"][0]["changes"][0]["value"]["messages"][0]
texto = msg["text"]["body"]
telefone = msg["from"]
intencao = classificar(texto)
# Despacha para o serviço correspondente
if intencao.intencao == "consultar_saldo":
resposta = await consultar_saldo_api(telefone)
elif intencao.intencao == "investir":
resposta = await abrir_fluxo_investimento(telefone, intencao.entidades)
else:
resposta = "Posso te ajudar a consultar saldo, fazer Pix ou investir."
# Responde via API do WhatsApp
async with httpx.AsyncClient() as http:
await http.post(
f"https://graph.facebook.com/v20.0/{PHONE_ID}/messages",
headers={"Authorization": f"Bearer {WHATSAPP_TOKEN}"},
json={
"messaging_product": "whatsapp",
"to": telefone,
"type": "text",
"text": {"body": resposta},
},
)
return {"status": "ok"}
Erros comuns que devs cometem ao montar um bot financeiro
Já revisei código de pelo menos três fintechs tentando fazer algo parecido com a Gê. Os mesmos erros aparecem sempre:
- Confundir LLM com motor de decisão. O modelo classifica a intenção, mas a regra de negócio (suitability, limites de Pix, janelas de operação) tem que estar em código determinístico. LLM sugerindo, código executando.
- Esquecer o fallback humano. Qualquer mensagem com confiança abaixo de 0.7 ou intenção “falar_humano” precisa escalar. Bot travado em looping de “não entendi” é motivo de churn.
- Não tratar o contexto entre mensagens. Conversa financeira é multi-turn. O usuário diz “quero investir”, depois “em renda fixa”, depois “200 reais”. Sem memória de sessão, você vira um atendimento telefônico dos anos 90.
- Persistir dados sensíveis em log. CPF, agência, conta e saldo não podem aparecer em log de aplicação. Máscara ou hash, sempre. Reguladores olham isso.
- Subestimar custo de tokens em escala. 100 mil usuários conversando 5x por dia com GPT-4 dá uma fatura que justifica strongly um modelo menor (4o-mini, Haiku, Gemma 2 fine-tunado) para as intenções simples.
Comparação honesta: Gê vs alternativas
A Gê não está sozinha nesse espaço. Veja o cenário competitivo:
| Solução | Canal | Diferencial |
|---|---|---|
| Gê (Genial) | Distribuição + produto próprio (CDB exclusivo) | |
| C6 Bank (Ágatha) | App próprio | Mais limitada, focada em suporte |
| Will (Banco Original) | App + Facebook | Foco em educação financeira |
| Olivia (NuInvest/Nubank) | App | Curadoria passiva, sem execução |
O movimento da Genial é agressivo: botar a IA no canal onde o usuário já está (WhatsApp) e dar a ela produto para vender. Esse é o desenho que vai separar vencedores de coadjuvantes nos próximos dois anos.
Por que isso importa para você, dev
Se você trabalha com IA ou backend, preste atenção: estamos vendo a primeira onda de finanças agentivas — sistemas que não apenas respondem, mas executam transações e geram receita. Isso abre três frentes de trabalho:
- Engenharia de prompt + tools para domínio financeiro (suitability, regulamentação CVM/Bacen).
- Integração robusta com WhatsApp Business API, lidando com templates, janelas de 24h e opt-in.
- Observabilidade de conversa — métricas de fallback, NPS por turno, LTV por intenção.
Quando testei em produção um protótipo parecido, a maior lição veio do operacional: latência do LLM mais chamada de API bancária precisa ficar abaixo de 3 segundos, senão o usuário abandona. Quem está pensando em montar algo nesse modelo, comece pelo WhatsApp Cloud API — é o caminho mais barato e bem documentado.
FAQ — perguntas que um dev realmente faz
1. Qual stack a Genial provavelmente usa por trás da Gê?
Não há divulgação oficial, mas o padrão de mercado para esse tipo de orquestrador combina um LLM (OpenAI, Anthropic ou modelo hospedado), um framework de agentes como LangChain ou arquitetura proprietária, e integração com APIs bancárias via Open Finance. A escolha por WhatsApp como canal sugere Twilio, 360dialog ou o Cloud API da Meta.
2. Como garantir conformidade regulatória em um bot financeiro?
Três pilares: (1) suitability validado em código antes de qualquer oferta de produto; (2) log imutável de toda conversa para auditoria do Bacen; (3) fallback humano obrigatório em decisões sensíveis. LLM nunca deve ter autonomia para executar ordens sem checagem de regras determinísticas.
3. Quanto custa escalar um bot como a Gê?
Para 100 mil usuários ativos com 5 mensagens/dia, em GPT-4o-mini você gasta algo entre R$ 8 mil e R$ 20 mil/mês só com tokens. Some o custo do WhatsApp API (≈ R$ 0,40 por sessão de 24h) e infraestrutura de fila. Por volta de R$ 50 mil/mês é uma estimativa realista para esse volume.
4. Vale a pena usar modelo local em vez de API paga?
Para protótipo e intents simples, sim — Llama 3 70B ou Gemma 2 27B rodando em GPU dedicada barateiam o custo. Mas para fluidez conversacional em português brasileiro com contexto financeiro, os modelos de fronteira ainda ganham. Em produção, um desenho híbrido é o mais comum: modelo local para intents, modelo grande para respostas abertas.
5. Como começar a estudar esse tipo de projeto?
Comece pelo WhatsApp Cloud API (é gratuito para mil conversas/mês). Suba um classificador como o do exemplo acima. Depois integre com a API do Open Finance do Banco Central para dados reais de saldo. Por fim, adicione o motor de recomendação com embeddings do perfil do usuário. É um caminho incremental e didático.
Gostou? Me segue no GitHub e deixa um comentário se tiver dúvida ou quiser aprofundar algum ponto.