Case técnicoEm produção

Converta Fitas: atendimento com IA no WhatsApp

Agente de IA que atende o WhatsApp da Converta Fitas e um sistema operacional próprio (Converta Fitas OS) onde a equipe acompanha as conversas, assume quando precisa e transforma atendimento em pedido. O agente entende áudio, foto da fita e PDF, orça pelo catálogo do sistema e para de responder sozinho quando um humano entra na conversa.

1. Contexto

Problema e desafio

Uma empresa de digitalização de fitas recebe toda a demanda pelo WhatsApp, em texto, áudio, foto e PDF e a qualquer hora. Sem estrutura, o atendimento depende de alguém de plantão, o orçamento varia de pessoa para pessoa e o que foi combinado na conversa se perde antes de virar pedido.

Contexto:A Converta Fitas, negócio da família, digitaliza VHS, Hi8, MiniDV, DVD e outras mídias antigas. O cliente chega pelo WhatsApp com foto da fita, áudio explicando o que tem e perguntas sobre preço, prazo e andamento do pedido.
Desafio operacional:Atender a qualquer hora sem perder o controle: a IA precisava orçar certo, reconhecer a mídia pela foto, saber quando parar e deixar cada conversa registrada e ligada ao pedido, sem que a equipe tivesse de trocar o WhatsApp por outra ferramenta.
Minha responsabilidade:Arquitetura e desenvolvimento de ponta a ponta: o sistema operacional em Next.js, a API que o agente consulta, o fluxo de atendimento no n8n, o prompt e a base de conhecimento do agente, a integração com o WhatsApp e a operação em produção.

2. Solução & stack

Solução criada

Duas peças que funcionam como um produto só. O agente no n8n conversa com o cliente. O Converta Fitas OS é a fonte de verdade: catálogo, clientes, pedidos, regras do agente e o estado de cada atendimento. O agente pergunta ao sistema antes de responder, e tudo o que acontece na conversa volta para ele.

Desenho de arquitetura:WhatsApp via Evolution API → n8n (mais de 80 nós funcionais) → API do Converta Fitas OS com 11 endpoints protegidos por segredo compartilhado e validados com Zod → Neon Postgres via Drizzle. A memória da conversa fica no Postgres, o buffer de mensagens no Redis, e o sistema roda na Vercel com Server Components e Server Actions.
Diferencial técnico:Não é um chatbot solto: é um agente com fonte de verdade, estado de handoff no banco, caminho de falha em cada etapa e uma suíte de testes automatizados cobrindo as regras que já quebraram em produção.

Stack usada

n8nOpenAI (GPT e Whisper)Evolution APINext.js 16Neon PostgresDrizzle ORMRedisZodVitest
Mapa técnicoponta a ponta
01Cliente escreve no WhatsApp com texto ou mídia
02fluxo filtra eventos e converte a mídia em texto
03buffer junta as mensagens seguidas
04sistema responde se a IA pode falar ou se um humano assumiu
05orçamento sai do catálogo ou o agente responde com a base de regras
06conversa e pedido ficam registrados no OS

3. Execução

Execução, automações e regras

Transcrição de áudio com Whisper; visão que identifica o formato da mídia e transcreve a etiqueta escrita à mão; leitura de PDF; buffer que junta mensagens seguidas antes da IA; orçamento direto pelo catálogo; pausa automática quando o operador responde pelo próprio WhatsApp; registro idempotente de cada mensagem; e fallback para humano em cada etapa que pode falhar.

Fluxo técnico

  1. 01Cliente escreve no WhatsApp com texto ou mídia
  2. 02fluxo filtra eventos e converte a mídia em texto
  3. 03buffer junta as mensagens seguidas
  4. 04sistema responde se a IA pode falar ou se um humano assumiu
  5. 05orçamento sai do catálogo ou o agente responde com a base de regras
  6. 06conversa e pedido ficam registrados no OS
Lições e aprendizados:
  • Preço não é tarefa do modelo: o orçamento sai do catálogo do sistema por uma rota determinística, e a IA só conversa sobre ele.
  • Handoff confiável é estado no banco, não instrução no prompt. A IA consulta o sistema antes de cada resposta e não consegue desfazer a decisão do operador.
  • Em WhatsApp o cliente manda três mensagens seguidas. Juntar tudo num buffer antes de chamar a IA evita três respostas desencontradas.
  • Um fluxo em produção precisa de caminho de falha em cada etapa: se a transcrição, a visão, o agente ou o sistema caem, o cliente recebe uma resposta segura e a conversa vai para humano.
  • Tela que mostra exatamente o que o agente recebe encontra problemas que nenhum log mostra: entradas duplicadas, regras que nunca chegavam ao modelo e campos descartados pelo fluxo.

4. Evidências

Resultado observadoAmbiente em produção

O WhatsApp deixou de depender de alguém de plantão: o agente responde a qualquer hora, orça pelo catálogo e passa para a equipe o que não deve decidir sozinho. Conversa, cliente e pedido ficam no mesmo sistema, e os relatórios dizem quem cobrar, o que a IA resolveu e onde a operação trava.

Descrevo o que o sistema faz. Não publico percentual de ganho que eu não tenha medido em produção.

Evidências disponíveis

5 capturas de interfaceAmbiente em produçãoDemonstração sob solicitaçãoCódigo não disponibilizado no portfólio
Captura da interface: Inbox de atendimentos

Fila, conversa e contexto lado a lado: status do atendimento, pedido vinculado, resposta sugerida pela IA e o controle para assumir ou devolver a conversa ao agente. Dados fictícios do modo demo.

Demonstração e contato

O sistema atende clientes reais, então as capturas vêm do modo demo, com dados fictícios. A apresentação ao vivo do fluxo e do sistema pode ser pedida pelo WhatsApp.

Tem um desafio parecido? Posso avaliar o contexto e apontar o próximo passo.