Baileys ou Meta Cloud API: escolhi errado e paguei caro
Dois conectores, o mesmo contrato interno e consequências bem diferentes. O comparativo que eu queria ter lido antes de escolher às pressas numa reunião.

Escolhi o conector em quinze minutos, numa reunião, porque um deles ficava pronto no mesmo dia. Sete meses depois eu estava migrando tudo. A pergunta Baileys ou Meta Cloud API parece técnica, mas o que ela decide de verdade é quem carrega o risco da sua conexão: você ou a Meta.
Vou ser justo com os dois. Não existe conector melhor em abstrato. Existe conector adequado ao seu tipo de risco, ao seu volume e à sua tolerância a manutenção. Aprendi do jeito difícil que a escolha barata no começo cobra a conta depois.
A boa notícia é que a arquitetura protege você um pouco. O WhatsAppHub resolve o conector por configuração e ambos implementam o mesmo contrato, com envio de texto, imagem, documento, áudio, vídeo, localização, contato, sticker e reação, além de conectar, desconectar, obter status, gerar QR Code e normalizar webhook. Trocar não é indolor, mas também não é reescrever tudo.
O contrato comum, e por que ele importa
Os dois conectores implementam a mesma interface. Quer dizer que o resto do sistema, live chat, fluxos, campanhas, não sabe nem precisa saber qual provedor está por baixo. Quando eu migrei, o time de atendimento não notou nenhuma diferença na tela. Notou na estabilidade, mas não na tela.
- Envio de texto, imagem, documento, áudio, vídeo, localização, contato, sticker e reação.
- Conexão e desconexão de sessão pelo mesmo caminho.
- Consulta de status padronizada.
- Geração de QR Code quando o provedor exige pareamento.
- Normalização de webhook para um formato único de entrada.
Como Baileys ou Meta Cloud API se comportam de fato
O conector Baileys é um cliente HTTP para um runtime próprio, com suporte a host remoto e porta dinâmica quando provisionada. Ele mantém compatibilidade com o hub externo e preserva o fluxo legado quando esse hub não está ativo. O conector da Meta Cloud API envia pela API oficial conforme a configuração e normaliza a resposta para o mesmo contrato.
| Aspecto | Baileys | Meta Cloud API |
|---|---|---|
| Vínculo com o número | Pareamento por QR Code, sessão sua | Número habilitado na conta oficial |
| Infraestrutura | Runtime Node que alguém precisa manter de pé | API hospedada pela Meta |
| Quem cuida da sessão | Você, incluindo restart e reconexão | O provedor oficial |
| Custo principal | Servidor, supervisão e tempo de gente | Conforme a política comercial da Meta |
| Sensibilidade a queda | Sessão pode cair e exigir novo pareamento | Dependência de credencial e permissão |
A linha que mais dói é a terceira. Com Baileys, no dia em que a sessão cair às onze da noite, alguém do seu lado vai precisar resolver. Com a API oficial, seu problema muda de natureza: passa a ser credencial, permissão e política do canal.
Perguntas que decidem melhor que qualquer tabela
Quando alguém me pergunta o que escolher, eu devolvo cinco perguntas. As respostas costumam apontar o caminho sozinhas, sem discussão técnica nenhuma.
- Quem atende às onze da noite?Se ninguém atende e a sessão cai, quanto tempo o canal fica fora do ar? Some isso em prejuízo.
- Você tem alguém de infraestrutura?Runtime próprio pede supervisão de processo, host e porta. Sem essa pessoa, o risco é real.
- O número é da empresa mesmo?Número pessoal de vendedor complica os dois caminhos, e complica muito o oficial.
- Qual o custo de um dia sem canal?Se for alto, a decisão pende para quem transfere a manutenção da sessão para terceiro.
- Vai precisar de algo fora do padrão?Confira antes se aquilo que seu time usa hoje está previsto no conector escolhido.
Onde o hub externo muda a conversa
Se você usa o hub independente, o WhatsAppHub prioriza esse caminho quando ele está configurado e mantém compatibilidade com os conectores locais. Isso reduz a diferença entre as opções, porque a sessão passa a viver fora do sistema principal, com painel próprio, banco próprio e runtime próprio.
Foi essa mudança que finalmente estabilizou meu canal. O detalhe da arquitetura está em hub independente de WhatsApp, e leia antes de decidir, porque muda o peso de alguns critérios da tabela acima.
Como eu decidiria hoje
- Escrevi quanto custa uma hora de canal fora do ar.
- Sei o nome da pessoa que reconecta a sessão fora do horário comercial.
- Confirmei que o número é institucional e não pessoal.
- Testei envio de mídia, áudio e localização antes de fechar a escolha.
- Sei como acompanho o estado da conexão sem depender de reclamação.
- Deixei registrado o caminho de volta caso a escolha se mostre errada.
A pergunta não é qual conector é melhor. É quem vai acordar às três da manhã quando a sessão cair.
Equipe Webajato
Depois de escolher
Feita a escolha, vá para a configuração da conexão e deixe o monitoramento pronto seguindo saúde da conexão WhatsApp. Se o canal vai alimentar campanha e fluxo automatizado, revise também automação e agentes de IA antes de ligar tudo de uma vez. Ligar tudo junto foi outro erro meu.