Crear plantillas de WhatsApp
Crea una plantilla en tu cuenta WhatsApp Business Account conectada para enviar mensajes con tus propias palabras. Esta introducción cubre borradores, idiomas, envío a revisión y revisión. Elige una categoría para ver su guía de creación:
- Authentication: códigos de verificación con el texto predefinido de Meta y un botón para copiar el código.
- Utility: actualizaciones de pedidos, recordatorios de citas y avisos de cuenta.
- Marketing: mensajes promocionales, carousels y precios máximos.
Para explorar y enviar una plantilla existente, consulta Plantillas de WhatsApp.
Tres aspectos definen todo el flujo:
- Una plantilla contiene versiones, y una versión contiene una entrada por idioma. Cada envío usa un idioma aprobado de una versión.
- El contenido se escribe en un borrador. Una plantilla tiene como máximo un borrador abierto, y nada de lo que contiene llega a WhatsApp hasta que lo envías.
- La aprobación llega por idioma. Un idioma puede aprobarse mientras otro de la misma versión es rechazado.
Antes de empezar
Necesitas un número propio conectado, que es lo que le da a tu espacio de trabajo una cuenta WhatsApp Business Account en la que crear plantillas. Una cuenta que no hayas conectado se rechaza, y también lo es editar una de las plantillas bird_ integradas de Bird: esas viven en la cuenta propia de Bird, así que duplica una en la tuya en su lugar.
Crear una plantilla de authentication requiere además un negocio verificado; utility y marketing no lo necesitan. Consulta Plantillas de authentication para ese requisito.
Crea una plantilla en la página Approved templates, con la bird CLI o mediante el servidor MCP.
En el dashboard
New template ofrece dos formas de empezar. Start with a template abre la galería, la ruta más rápida: elige una que ya diga casi lo que necesitas, incluida una de Bird, y la copia queda en tu cuenta como borrador abierto.

Start from scratch pide la categoría, un nombre y el idioma predeterminado antes de abrir el editor. Para una plantilla de marketing también eliges el tipo de mensaje. El nombre se convierte en el slug. Puedes cambiar el slug en Settings hasta el primer envío a revisión; la categoría queda fijada al crear la plantilla.

