WhatsAppComparaçãoAI Agents

Evolution API vs API oficial do WhatsApp: quando cada uma faz sentido

A Evolution API é grátis, sobe em minutos e não pede nada à Meta. Também é um cliente não oficial. O que você ganha, o que aceita junto, e quando migrar para a Cloud API.

Escrito por: Victor VillalobosRevisado por: Jennifer Villalobos11 de agosto de 202610 min de leitura
Ver como Markdown

A Evolution API é provavelmente o projeto brasileiro mais usado no ecossistema de automação de WhatsApp, e a razão é simples: ela resolve em vinte minutos um problema que pela via oficial leva duas semanas.

Isso é um elogio de verdade, não uma armadilha antes da crítica. Antes de listar os riscos, vale reconhecer por que tanta gente boa escolheu ela.

Para colocar um bot ou um agente no WhatsApp pela via oficial, você precisa de uma conta no Meta Business, verificação da empresa, um número que não esteja em uso no app comum, templates aprovados antes de conseguir iniciar qualquer conversa, e um webhook com verificação de assinatura.

Com a Evolution API você sobe um container, abre o QR code, escaneia com o celular e já está enviando mensagem. Custo: o seu VPS. Prazo: uma tarde.

Some a isso a integração pronta com n8n, Typebot e Chatwoot, documentação em português e uma comunidade grande, e fica claro por que ela virou padrão em agência, projeto interno e MVP no Brasil inteiro.

O que ela é, tecnicamente

Isso é a parte que decide todo o resto, e muita gente usa por meses sem ter clareza.

A Evolution API não conversa com a Meta. Ela se conecta ao WhatsApp como um dispositivo vinculado, exatamente como o WhatsApp Web. O QR code que você escaneia é o mesmo mecanismo de "conectar aparelho" do aplicativo.

Consequência direta: do ponto de vista da Meta, não existe uma API rodando. Existe um celular com um dispositivo vinculado que manda muitas mensagens.

Isso explica todos os comportamentos que confundem quem está começando. Por que o número pode ser bloqueado. Por que não existe selo de conta verificada. Por que não há template nem janela de 24 horas (as regras da Meta simplesmente não se aplicam, porque a Meta não sabe que você existe). E por que, quando algo quebra, não há ninguém para acionar.

O que você aceita junto

Sem alarmismo, e sem omitir:

Os Termos da Meta proibem clientes não autorizados. Isso não é interpretação, está escrito. A aplicação é feita por bloqueio de número, geralmente disparada por denúncia de usuário ou por padrão de envio. Muita gente roda por anos sem problema. Outras perdem o número na primeira campanha.

O bloqueio leva junto o número, não a instância. Se o número bloqueado é o do atendimento da empresa, o que se perde é o histórico de conversas dos clientes e o número que está impresso no cartão, no site e no Google Meu Negócio. Trocar de número é mais caro do que parece.

Você é o responsável pelo uptime. Sessão caiu, container reiniciou, celular ficou sem internet por tempo demais: é você quem descobre e é você quem religa. Às três da manhã de um sábado.

Não existe caminho de suporte. Nem da Meta, porque você não é cliente dela, nem de um fornecedor, porque não existe fornecedor. Existe uma comunidade generosa, e ela é ótima, mas comunidade não tem SLA.

Escala é o ponto em que o padrão vira sinal. Uma instância mandando poucas mensagens para gente que respondeu antes se parece com uma pessoa. A mesma instância mandando mil mensagens de manhã não se parece.

A tabela de decisão

Sua situaçãoEscolha
MVP, protótipo, validar uma ideia essa semanaEvolution API
Automação interna: alerta para a sua própria equipeEvolution API
Projeto pessoal, bot de grupo, ferramenta de uso próprioEvolution API
O número é o canal de atendimento oficial da empresaCloud API oficial
Você vai disparar campanha ou mensagem em volumeCloud API oficial
Existe contrato, SLA ou cliente pagando pelo serviçoCloud API oficial
Você precisa iniciar conversa com quem não escreveu antesCloud API oficial (é a única que tem template)
Setor regulado, auditoria, exigência de rastreabilidadeCloud API oficial
Você quer o selo de verificado e o nome da empresa aparecendoCloud API oficial

