Pular para o conteúdo principal

IA para automação de delivery no WhatsApp



O cheiro de pizza saindo do forno é bom demais, mas o cheiro de problema no WhatsApp do delivery, esse não rola. Eu já passei por isso muitas vezes. Chega final de semana, o telefone não para, as mensagens pipocam. "Quero uma pizza", "Qual o cardápio?", "Chega em quanto tempo?", "Meu endereço é...". E o pior: "Escrevi o endereço errado!", "Era sem cebola!", "Cancela!".

Quem trabalha com delivery sabe. Cada pedido que entra pelo WhatsApp é uma corrida contra o tempo. Alguém tem que ler, entender, copiar o endereço, os itens, o pagamento, jogar isso numa planilha – que geralmente é um Google Sheets – e depois avisar a cozinha, o motoboy, mandar a confirmação pro cliente. Tudo isso, manual. É um sufoco, a chance de erro é gigante, e a gente perde um tempo precioso que poderia estar usando pra outras coisas, tipo, sei lá, fazer a comida ou organizar a rota.

Eu sou daqueles que vivem com o Google Sheets aberto, o Apps Script rodando umas automações e um terminal Python do lado. Quando a demanda do delivery começou a apertar demais, e os erros de pedido se tornaram frequentes, percebi que precisava de algo mais robusto que só copiar e colar. Precisava de IA, mas não aquela de livro, e sim a IA que resolve problema na prática, no dia a dia, para automatizar o delivery via WhatsApp.

O Começo da Dor: Pedidos Manuais via WhatsApp

No início, era ok. Uma pizzaria pequena, uns poucos pedidos por dia. Um celular, um WhatsApp Business e eu ali, digitando tudo no meu Google Sheets de controle. "Cliente, Endereço, Pedido, Valor, Status". Parecia simples. Mas aí o volume aumentou. De repente, eram 5, 10, 20 mensagens ao mesmo tempo, cada uma com um formato diferente. Um cliente mandava um áudio, outro mandava uma lista, outro só a foto do cardápio e "quero esse!".

O Apps Script já ajudava a criar algumas validações no Sheets e a notificar o motoboy por Telegram depois que eu inseria o pedido. Mas a entrada de dados, o famoso "data entry", ainda era o gargalo. Eu perdia tempo decifrando mensagens, perguntando de novo o endereço porque o cliente esqueceu o número, ou confirmando o sabor da pizza que ele só mencionou por alto.

Pensei: "Preciso de um jeito de pegar essa bagunça de texto do WhatsApp e transformar em dados bonitinhos no Sheets, sem que eu precise ser o tradutor humano". E foi aí que a ideia de jogar uma IA no meio começou a fazer sentido.

A Estrutura Básica: WhatsApp API, Webhooks e Apps Script

Pra começar a brincadeira, o primeiro passo é conectar o WhatsApp. Não dá pra usar o WhatsApp pessoal e ficar lendo tudo na mão. A gente precisa de uma API. Eu usei a API do WhatsApp Business da Meta, mas tem outras opções como Twilio. O importante é que ela permite que você receba e envie mensagens programaticamente.

Quando alguém manda uma mensagem para o número do delivery, a API dispara um "webhook". Pensa num webhook como um aviso automático: "Ei! Chegou uma mensagem nova pra você nesse endereço aqui!". Esse "endereço aqui" é um URL que você configura. No meu caso, esse URL apontava para um script em Apps Script, que estava publicado como um aplicativo web.

O fluxo inicial era mais ou menos assim:

  1. Cliente envia mensagem no WhatsApp.
  2. API do WhatsApp recebe e dispara um webhook para o meu Apps Script.
  3. Apps Script recebe o conteúdo da mensagem.
  4. Aqui entrava o desafio: o que fazer com a mensagem?

Antes da IA, o Apps Script tentava fazer umas regras simples, tipo "se a mensagem contém 'cardápio', manda o link do cardápio". Mas pra pedido, era impossível. O texto era muito livre.