El editor escribe un idioma a la vez. Su lista de idiomas muestra el estado de revisión de cada uno, y la vista previa del teléfono renderiza tu contenido con valores de ejemplo. Sigue la guía de authentication, utility o marketing para ver los controles disponibles en tu categoría.
Save as draft guarda tu trabajo sin contactar con WhatsApp. Submit for review fija la versión y la envía a WhatsApp.
Dos formas de empezar
Duplicar una plantilla existente
Un duplicado lleva el contenido del origen como borrador abierto y no llama a WhatsApp ninguna vez, así que nada se envía hasta que tú lo decidas. Dos cosas sobre una copia conviene saber antes de hacerla:
- La categoría se hereda y no se puede cambiar. Si necesitas una categoría diferente, empieza desde cero.
- Puedes reducir los idiomas, nunca añadirlos. Una plantilla del catálogo con 70 idiomas no tiene que convertirse en 70 idiomas tuyos: elige el subconjunto que realmente vas a mantener. Pedir un idioma que el origen no tiene se rechaza con
E15060, y la respuesta indica cuáles no coincidieron. Añade más idiomas a la copia después.
Empezar desde cero
La categoría queda fijada al crear la plantilla; el slug, después del primer envío a revisión. Antes de enviarla, puedes corregir el slug en Settings. WhatsApp deriva su nombre de plantilla del slug. Para cambiar el slug después de enviarla o usar otra categoría, crea una plantilla nueva. El prefijo bird_ está reservado para el catálogo de Bird. La categoría que elijas no determina necesariamente el precio del envío: Meta asigna su propia categoría por idioma y puede cambiarla; el precio sigue la categoría de Meta.
Escribir cada idioma
Cada variable necesita un valor de ejemplo. Meta revisa el mensaje con esos valores completados. Si faltan ejemplos, no puedes enviarlo a revisión. Proporciona tú mismo el texto y los ejemplos de cada idioma; Meta no los traduce. Consulta los fundamentos de plantillas de Meta.
Para los idiomas de marketing, define un precio máximo en el editor o con optimization_spec. La guía de marketing cubre las unidades de precio, los ajustes por país, las estimaciones y los multiplicadores por mensaje.
Define durante cuánto tiempo WhatsApp reintenta un mensaje. WhatsApp reintenta un mensaje que no puede entregar durante el tiempo de vida del idioma y después lo descarta. Elige una duración en Time to live o selecciona la opción predeterminada: Default · 10 min para authentication, o Default · 30 days para utility y marketing. Este límite empieza a contar cuando entregamos el mensaje a Meta. A través de la API, define message_send_ttl_seconds en segundos, envía null para volver al valor predeterminado u omite el campo para conservar el valor actual. El rango depende de la categoría:
| Categoría | Rango |
|---|---|
| Authentication | De 30 segundos a 15 minutos |
| Utility | De 30 segundos a 12 horas |
| Marketing | De 12 horas a 14 días |
Si solo cambias el tiempo de vida, no necesitas una nueva revisión. En una plantilla de marketing, se aplica mientras la cuenta empresarial esté incorporada a Marketing Messages.
Verificar y luego enviar
Revisa el contenido y los ejemplos de variables de cada idioma y selecciona Submit for review para enviar el borrador guardado a Meta. Corrige los errores de validación antes de enviarlo.
Solo los idiomas cuyo contenido difiere de su copia aprobada necesitan revisión de contenido. Uno que ya coincide conserva su aprobación. Los cambios de precio de marketing se aplican por separado. Un envío en el que no cambió ni el contenido ni el precio se resuelve inmediatamente, sin nada que consultar. Después no se abre un borrador de reemplazo: la siguiente ronda de ediciones empieza creando un borrador de nuevo.
Seguimiento de la revisión
La aprobación llega después y por idioma. El pending_version_id de la plantilla permanece activo mientras algún idioma no esté resuelto, y la lista por idioma lleva cada veredicto:
approvedpermite enviar.available_languagesen la plantilla es exactamente lo que un envío puede resolver en este momento.rejectedosubmit_failedrequieren que revises el error del idioma antes de reintentar. Corrige el contenido en un borrador nuevo cuando sea necesario.pausedno permite enviar. Revisa el contenido y la audiencia; Meta puede reanudar una pausa temporal. También puedes editar y volver a enviar un idioma pausado. Consulta la guía de Meta sobre la pausa de plantillas.disabled,limit_exceeded,in_appealno se pueden editar. Revisa el error del idioma y sigue la acción que Meta muestra en WhatsApp Manager. Si hay una apelación pendiente, comprueba su estado para conocer la decisión.
El status propio de la plantilla es un agregado: active significa que al menos un idioma es enviable, no todos.
Enviar lo que creaste
Una plantilla creada por ti se envía a través del mismo endpoint que cualquier otra, con una diferencia respecto al catálogo de Bird: debes indicar from, y tiene que ser un número en la misma cuenta WhatsApp Business Account que la plantilla. Un remitente en una cuenta diferente se rechaza 422 E15023 antes de cobrar nada.
Una plantilla puede exigir un idioma del destinatario a través de language_source_required. De lo contrario, on_missing_language controla si la resolución falla o puede usar un idioma base aprobado o default_language. Prueba la política configurada contra los available_languages aprobados de la plantilla; un predeterminado no aprobado no es enviable. Los valores que proporcionas deben llenar los marcadores del idioma que realmente se resuelva, así que lee el contenido de ese idioma antes de enviar. Consulta Enviar mensajes de WhatsApp para el payload completo.
Aspectos a tener en cuenta
- Comprueba la versión activa antes de enviar. La lista de versiones muestra las más recientes primero e incluye cualquier borrador abierto, así que la primera fila a menudo es un borrador o una versión aún en revisión. La plantilla indica la versión en servicio como
live_version_id; una plantilla sin versión activa no se puede enviar. - Un idioma en revisión rechaza una escritura. WhatsApp lo retiene hasta que la revisión termine, así que una edición durante
pendingfalla en lugar de encolarse. - Una fila de lista no lleva contenido. Listar plantillas las encuentra y muestra su estado del ciclo de vida; leer lo que realmente dice una requiere una lectura de versión.
- Eliminar es irrecuperable. Descartar un idioma, eliminar un borrador y eliminar una plantilla requieren una confirmación explícita, y eliminar una plantilla detiene todos los envíos con ese slug.
Próximos pasos
- Plantillas de WhatsApp: el catálogo, las categorías y el contrato compartido de envío por plantilla
- Directrices para plantillas: qué busca la revisión de Meta
- Enviar mensajes de WhatsApp: el payload de envío completo
- API de plantillas: crear plantillas mediante programación
- Crear y enviar una plantilla de WhatsApp: un video que crea una plantilla de utilidad y un carousel de marketing
Recursos relacionados
Continúa con la documentación, guías y ejemplos de este tema.