A linha que mais pesa é a terceira de baixo para cima. Sem template aprovado, você só consegue responder quem falou com você primeiro. Para suporte isso pode bastar. Para lembrete de consulta, confirmação de pedido, recuperação de carrinho ou qualquer coisa que você inicia, não basta, e não existe contorno legítimo.

O custo real das duas

A Evolution API é grátis no sentido em que o software é grátis. O que ela custa:

ItemEvolution APICloud API via Zavu
Licença de softwareGrátisIncluído
ServidorSeu VPS, e ele precisa ficar de péNada a manter
MensagemGrátisTarifa da Meta repassada, sem taxa por conversa da Zavu
Manter a sessão vivaSeu trabalho, indefinidamenteNão existe sessão para cair
Risco de perder o númeroReal e não segurávelConta oficial
Suporte quando quebraComunidadeSuporte do fornecedor

Somando o tempo de quem cuida da instância, "grátis" costuma sair mais caro do que a conta oficial em qualquer operação que já tenha cliente pagando. Abaixo disso, a Evolution API ganha com folga, e é honesto dizer isso.

O agente é o mesmo nas duas

Essa é a parte tranquilizadora, e é o motivo de a escolha não precisar ser definitiva.

O seu agente é um prompt mais tools. Ele não sabe nem se importa com qual canal entregou a mensagem. Trocar de transporte não é reescrever o agente, é trocar de transporte.

Se você está na Evolution API hoje, o agente que você escreveu continua valendo. E você também não porta ele na mão. Instale as skills e o CLI, e depois aponte o seu coding agent para o código que já existe:

terminal
npx skills add zavudev/zavu-skills npx zavudev@latest login

> Este é o meu bot de Evolution API. Migre para a Zavu na Cloud API oficial do WhatsApp, mantendo o mesmo prompt e a mesma consulta de disponibilidade. Deploye e teste com "tem algum horário livre na quinta?"

O que volta:

TypeScript
import { defineAgent, defineTool } from "@zavudev/functions" defineAgent({ senderId: process.env.SENDER_ID!, name: "Ana", provider: "zavu", model: "openai/gpt-4o-mini", prompt: Você é a Ana, atendimento de uma clínica. Responda em duas frases ou menos. Nunca confirme um horário sem checar a agenda., }) defineTool({ name: "check_availability", description: "Get free appointment slots for a date. Use when the patient asks about scheduling.", parameters: { type: "object", properties: { date: { type: "string" } }, required: ["date"], }, handler: async ({ date }) => { const res = await fetch(https://clinica.example.com/slots?date=${date}) return res.json() }, })

npx zavudev deploy e ele atende no WhatsApp oficial, e também em SMS, email e voz se o sender tiver esses canais. A mesma tool, o mesmo prompt.

O contrário também vale: se você quer manter a Evolution API para o ambiente interno e usar a conta oficial para o atendimento ao cliente, os dois podem apontar para a mesma lógica de negócio. A tool é uma função HTTP, e quem chama ela é indiferente.

Como fica a migração

Se você decidiu ir para a conta oficial, o caminho que dá menos dor:

  • Não migre o número que está funcionando ainda. Comece com um número novo na Cloud API, em paralelo. A operação continua rodando.
  • Suba os templates primeiro. A aprovação da Meta leva de minutos a alguns dias, e é o que você vai precisar para iniciar conversa. Fazer isso antes tira o item do caminho crítico.
  • Aponte o agente para o novo sender. É uma variável de ambiente.
  • Migre o número principal por último, quando o resto já estiver comprovado, e avisando os clientes.
  • O guia de integração da WhatsApp Business API cobre o passo a passo, e o de preços por mensagem explica o que a Meta cobra em cada categoria de conversa, que é a conta que você vai querer fazer antes de decidir.

    O resumo honesto

    A Evolution API é um bom projeto resolvendo um problema real, e o problema que ela resolve é a burocracia da via oficial. Se você está validando uma ideia, automatizando algo interno ou construindo para você mesmo, use e siga em frente.

    O momento de sair é quando a resposta para "o que acontece se esse número for bloqueado amanhã" deixa de ser "eu troco de número" e passa a ser "a empresa para".

    Continue lendo

    Precisa de ajuda? Contate-nos ou junte-se à nossa comunidade Discord para suporte.

    Get started

    Pronto para começar?

    Comece a construir gratuitamente ou agende uma chamada para discutir seu caso de uso específico.

    Evolution API WhatsApp: vale a pena? | Zavu Blog