La regla de las 24 horas de WhatsApp: por qué tu mensaje no salió
Tu mensaje no salió y no es un bug de tu integración. WhatsApp bloquea los mensajes después de 24 horas sin respuesta del usuario. Aquí te explicamos por qué y cómo manejarlo cuando construyes sobre la API.
Llegaste al límite de 24 horas. Tu mensaje no salió, y no es un bug de tu código ni de Wabery. Es una regla de Meta que aplica a todos los que usan la WhatsApp Business API, sin excepción.
Si estás construyendo sobre la API — un flujo de reservas, un bot de soporte, una notificación operativa — necesitas entender esta ventana antes de escribir una sola línea de envío. Aquí te explicamos exactamente qué está pasando y cómo manejarlo.
La regla en una línea
WhatsApp solo permite enviar mensajes de texto libre a un usuario durante las 24 horas siguientes a su último mensaje. Cuando ese tiempo pasa, la ventana se cierra y no puedes escribirle hasta que él te escriba primero o uses una plantilla aprobada.
No es una limitación de Wabery ni de tu integración. Es la política de Meta, y aplica igual para todos: grandes plataformas, pequeñas empresas, cualquier desarrollador que construya sobre la API.
Por qué existe esta regla
Piénsalo desde el lado del usuario.
En nuestra región, WhatsApp se convirtió en el canal de todo: ventas, soporte, trámites, familia. También se convirtió en el favorito de estafadores y spammers. Probablemente tú mismo has recibido mensajes de "préstamos express" o "ganaste un premio" que nunca pediste.
Meta creó la ventana de 24 horas para proteger a los usuarios de exactamente eso. La regla garantiza tres cosas:
- El usuario controla la conversación. Si quiere saber de ti, te escribe. Si no escribe, probablemente no quiere ser contactado.
- Tu mensaje llega cuando importa. Como los usuarios no están acostumbrados a recibir spam por WhatsApp, cuando sí reciben un mensaje, lo abren. La tasa de lectura es mucho mayor que en email o SMS.
- WhatsApp sigue siendo útil. Sin esta regla, en poco tiempo sería otro canal lleno de publicidad que nadie lee.
¿Es una restricción a tener en cuenta al diseñar tu producto? Sí. Pero también es la razón por la que los usuarios responden en WhatsApp y no en email.
Cómo funciona la ventana
El flujo es simple:
El usuario escribe: "Hola, ¿tienen disponibilidad para el sábado?"
Se abre una ventana de 24 horas. Tu aplicación puede responder lo que quiera: texto, fotos, precios, confirmaciones, audios, un WhatsApp Flow para recolectar datos, lo que sea, sin restricciones.
El usuario responde dentro de esas 24 horas. El reloj se reinicia. Tienes otras 24 horas desde ese último mensaje.
Pasan 24 horas sin que el usuario escriba. La ventana se cierra. No puedes enviarle mensajes de texto libre hasta que él inicie de nuevo.
Cada vez que el usuario te escribe, el reloj se reinicia desde cero. Si alguien escribió el lunes por la mañana y luego el lunes por la tarde, tu ventana corre hasta el martes por la tarde.
Cuando construyes sobre Wabery, cada mensaje entrante llega a tu webhook con su timestamp, así que puedes calcular en tu propia lógica si la ventana sigue abierta antes de intentar enviar:
app.post("/webhooks/wabery", verifySignature, (req, res) => {
const event = req.body;
if (event.type === "message.received") {
// guarda lastInboundAt para este contacto
db.contacts.update(event.contactId, { lastInboundAt: event.timestamp });
}
res.sendStatus(200);
});
function windowOpen(lastInboundAt: number) {
return Date.now() - lastInboundAt < 24 * 60 * 60 * 1000;
}
¿Y si necesito notificar algo fuera de la ventana?
Hay una vía oficial: mensajes de plantilla (templates).
WhatsApp permite enviar mensajes fuera de la ventana si usas plantillas pre-aprobadas por Meta. Con Wabery las envías por la misma API:
await wabery.messages.sendTemplate({
to: contact.phone,
template: "appointment_reminder",
variables: { name: contact.name, time: "sábado 10:00" },
});
Tienen restricciones: solo ciertos usos están aprobados (actualizaciones, confirmaciones, recordatorios, notificaciones de pago) y tienen un costo por mensaje. Para conversación general, los templates no son prácticos; son una herramienta específica para casos específicos. Tú decides en tu código cuándo usar texto libre y cuándo caer en una plantilla.
Cómo aprovechar mejor la ventana al construir
Dado que la regla no va a cambiar, así diseñas tu integración para sacarle el máximo provecho:
Responde rápido y de forma automática. Cuando un usuario escribe, el reloj empieza. Con una automatización en Wabery o tu propio handler de webhook, el usuario recibe respuesta inmediata aunque tu equipo esté ocupado, lo que mantiene la conversación activa.
Cierra el loop mientras la ventana está abierta. Diseña tus flujos para resolver dentro de la ventana. ¿Necesitas datos del usuario? Manda un WhatsApp Flow ahí mismo en vez de un "te confirmo después". La ventana que no aprovechas, se pierde.
Crea razones para que los usuarios escriban primero. Pon enlaces de WhatsApp (https://wa.me/...) en tu app, en tu perfil de Instagram, en los recordatorios. Cuando el usuario inicia el contacto, la restricción no aplica y la ventana se abre.
Aprovecha que las respuestas reinician el reloj. Si envías un seguimiento permitido y el usuario responde, se abre una nueva ventana de 24 horas. Tu webhook te avisa; usa ese momento.
Una advertencia importante: las plataformas que prometen "sin límites"
Probablemente has visto herramientas que dicen: "Envía mensajes a todos tus contactos sin restricciones", "Sin límite de 24 horas", "Blast masivo de WhatsApp".
Sé muy cuidadoso con esto, sobre todo si vas a integrarlas en un producto.
Si una plataforma promete saltarse las reglas de Meta, casi con certeza no está usando la API oficial de WhatsApp Business. Está usando métodos no autorizados que Meta detecta y persigue activamente.
Lo que puede pasar si construyes sobre esas herramientas:
- Tu número de WhatsApp puede ser bloqueado permanentemente. Sin aviso, sin apelación fácil.
- Pierdes acceso a todas tus conversaciones. Años de historial con usuarios, desaparecidos.
- No puedes crear otra cuenta con el mismo número. El bloqueo es al número, no a la cuenta.
- Tus usuarios te buscan y no pueden contactarte. Ellos no saben que fuiste bloqueado. Solo ven silencio.
En nuestra región hay muchas herramientas que operan en ese espacio gris. Algunas son baratas, algunas parecen legítimas. El problema es que cuando Meta actúa, lo hace sin previo aviso, y tu producto se cae con ellas.
Por qué Wabery se construye sobre la API oficial
Sí, la ventana de 24 horas es una restricción. Pero Wabery usa la API oficial de WhatsApp Business porque es la única base segura y sostenible sobre la que vale la pena construir.
Cuando construyes sobre Wabery:
- La cuenta está protegida. Toda la plataforma sigue las políticas de Meta, así que tu integración hereda esa seguridad.
- Tus mensajes llegan. Los mensajes por API oficial tienen mejor entrega y no se marcan como spam.
- Tienes una ruta legítima. Si algo sale mal, hay un camino de resolución real, no un número bloqueado y sin retorno.
La restricción es real. Pero perder tu número de WhatsApp es mucho peor que diseñar tu producto respetando la ventana de 24 horas.
Referencia rápida
| Situación | ¿Puedes enviar? |
|---|---|
| El usuario escribió hace menos de 24 horas | Sí, texto libre sin restricciones |
| El usuario escribió hace más de 24 horas | No con texto libre; solo plantilla |
| Quieres enviar un recordatorio | Sí, vía plantilla aprobada |
| Quieres retomar una conversación antigua | No con texto libre; espera a que el usuario escriba o usa plantilla |
| El usuario te escribe de nuevo | Sí, el reloj se reinicia |
¿Tienes dudas?
Si tienes preguntas sobre cómo manejar la ventana de 24 horas en tu integración con Wabery, o quieres ver cómo construir automatizaciones que aprovechen mejor cada conversación, escríbenos.
¿Tienes una pregunta sobre las reglas de la WhatsApp Business API que no cubrimos aquí? Mándanos un mensaje y lo agregamos a esta guía.
— Claire
¿Preguntas o comentarios? Escríbenos cuando quieras