Integrando a IA: O Poder dos Modelos de Linguagem

A ideia foi simples na teoria, mas deu um trabalhinho pra ajustar na prática: pegar a mensagem do cliente e "jogar" para um modelo de IA que conseguisse entender e estruturar o pedido. Eu escolhi um LLM (Large Language Model) via API, como o da OpenAI ou Gemini, por sua capacidade de entender linguagem natural e extrair informações.

O Apps Script, ao receber a mensagem do WhatsApp, fazia uma requisição para a API do LLM. O segredo aqui é o 'prompt'. Um prompt bem feito é 80% do trabalho. No começo, meus prompts eram ingênuos, tipo "Extraia o pedido dessa mensagem". O resultado era uma bagunça, a IA inventava coisas ou ignorava detalhes importantes.

Depois de muitos testes e frustrações, o prompt virou algo mais robusto:

"Você é um assistente de pedidos de delivery. Sua tarefa é extrair as seguintes informações de um pedido de cliente, formatando-as em JSON. Se uma informação não for encontrada, retorne null. Os itens do cardápio são: Pizza Calabresa P, M, G; Pizza Frango c/ Catupiry P, M, G; Coca-cola lata; Suco de Laranja. Acompanhamentos para pizza: Borda Recheada (Catupiry ou Cheddar). Métodos de pagamento: Pix, Cartão (crédito/débito), Dinheiro. Endereço deve incluir Rua, Número, Complemento, Bairro, Cidade (se mencionado). Exemplo de saída: {'itens': [{'nome': 'Pizza Calabresa G', 'quantidade': 1, 'acompanhamento': 'Borda Recheada Catupiry'}, {'nome': 'Coca-cola lata', 'quantidade': 2}], 'endereco': 'Rua das Palmeiras, 100, Ap. 2, Centro, São Paulo', 'pagamento': 'Pix', 'observacoes': null}. Agora, analise a seguinte mensagem do cliente: [MENSAGEM_DO_CLIENTE]"

Esse prompt, que evoluiu bastante, dava contexto para a IA, listava os itens (sim, no início era melhor listar para evitar alucinações de sabores que não existiam), os tipos de pagamento, e o mais importante: o formato de saída JSON. Isso facilita demais a vida pra processar os dados depois.

Processando a Resposta da IA e Atualizando o Sheets

Quando a IA me retornava o JSON, o Apps Script entrava em ação novamente. Ele parcia o JSON, pegava cada pedacinho (itens, endereço, pagamento, observações) e jogava nas colunas certas da minha planilha "Pedidos" no Google Sheets.

Eu tinha outras abas no Sheets: "Cardápio" (com preços e estoque), "Clientes" (com histórico de endereços). O Apps Script usava as informações extraídas pela IA para consultar essas abas. Por exemplo, ele verificava se os itens pedidos existiam no "Cardápio" e calculava o total. Se o cliente era recorrente, ele tentava preencher o endereço a partir do histórico.

Essa parte foi crucial. Não adiantava a IA ser inteligente se o "robô" não conseguisse agir com base nas informações. Python também entrou em cena para alguns processamentos mais pesados. Por exemplo, eu tinha um script em Python rodando em um servidor simples (ou até um Google Cloud Function, dependendo do volume) que fazia a ponte entre o Apps Script e um sistema de roteamento de entregas, otimizando as rotas dos motoboys com base nos endereços do Sheets. Mas para o core da extração de pedidos, o Apps Script e a API da IA davam conta do recado.

Depois de tudo preenchido e validado no Sheets, o Apps Script gerava uma mensagem de confirmação para o cliente via WhatsApp API. Algo como: "Olá [Nome do Cliente], seu pedido foi confirmado! Pizza Calabresa G (1x), Coca-cola lata (2x). Endereço: Rua das Palmeiras, 100. Total: R$XX,XX. Previsão de entrega: 45 min. Agradecemos a preferência!".

