Si eres desarrollador buscando "API WhatsApp", existen tres caminos: la WhatsApp Cloud API oficial de Meta, la WhatsApp Business API vía BSP (proveedor oficial) y las APIs no oficiales (que deberías evitar). Esta guía explica cada una, cuándo usar y muestra código real en Python, Node.js y cURL para el camino recomendado.
Las 3 APIs de WhatsApp en 2026
1. WhatsApp Cloud API (oficial Meta)
- Hospedada por Meta
- Acceso directo vía Graph API
- Tú manejas tokens, templates, webhooks
- Buena para: equipos con buen DevOps
2. WhatsApp Business API vía BSP (recomendado)
- BSPs oficiales como Zavu, Twilio, MessageBird
- Abstraen la complejidad (tokens, retries, templates)
- SDK oficial en varios lenguajes
- Buena para: 99% de los casos
3. APIs no oficiales (no uses)
- Bibliotecas que hacen reverse engineering de WhatsApp Web
- Funcionan hasta que Meta las bloquea
- Sin soporte, sin garantía, sin sello verde
- Pueden banear tu número permanentemente
Cómo empezar con la API WhatsApp en 5 minutos
Camino más simple: BSP oficial. Así con Zavu:
1. Cuenta gratis
Crea en zavu.dev. Sin tarjeta de crédito.2. Conectar Meta Business
En el dashboard, Add WhatsApp Sender → OAuth con Meta → autoriza Zavu. Demora 5 minutos.3. Instalar SDK
terminal# Node.js / TypeScript npm install @zavudev/sdk # Python pip install zavudev
4. Enviar primer mensaje
Node.js:
TypeScriptimport Zavu from "@zavudev/sdk" const zavu = new Zavu({ apiKey: process.env.ZAVU_API_KEY }) const result = await zavu.messages.send({ to: "+525511223344", channel: "whatsapp", text: "¡Hola! Primer mensaje vía API." }) console.log(result.message.id, result.message.status)
Python:
Pythonfrom zavudev import Zavu zavu = Zavu(api_key=os.environ["ZAVU_API_KEY"]) result = zavu.messages.send( to="+525511223344", channel="whatsapp", text="¡Hola! Primer mensaje vía API." ) print(result.message.id, result.message.status)
La regla de la ventana de 24 horas
Meta tiene regla estricta:
- Dentro de 24h después que el cliente respondió: cualquier tipo de mensaje
- Fuera de 24h: solo templates aprobados
Diseña tus flujos en torno a eso. Usa templates para outbound proactivo (confirmación de pedido, OTPs, recordatorios), texto libre dentro de la ventana.
Tipos de mensaje
Texto
TypeScriptawait zavu.messages.send({ to, channel: "whatsapp", text: "Hola" })
Template (fuera de ventana)
TypeScriptawait zavu.messages.send({ to, channel: "whatsapp", messageType: "template", content: { templateId: "tpl_pedido_confirmado", templateVariables: { "1": "Juan" } } })
Media
TypeScriptawait zavu.messages.send({ to, channel: "whatsapp", messageType: "image", content: { mediaUrl: "https://..." } })
Interactivo (botones, listas)
TypeScriptawait zavu.messages.send({ to, channel: "whatsapp", messageType: "buttons", text: "Elige opción", content: { buttons: [{ id: "1", title: "Comprar" }, { id: "2", title: "Soporte" }] } })
Webhooks para recibir
TypeScriptexport async function POST(req: Request) { const event = await req.json() if (event.type === "message.inbound") { await zavu.messages.send({ to: event.message.from, channel: "whatsapp", text: "Recibido" }) } return new Response("ok") }
Tipos de evento:
message.inbound— cliente enviómessage.delivered— entregadomessage.read— leídomessage.failed— falló (con razón)button.reply— cliente apretó botóntemplate.status_changed— template aprobado/rechazado
Pitfalls comunes
Timeout de webhook: Meta reintenta si no respondes 200 en 2 segundos. Reconoce rápido, procesa async.
Ciclos de rechazo de template: Meta rechaza templates promocionales en categoría Utility. Lee las guidelines de template.
Degradación de quality score: tasa de bloqueos alta limita tu número. Verifica opt-ins, respeta requests de STOP.
Rate limits: Meta aplica tiers (250/día → 1k → 10k → 100k). Verifica el negocio para aumentar.
Precios snapshot (México, 2026)
| Categoría | Costo por conversación 24h |
|---|---|
| Service (cliente inicia) | $0 |
| Authentication | $0.40 MXN |
| Utility | $0.60 MXN |
| Marketing | $3.20 MXN |
Eligiendo BSP
| Proveedor | Markup | Setup | Contrato | Mejor para |
|---|---|---|---|---|
| Zavu | 0% | $0 | Mes a mes | Devs multi-canal |
| Twilio | 5-20% | $0 | Mes a mes | Voz + SMS también |
| MessageBird | Variable | $12,000 MXN | 3 meses | Enterprise |
| Gupshup | 10-25% | $0 | Mes a mes | LATAM y India |
Recursos relacionados
- WhatsApp Cloud API tutorial
- Cómo crear chatbot en WhatsApp
- Precios WhatsApp Business API
- Zavu vs Twilio
- Documentación técnica completa
Conclusión
La API WhatsApp en 2026 está madura y accesible. Elige BSP sin markup ni contrato, usa templates para outbound, texto libre dentro de ventana de 24h, e instrumenta con webhooks. Zavu free tier cubre tus primeros 2,000 mensajes — sin tarjeta.