Cómo programar mensajes de compromisos para clientes en WhatsApp sin olvidarlos
"Te escribo el martes" es la promesa que más se pierde en una agencia y en la atención al cliente: nadie la anota, el día pasa y el lead se enfría. Programar el mensaje en el momento en que nace el compromiso resuelve el olvido sin depender de la memoria de nadie. ZapZap tiene programación dentro del chat y por API. Esta guía muestra los dos caminos, qué conviene programar y el cuidado para no convertir la programación en un envío masivo. ZapZap es una API no oficial: WhatsApp puede limitar números que envían mensajes no deseados.
Publicado el · 4 min de lectura
Este artículo también está disponible en: Português · English
Programar dentro del chat: el camino del agente
En el panel de la conversación hay una acción Programar. El agente elige la fecha y la hora y escribe el mensaje (o adjunta el archivo), y queda en una lista de mensajes programados de esa conversación, que se puede consultar, editar o cancelar. Sirve para lo que nace en medio de la conversación: "seguimiento mañana a las 10h", "envío la propuesta el viernes", "te recuerdo la cita".
La ganancia para la agencia es de proceso: el compromiso deja de vivir en la memoria de quien atendió y pasa a existir en el sistema, visible para quien asuma la conversación después.
Programar por API: el camino de la automatización
Para recordatorios que salen de otro sistema (agenda, CRM, cobranza), el envío simple acepta el campo scheduled_for, un timestamp en milisegundos. El ejemplo de abajo programa un mensaje para un número y devuelve un folder_id, que sirve para seguir la campaña. Cuidado con la zona horaria: calcula el timestamp a partir de la fecha local del cliente.
El campo numbers es una lista (en texto JSON) y los retrasos delayMin y delayMax, en segundos, espacian los envíos. Incluso para un solo recordatorio, mantén esos campos, porque la misma llamada sirve para listas mayores.
Schedule a message and check its status
# Schedule for 2026-11-12 10:00 (UTC-3): compute the timestamp in milliseconds
SCHEDULED_FOR=$(date -d "2026-11-12 10:00:00 -0300" +%s)000
curl -X POST "https://api.zapzapapi.com/api/v1/$ZAPZAP_INSTANCE/sender/simple" \
-H "Content-Type: application/json" \
-H "x-api-key: $ZAPZAP_API_KEY" \
-H "x-api-secret: $ZAPZAP_API_SECRET" \
-d "{\"numbers\":\"[\\\"5511999999999\\\"]\",\"type\":\"text\",\"text\":\"Oi! Lembrando do nosso retorno hoje as 10h.\",\"folder\":\"retornos\",\"delayMin\":5,\"delayMax\":12,\"scheduled_for\":$SCHEDULED_FOR}"
# Example answer: {"count":1,"folder_id":"r37d5cc380a7f31","status":"queued"}
# Later, list campaigns to see status and counters (log_total, log_delivered, log_read, log_failed)
curl "https://api.zapzapapi.com/api/v1/$ZAPZAP_INSTANCE/sender/listfolders" \
-H "x-api-key: $ZAPZAP_API_KEY" -H "x-api-secret: $ZAPZAP_API_SECRET"Qué conviene programar
Conviene programar lo que el contacto ya esperaba: un seguimiento acordado, un recordatorio de cita o de reunión, el envío de una propuesta prometida, un aviso de vencimiento a quien ya es cliente, el seguimiento de un presupuesto pedido. En todos existe una conversación previa y una razón clara para el mensaje.
No conviene programar un envío masivo a quien nunca habló contigo. Programar no hace que el mensaje sea esperado, solo cambia la hora en que sale. El uso aceptable de ZapZap exige el consentimiento de quien recibe: mira el uso aceptable y la guía de envío masivo legal y LGPD.
Cuidados de ritmo y de horario
Programar demasiadas cosas para el mismo minuto crea un pico que un agente humano no haría. Reparte los horarios, mantén retrasos entre mensajes y respeta el horario comercial del contacto. Un número nuevo todavía en calentamiento no debe recibir una agenda de envíos a desconocidos: mira calentamiento de chip.
Confirma la zona horaria de quien recibe. Recordar la cita a las 10h de la zona equivocada se vuelve un mensaje inútil y un motivo más para silenciar el número.
Armando la rutina de la agencia
Una rutina simple: el agente programa en el chat todo compromiso acordado, el CRM programa por API los recordatorios de eventos conocidos, y una revisión semanal mira la lista de campañas programadas por cliente. Para el flujo más amplio de recordatorios automáticos, mira programar mensajes de WhatsApp automáticamente y la página de agencias.
Resumen rápido
- Programa el compromiso cuando nace: dentro del chat (Programar) o por API.
- Por API, el envío simple acepta scheduled_for en milisegundos y devuelve un folder_id para hacer seguimiento.
- Programa lo que el contacto ya esperaba; programar no sustituye el consentimiento.
- Reparte horarios, mantén retrasos y confirma la zona horaria de quien recibe.
- La lista de mensajes programados por cliente debe entrar en la revisión semanal.
Sigue leyendo
Lee también
Preguntas frecuentes
¿Se pueden programar mensajes dentro del chat?
Sí. En la conversación hay la acción Programar, con fecha y hora. Los mensajes programados de la conversación quedan en una lista, donde se pueden editar o cancelar.
¿Cómo programar por API?
Usa POST /{instanceId}/sender/simple con numbers, type, delayMin, delayMax y scheduled_for (timestamp en milisegundos). La respuesta trae un folder_id, y GET /{instanceId}/sender/listfolders muestra el estado y los contadores.
¿Puedo programar envíos a una lista fría?
No es recomendable y el uso aceptable exige consentimiento. Programar no hace que el mensaje sea esperado.
¿Qué zona horaria usa la API?
El scheduled_for es un timestamp absoluto en milisegundos, así que la zona horaria está en la cuenta que haces al generarlo. Calcúlalo a partir de la fecha local del cliente.
¿La programación evita el bloqueo?
No. Evita el olvido. El riesgo del canal no oficial continúa, y lo que lo reduce son el ritmo, el consentimiento y el calentamiento.
Deja de perder compromisos acordados
Crea la cuenta, conecta un número y programa el primer mensaje en el chat. R$15 por número activo al mes, sin cobro por mensaje. Al verificar el teléfono, hay crédito de bienvenida, sujeto a la campaña vigente.