Claro, essa mensagem de confirmação também pode ser gerada pela IA, usando um prompt como: "Com base neste pedido JSON e no valor total X, gere uma mensagem de confirmação amigável e concisa para o cliente.". Isso dá mais flexibilidade e um toque humano que um template fixo talvez não tivesse.

Essa automação toda reduziu drasticamente o tempo de processamento de pedidos e, o mais importante, os erros. O pessoal da cozinha recebia o pedido já estruturado, sem precisar decifrar garranchos ou áudios.

Automação de Delivery no WhatsApp: Jeito Manual vs. Automatizado

Para deixar mais claro o impacto, criei esta tabela comparativa:

Jeito Manual/Demorado Jeito Automatizado (com IA, Apps Script, Python, Sheets)
Receber mensagem no WhatsApp e ler manualmente. WhatsApp API recebe a mensagem e dispara um webhook.
Copiar nome, endereço, itens, quantidade, forma de pagamento. Webhook aciona Apps Script que envia a mensagem para a API da IA.
Abrir Google Sheets e inserir dados em cada coluna. IA processa a mensagem e retorna dados estruturados (JSON).
Calcular valor total do pedido. Apps Script parcia JSON e preenche automaticamente o Google Sheets.
Verificar manualmente o estoque (se houver). Apps Script consulta aba "Cardápio" no Sheets para preço e estoque.
Digitar mensagem de confirmação para o cliente. Apps Script (ou IA) gera mensagem de confirmação personalizada.
Notificar cozinha/motoboy via chat ou impresso. Apps Script envia notificação automatizada (e-mail, Telegram, ou integração com sistema).
Tempo médio por pedido: 3-5 minutos (se não tiver erro). Tempo médio por pedido: Segundos.
Alta chance de erros de digitação e interpretação. Minimiza erros, padroniza entradas, aumenta a precisão.
Demora na resposta ao cliente, aumentando a frustração. Resposta instantânea e profissional, melhorando a experiência do cliente.

O Que Dá Errado: Armadilhas e Detalhes Cabeludos

Ah, se tudo fosse tão simples quanto a gente escreve no papel! Na prática, essa jornada é cheia de tropeços. Eu quebrei a cabeça com muita coisa que parecia boba.

1. Prompts Mal Escritos e Alucinações da IA

No começo, a IA errava demais. Um cliente pedia "uma pizza de frango", e o LLM inventava "Pizza de Frango com Catupiry e Bacon". Sendo que bacon nem tinha no cardápio! Eu precisei ser EXTREMAMENTE específico nos prompts. Listar todos os itens do cardápio, com as opções exatas (P, M, G), e reforçar que a IA só deveria usar o que estava na lista. Se o cliente pedisse algo que não estava, a IA deveria retornar 'null' para aquele item e, no máximo, colocar uma observação para o atendente humano verificar. Isso é um detalhe crucial para evitar vender algo que não existe ou não tem em estoque.

2. Variações na Linguagem do Cliente

O ser humano é criativo. "Pizza grande de mussarela", "Mussa G", "Aquela pizza G de queijo", "Uma coca-cola zero, a da latinha". A IA precisa ser capaz de entender essas variações. Para isso, além de um bom prompt, eu tive que "treinar" a IA com alguns exemplos de entrada e saída dentro do próprio prompt (técnica de "few-shot learning"). Não é um treino formal, mas sim dar alguns pares de exemplo no prompt para que ela aprenda o padrão de extração.

3. Limitações da API do WhatsApp e Custos

A API do WhatsApp Business não é de graça. Tem um custo por conversa, e isso pode aumentar rápido se o volume for alto. Além disso, ela tem algumas regras e limitações sobre o que pode ser enviado. Mensagens muito longas, ou que parecem spam, podem ser bloqueadas. Fora a burocracia para aprovar o número e os templates de mensagem. Não é só sair conectando e usando.

4. Gerenciamento de Estado e Continuidade da Conversa

