Reglas de las plantillas de WhatsApp: qué significa cada comprobación y cómo corregirla
Cada comprobación que OmniBrand hace en una plantilla de WhatsApp antes de que Meta la vea, por su código (VAR_EDGE, BUTTON_GROUPING, EDIT_LIMIT...): qué significa, por qué le importa a Meta y cómo corregirla.
Antes de que una plantilla de WhatsApp vaya a Meta para su revisión, OmniBrand la comprueba con las reglas publicadas por Meta. Las mismas comprobaciones se ejecutan en tu navegador mientras escribes y de nuevo en nuestro servidor cuando pulsas Enviar a revisión, así que una plantilla que Meta rechazaría con seguridad nunca sale de OmniBrand. Cada comprobación tiene un código; esta página los explica todos.
Cómo leer una comprobación
- Obligatorio corregir: Meta rechazará la plantilla. En el creador de plantillas, Enviar a revisión permanece desactivado hasta que se corrija; el panel Comprobaciones la muestra en Obligatorio corregir, con un botón Corregir cuando OmniBrand puede corregirla por ti. Si el servidor todavía encuentra una al enviar, el creador muestra "Meta rechazaría esta plantilla, así que no se envió nada. Corrige esto e inténtalo de nuevo:".
- Rechazo probable: un motivo habitual de rechazo o de cambio de categoría. Aun así puedes enviarla.
- Consejos: solo recomendaciones.
- Las comprobaciones marcadas como *pauta de OmniBrand* son una regla práctica propia cuando Meta no publica ninguna cifra; nunca son Obligatorio corregir.
- Quién puede enviar: los miembros con la tarea Administrar plantillas de WhatsApp (Propietarios, Administradores y Editores de forma predeterminada; consulta Roles y tareas).
Cuando la propia Meta la rechaza
Si Meta aun así la rechaza, el creador dice "Meta rechazó la plantilla:" con las propias palabras de Meta y, cuando Meta envió un número de error que reconocemos, la regla correspondiente de abajo: 2388299 es VAR_EDGE, 2388293 es VAR_DENSITY, 2388019 es TEMPLATE_QUOTA, 2388039 es EDIT_WHILE_PENDING, 2388040 es BODY_MAX, 2388047 es HEADER_NO_MARKDOWN, 2388072 es VAR_SYNTAX, 2388073 es FOOTER_NO_VARS y 2388024 es NAME_TAKEN_LANG. Nada cambia en Meta: una plantilla nueva se queda en el creador como Borrador (corrige el texto y vuelve a pulsar Enviar a revisión), y una ya enviada conserva su estado (corrígela y vuelve a pulsar Guardar cambios).
NAME_FORMAT (obligatorio corregir)
El nombre solo puede usar letras minúsculas del alfabeto inglés, dígitos y guiones bajos, hasta 512 caracteres, p. ej. eid_offer_2026. Sustituye los espacios por guiones bajos y las mayúsculas por minúsculas.
NAME_TAKEN_LANG (obligatorio corregir)
Esta cuenta de WhatsApp Business ya tiene una plantilla con este nombre en este idioma. Elige otro nombre o añade otro idioma a la existente.
NAME_RECENTLY_DELETED (rechazo probable)
Se eliminó una plantilla con este nombre hace menos de 30 días. Meta bloquea el nombre de una plantilla aprobada eliminada durante 30 días, así que elige un nombre nuevo o espera.
LANGUAGE_CODE (obligatorio corregir)
El código de idioma no es uno que WhatsApp acepte. Usa los códigos de Meta: en, en_US, en_GB, ar, ar_EG, ar_AE, etc. El portugués debe ser pt_BR o pt_PT.
LANGUAGE_SCRIPT_MISMATCH (rechazo probable, pauta de OmniBrand)
El texto no parece estar en el idioma elegido: una plantilla en árabe cuyo texto no está mayoritariamente en árabe, o una en inglés escrita sobre todo en árabe. Cambia el idioma o traduce el texto. Meta nunca traduce; escribe cada idioma por separado.
CATEGORY_ADVICE (rechazo probable, pauta de OmniBrand)
Una plantilla de Utilidad o de Autenticación contiene palabras promocionales (oferta, descuento, rebajas, عرض، خصم...) o un botón promocional. Meta aprueba esas plantillas como de Marketing, que cuestan precios de marketing y solo pueden ir a personas que aceptaron recibir marketing. Quita la promoción o elige Marketing.
AUTH_SHAPE (obligatorio corregir)
Las plantillas de Autenticación tienen una forma fija establecida por Meta: el cuerpo es "Tu código de verificación es {{1}}.", hay un botón de contraseña de un solo uso (Copiar código, Autocompletar con un toque o Sin toque (zero-tap)), no hay encabezado, pie, multimedia, enlaces ni emojis, y la caducidad del código es de 1 a 90 minutos. Los botones de un toque y sin toque necesitan el nombre del paquete y el hash de firma de tu app de Android. Sin toque también requiere que aceptes las condiciones de zero-tap de Meta (la casilla bajo Botón en el creador).
BODY_REQUIRED (obligatorio corregir)
Toda plantilla necesita un texto en el cuerpo.
BODY_MAX (obligatorio corregir)
El cuerpo es más largo de lo que Meta permite: 1.024 caracteres (600 para una oferta por tiempo limitado). Acórtalo.
HEADER_TEXT_REQUIRED (obligatorio corregir)
Elegiste un encabezado de texto pero lo dejaste vacío. Escribe el encabezado o elige no tener encabezado.
HEADER_TEXT_MAX (obligatorio corregir)
Un encabezado de texto puede tener como máximo 60 caracteres.
HEADER_ONE_VAR (obligatorio corregir)
Un encabezado de texto solo puede contener una variable.
HEADER_NO_MARKDOWN (obligatorio corregir)
El encabezado debe ser texto sin formato: sin caracteres de formato (* _ ~ `), sin saltos de línea y sin emojis.
HEADER_MEDIA_SAMPLE (obligatorio corregir)
Un encabezado de imagen, video o documento necesita un archivo de ejemplo con el que Meta revisa la plantilla. Se aceptan: imágenes JPEG o PNG de hasta 5 MB, videos MP4 de hasta 16 MB y documentos PDF de hasta 100 MB. OmniBrand comprueba el propio archivo, no su nombre. Una plantilla creada en WhatsApp Manager necesita un ejemplo nuevo antes de poder editarla aquí.
HEADER_LOCATION_CATEGORY (obligatorio corregir)
Un encabezado de ubicación solo se permite en plantillas de Marketing y de Utilidad.
FOOTER_MAX (obligatorio corregir)
El pie puede tener como máximo 60 caracteres.
FOOTER_NO_VARS (obligatorio corregir)
El pie no puede contener variables.
VAR_SYNTAX (obligatorio corregir)
Una variable está mal escrita. Las variables numeradas se escriben {{1}}, {{2}}; las que tienen nombre, {{first_name}} (letras minúsculas, dígitos y guiones bajos). Las llaves deben coincidir, y una plantilla usa números o nombres, nunca ambos.
VAR_SEQUENTIAL (obligatorio corregir)
Las variables numeradas deben empezar en {{1}} y seguir 1, 2, 3 sin saltos, en el orden en que aparecen por primera vez.
VAR_EDGE (obligatorio corregir)
El texto empieza o termina con una variable (error de Meta 2388299). Añade palabras antes de la primera variable y después de la última, p. ej. "Hola {{1}}, tu pedido está listo." en lugar de "{{1}}, tu pedido está listo".
VAR_ADJACENT (obligatorio corregir)
Dos variables están una junto a otra con solo espacios o signos de puntuación entre ellas. Pon palabras entre ellas.
VAR_DENSITY (rechazo probable, pauta de OmniBrand)
Hay muchas variables para la longitud del texto (error de Meta 2388293). Meta no publica una proporción exacta; avisamos cuando hay menos de 3 palabras de texto fijo por variable, o cuando las variables son más del 30 % de las palabras. Añade texto o usa menos variables.
VAR_EXAMPLE (obligatorio corregir)
Cada variable necesita un valor de ejemplo realista, que leen los revisores de Meta. Un ejemplo no puede estar vacío, contener saltos de línea, tabulaciones o 4 espacios seguidos, ser otra variable ni ser un marcador como "test", "x" o "name". Usa un valor con aspecto real, como "Sara" o "A-1042".
BUTTON_COUNTS (obligatorio corregir)
Demasiados botones: como máximo 10 en total, 10 respuestas rápidas, 2 botones de sitio web, 1 botón de llamada y 1 botón de copiar código (y uno de cada uno de los botones de Flow, catálogo, lista de productos y llamada de WhatsApp). Los botones de contraseña de un solo uso son exclusivos de las plantillas de Autenticación.
BUTTON_TEXT (obligatorio corregir)
Cada botón necesita una etiqueta de 1 a 25 caracteres, sin variables, y no puede haber dos botones con la misma etiqueta.
BUTTON_GROUPING (obligatorio corregir)
Los botones de respuesta rápida deben ir juntos, no mezclados entre botones de sitio web o de llamada. Colócalos uno al lado del otro.
URL_FORMAT (obligatorio corregir)
Un botón de sitio web necesita un enlace https:// completo de como máximo 2.000 caracteres. Puede terminar con una variable, escrita {{1}}, por ejemplo https://example.com/order/{{1}}, y esa variable necesita un ejemplo (como un número de pedido) sin espacios. Codifica los espacios y los caracteres no ingleses (%20).
URL_SHORTENER (rechazo probable, pauta de OmniBrand)
El enlace usa un acortador de enlaces (bit.ly, tinyurl, t.co...). Los revisores suelen rechazarlos; usa un enlace de tu propio dominio.
PHONE_FORMAT (obligatorio corregir)
Un botón de llamada necesita el número en formato internacional con su código de país, p. ej. +966500000000, de como máximo 20 caracteres.
BUTTONS_DESKTOP (consejo)
Con más de 3 botones, WhatsApp muestra 2 y pone el resto en "Ver todas las opciones". Con 4 o más botones, o con respuestas rápidas mezcladas con otros botones, WhatsApp para escritorio no muestra la plantilla en absoluto.
CAROUSEL_SHAPE (obligatorio corregir)
Un carrusel es solo de Marketing y tiene de 2 a 10 tarjetas. Cada tarjeta tiene una imagen o un video (todas del mismo tipo), como máximo 2 botones con los mismos tipos en el mismo orden en todas las tarjetas, y un texto de tarjeta de como máximo 160 caracteres (en todas las tarjetas o en ninguna). No hay encabezado ni pie encima de las tarjetas.
LTO_SHAPE (obligatorio corregir)
Una oferta por tiempo limitado es solo de Marketing: un titular de oferta de como máximo 16 caracteres sin variables, un encabezado de imagen o video, un cuerpo de como máximo 600 caracteres, sin pie, un botón de copiar código primero (código de como máximo 15 caracteres) y como máximo un botón de sitio web después.
COUPON_SHAPE (obligatorio corregir)
Una plantilla de cupón tiene exactamente un botón de copiar código con un código de ejemplo de 1 a 20 caracteres y sin espacios.
CATALOG_SHAPE (obligatorio corregir)
Una plantilla de catálogo tiene exactamente un botón Ver catálogo, ningún otro botón y ningún encabezado (WhatsApp muestra una imagen del producto).
MPM_SHAPE (obligatorio corregir)
Una plantilla de lista de productos necesita un encabezado de texto y exactamente un botón Ver artículos. Las secciones que indicas en Productos en el creador deben ajustarse a lo que WhatsApp puede mostrar: como máximo 10 secciones y 30 productos en total, cada sección con un título de hasta 24 caracteres y al menos un ID de producto.
FLOW_SHAPE (obligatorio corregir)
Una plantilla de Flow necesita exactamente un botón de Flow que indique un Flow, y la pantalla que abre cuando navega.
CONTENT_SENSITIVE_ID (rechazo probable, pauta de OmniBrand)
El texto parece pedir un número completo de tarjeta, de cuenta, IBAN o de documento nacional de identidad. Meta los rechaza; pedir los 4 últimos dígitos está bien.
CONTENT_THREAT (rechazo probable, pauta de OmniBrand)
La redacción puede leerse como amenazante o humillante ("último aviso", "acciones legales"). Meta rechaza las plantillas abusivas o amenazantes. Redáctala de forma cortés.
CONTENT_PROHIBITED (rechazo probable, pauta de OmniBrand)
El texto menciona algo que la Política comercial de WhatsApp no permite en los mercados del Golfo: alcohol, tabaco, juegos de azar, citas, criptomonedas o préstamos. Quítalo.
DUPLICATE (rechazo probable)
Otra plantilla de esta cuenta de WhatsApp Business tiene el mismo texto. Meta rechaza los duplicados; cambia la redacción o usa la plantilla existente.
EMOJI_DENSE (rechazo probable, pauta de OmniBrand)
Más de 10 emojis en el mensaje, o 3 o más con más de un emoji cada 8 palabras. Usa menos.
MARKETING_OPT_OUT (consejo)
Una plantilla de Marketing debería ofrecer a las personas una forma de parar: añade una respuesta rápida "Detener promociones" y un pie como "Responde STOP para darte de baja".
TEMPLATE_QUOTA (obligatorio corregir)
La cuenta de WhatsApp Business alcanzó el límite de plantillas de Meta: 250 plantillas para una empresa no verificada, 6.000 para una verificada con un nombre visible aprobado (cada idioma cuenta). Elimina las plantillas que ya no uses.
EDIT_LIMIT (obligatorio corregir)
Solo se pueden editar las plantillas aprobadas, rechazadas o pausadas. Una plantilla aprobada se puede editar una vez cada 24 horas y como máximo 10 veces en 30 días; las rechazadas y pausadas no tienen límite. El mensaje indica cuántas horas faltan. Cambiar solo los ajustes propios de OmniBrand (de dónde sale el valor de una variable, su valor alternativo) no es una edición y siempre está permitido.
EDIT_CATEGORY_LOCKED (obligatorio corregir)
La categoría de una plantilla aprobada no se puede cambiar. En su lugar, crea una plantilla nueva en la otra categoría.
EDIT_WHILE_PENDING (obligatorio corregir)
La plantilla está en revisión (PENDING o IN_APPEAL) y no se puede editar hasta que Meta decida (error de Meta 2388039).
MESSAGE_TTL (obligatorio corregir)
Meta no acepta la Validez del mensaje elegida para esta categoría. Se permite: Autenticación de 30 segundos a 15 minutos, o 30 días; Utilidad de 30 segundos a 12 horas, o 30 días; Marketing de 12 horas a 30 días; siempre en segundos enteros. Corregir devuelve el campo al valor predeterminado de Meta. Al cambiar a una categoría que no acepta el período, este se quita solo.
MESSAGE_TTL_ADVICE (rechazo probable)
Un mensaje de autenticación podría llegar después de que su código haya caducado: la Validez del mensaje (o el valor predeterminado de Meta de 10 minutos) es más larga que la caducidad del código configurada en Indicar cuándo caduca el código (Minutos). Meta recomienda una validez no mayor que la caducidad del código; Corregir iguala la validez a la caducidad del código.
MESSAGE_TTL_ROUTE (consejo)
Meta aplica la validez de una plantilla de marketing a los mensajes enviados con Entrega optimizada (Marketing Messages API). Los mensajes de marketing enviados por la Cloud API normal se siguen reintentando hasta 30 días.
Relacionado
Referencias oficiales
Comprobado con el producto el 24 sept 2026