E se o cliente manda "Quero uma pizza", e depois "Calabresa G"? A IA precisa ter um "contexto" da conversa. No meu sistema, cada mensagem era processada de forma independente. Isso significava que se o cliente dividisse o pedido em várias mensagens, o sistema poderia se perder. A solução foi guardar o histórico da conversa com aquele cliente (no próprio Sheets ou em um banco de dados simples) e, ao enviar a mensagem para a IA, incluir as últimas 2 ou 3 mensagens da conversa para dar mais contexto. É um trade-off: mais tokens na requisição da IA (mais caro), mas maior precisão.

5. Lidando com Endereços e Dados Sensíveis

Endereço é um inferno. "Rua X, nº Y, ap Z, perto da padaria". "Não tem número, é a casa amarela". A IA é boa, mas validar um endereço é outra história. Eu tive que usar um serviço de geocodificação (uma outra API) para tentar padronizar e validar os endereços. Além disso, lidar com dados de clientes exige cuidado com segurança e privacidade. As chaves das APIs, por exemplo, não podem ficar expostas no código.

6. Erros na Integridade dos Dados no Sheets

A IA é ótima, mas não é infalível. Uma vírgula fora do lugar no JSON que ela retorna, ou um campo que vem com tipo de dado errado, pode quebrar o Apps Script. A validação de dados no Apps Script é fundamental. Eu tive que implementar muitos `try-catch` e verificações de tipo antes de tentar gravar qualquer coisa no Sheets, para evitar que dados inconsistentes corrompessem a planilha.

7. A Latência das APIs

Às vezes, a API da IA ou a do WhatsApp demoram um pouco para responder. Isso pode causar uma sensação de lentidão para o cliente, ou até timeouts no Apps Script. É preciso ter um bom tratamento de erros e reenvio em caso de falha temporária.

Esses "pequenos" detalhes consumiram muito tempo, mas cada um deles me ensinou algo importante e deixou a automação mais robusta e confiável.

FAQ: Perguntas Técnicas da Galera

1. Como eu garanto que a IA não vai "alucinar" e inventar itens que não estão no meu cardápio?

A melhor forma é ser explícito no prompt. Crie uma seção no seu prompt com "Itens do Cardápio Disponíveis:" e liste-os exatos. Adicione uma instrução como: "Somente utilize os itens listados. Se um item pedido pelo cliente não estiver nesta lista, retorne 'null' para ele e, se possível, coloque a menção original do cliente em 'observacoes'." Isso força a IA a se ater à sua lista, prevenindo criações fantasiosas.

2. O que fazer se a API do WhatsApp ou da IA derem erro de conexão ou limite de requisições?

No Apps Script ou Python, você precisa implementar um mecanismo de "retry" (tentar novamente). Se a primeira requisição falhar (erro 500, timeout), espere alguns segundos e tente de novo, talvez até 2 ou 3 vezes. Utilize blocos `try-catch` para capturar os erros. Para limites de requisição (rate limit), muitas APIs retornam um cabeçalho `Retry-After`. Se presente, use-o para esperar o tempo recomendado antes de tentar novamente. Se o erro persistir, logue o problema e, talvez, envie uma notificação para um humano intervir.

3. Como eu lido com pedidos complexos ou com modificações ("quero uma pizza de calabresa, mas sem cebola e com borda recheada")?

O segredo está no prompt e na estrutura do JSON de saída que você pede à IA. Inclua campos como `observacoes_por_item` ou `modificacoes`. Por exemplo, no JSON de saída, para um item de pizza, você pode ter um campo `observacoes_personalizadas`. O prompt deve instruir a IA a preencher esse campo com detalhes como "sem cebola" ou "com borda de cheddar". No Apps Script, ao processar esse item, você verifica esse campo para repassar a informação correta à cozinha.

Conclusão

Automatizar o delivery do WhatsApp com IA não é mágica de uma hora para outra. É um projeto com seus desafios, suas dores de cabeça e que exige uma boa dose de experimentação. Mas os resultados, no fim das contas, compensam demais.

A gente consegue tirar a carga repetitiva do time, diminuir erros, acelerar o atendimento e, o mais importante, dar uma experiência muito melhor para o cliente, que recebe uma resposta rápida e um pedido certo. Eu continuo refinando meus prompts, ajustando os scripts no Apps Script e em Python, e sempre de olho nas novidades das APIs. É um trabalho contínuo, mas que me permite focar em problemas mais interessantes do que ficar copiando e colando texto de WhatsApp. E o cheiro de pizza, agora, só me lembra de pizza mesmo, e não de um monte de pedido manual pra processar.

Comentários

Postagens mais visitadas deste blog

Claude Code gastando muito? Como otimizar o consumo de tokens na prática e não falir usando a API

A primeira vez que vi a fatura do Claude, confesso que me deu um frio na espinha. Era para ser uma automação "simples": pegar dados de umas 500 linhas de uma Google Sheet, fazer um resumo rápido de cada uma e categorizar. Algo que, se eu fosse fazer na mão, levaria uns dois dias chatos e repetitivos. Pensei: "Vou jogar no Claude, ele resolve em minutos e a conta vai ser irrisória". Que nada. Quando vi o consumo de tokens, a tal 'irrisória' virou um valor que me fez questionar se valia a pena continuar. A automação funcionou, sim, mas o preço foi maior do que o esperado. Foi aí que percebi que não bastava saber mandar um prompt; eu precisava aprender a economizar. E economizar de verdade, na prática, sem cair em papo furado de "otimização estratégica". A real é que a API do Claude, com seus modelos potentes como Opus, Sonnet e até o Haiku, é uma mão na roda para muita coisa – desde gerar textos complexos até extrair insights de montanhas de dados....

Melhores ferramentas de IA gratuitas para pequenas empresas

Melhores Ferramentas de IA Gratuitas para Pequenas Empresas A inteligência artificial (IA) deixou de ser um luxo para grandes corporações e tornou-se uma ferramenta acessível que pode transformar a maneira como pequenas empresas operam. Desde a criação de conteúdo até o atendimento ao cliente, a IA pode otimizar processos, economizar tempo e impulsionar o crescimento. O melhor de tudo é que você não precisa gastar uma fortuna para começar. Existem diversas ferramentas de IA gratuitas que podem fazer uma diferença significativa. Este artigo explora as melhores opções para pequenas empresas que desejam aproveitar o poder da IA sem custos iniciais. IA para Criação de Conteúdo e Marketing Gerar conteúdo relevante e atraente é crucial para qualquer pequena empresa. As ferramentas de IA podem ajudar a criar textos, ideias e até mesmo aprimorar a comunicação com seus clientes e público, tudo de forma eficiente e sem custo. ChatGPT / Google Gemini (Free Tiers): ...

Como usar o Gemini grátis no dia a dia

Dominando o Gemini Gratuito: Alavancando a Eficiência no Chão de Fábrica e Além No dinâmico cenário industrial e corporativo atual, onde a margem para erros é mínima e a busca por otimização é constante, ferramentas que impulsionam a eficiência e a tomada de decisão são mais do que um luxo – são uma necessidade. Como analista de dados e administrador com mais de 15 anos de vivência em gestão industrial e otimização de processos, testemunhei a evolução de inúmeras tecnologias. Hoje, quero compartilhar como o Gemini, em sua versão gratuita, pode ser um verdadeiro divisor de águas no seu dia a dia, transformando gargalos em oportunidades e automatizando rotinas com inteligência e praticidade. Não se trata de substituir a expertise humana, mas de amplificá-la. Análise de Dados e Relatórios Gerenciais Descomplicados Um dos maiores gargalos para qualquer gestor é a montanha de dados brutos que precisa ser transformada em insights acionáveis. O Gemini gratuito pode ser seu assistente pe...