Cómo usar variables en plantillas de WhatsApp en Nuvia

Mapea los campos del contacto a las variables de una plantilla aprobada y personaliza cada mensaje de la campaña a escala, con vista previa en tiempo real.

Disponible en
Todos los planes
Quién puede hacerlo
Cualquier usuario con acceso al módulo Campañas

Las variables de plantilla permiten que una campaña envíe la misma estructura de mensaje a cientos de contactos, con el nombre, la empresa o el cargo cambiados para cada destinatario. Vinculas cada espacio dinámico (#{{1}}, #{{2}}, #{{3}}) de la plantilla a un campo del contacto una sola vez, dentro de la etapa de la campaña, y cada persona recibe un mensaje que parece escrito solo para ella.

Disponible en: Todos los planes.

Quién puede hacerlo: Cualquier usuario con acceso al módulo Campañas.


Lo que necesitas antes de empezar

  • Al menos un inbox de WhatsApp conectado en la plataforma

  • Al menos una plantilla aprobada por Meta asociada al inbox que vas a usar, con variables de texto (#{{1}}, #{{2}}, etc.). La creación de plantillas se detalla en: Cómo crear plantillas de WhatsApp con variables

  • Los contactos de la audiencia con los campos que se van a mapear completados (si vas a vincular #{{1}} al nombre, los contactos necesitan tener el campo Nombre completado). Cuando el dato puede faltar, usa el texto predeterminado que se describe más abajo

  • Acceso al módulo Campañas en la navegación lateral


Configurar variables en una etapa de la campaña

El mapeo ocurre en el Paso 3: Secuencia de mensajes de la creación de la campaña. Cada etapa de la secuencia tiene su propia plantilla y su propio mapeo, independiente de las demás.

  1. En la navegación lateral, haz clic en Campañas

  2. Haz clic en Nueva campaña, o abre una campaña existente en estado Borrador

  3. Completa el nombre, selecciona el canal WhatsApp y configura la audiencia en los pasos anteriores

  4. En el Paso 3, haz clic en Agregar etapa

  5. En el campo Conexión, selecciona el inbox (el remitente) en el desplegable

  6. En Tipo de envío, selecciona Plantilla

  7. Haz clic en Seleccionar plantilla. El desplegable muestra solo las plantillas aprobadas del inbox elegido

  8. Elige la plantilla. La plataforma muestra las variables identificadas (ej.: #{{1}}, #{{2}})

  9. Para cada variable, elige en el desplegable el campo del contacto correspondiente (si los campos de las variables ya se mapearon al crear la plantilla, no es necesario asignarlos):

    • Nombre, Correo, Teléfono, País (campos fijos)

    • Campos personalizados creados por el admin de la empresa

  10. Si quieres, completa el Texto predeterminado de las variables: el texto que entra en el mensaje cuando el contacto no tiene ese dato

  11. Sigue la vista previa lateral, que se actualiza en tiempo real con los datos de un contacto real de la audiencia

[GIF: Seleccionando una plantilla en la campaña]


Verificar el mapeo en la vista previa

La vista previa lateral usa datos reales de contactos de la audiencia, no ejemplos ficticios. Así verificas cómo le llegará el mensaje a cada prospecto antes de lanzar.

  1. En la lista de etapas, haz clic en la etapa que quieres revisar. La vista previa lateral se actualiza sola

  2. Usa las flechas Anterior y Siguiente en la vista previa para pasar por diferentes contactos de la audiencia

  3. Verifica que todas las variables aparezcan con el valor correcto para cada contacto

  4. Si alguna variable aparece vacía, la plataforma muestra un aviso de mapeo incompleto. Corrígelo antes de lanzar

La vista previa ya aplica el formato de WhatsApp: negrita (*texto*), cursiva (_texto_) y los saltos de línea aparecen como los verá el destinatario en la aplicación.

El valor de cada campo entra en la vista previa exactamente como está registrado, incluso cuando tiene símbolo de moneda o puntuación (ej.: R$ 1.200,00). El texto que ves en la vista previa es el mismo texto que sale para el lead.

Verificar el mapeo en la vista previa

Campos disponibles para el mapeo

Campos fijos del contacto

Disponibles para todos los contactos de la plataforma:

CampoEjemplo de uso en la plantilla
Nombre “¡Hola, #{{1}}! ¿Cómo estás?” se convierte en “¡Hola, Juan! ¿Cómo estás?”
Correo “Envié un material a #{{1}}”
Teléfono Se usa poco, ya que el envío va al número del contacto
País “Vi que estás en #{{1}}…”

La plataforma también ofrece campos derivados del nombre completo, como nombre y apellido.

Campos personalizados

Campos creados por el admin de la empresa, que aparecen en el desplegable de mapeo. Tanto los campos con contexto Contacto como los campos con contexto Mixto aparecen en el editor de mensajes de la campaña:

Ejemplo de campoEjemplo de uso
Empresa “Vi que trabajas en #{{1}}…”
Cargo “Como #{{1}}, seguramente lidias con…”
Segmento “Atendemos a muchas empresas del sector de #{{1}}…”
Ciudad “¡Qué bueno hablar con alguien de #{{1}}!”

Componentes de plantilla compatibles

No todos los componentes de una plantilla aceptan variables. Esto es lo que aplica:

EstadoComponenteCompatibilidad con variables
✅ Header (texto) Acepta 1 variable (#{{1}})
✅ Body Componente principal, acepta varias variables (#{{1}}, #{{2}}, etc.)
❌ Footer No acepta variables, es solo texto fijo (regla de Meta)
❌ Botones con texto fijo No usan variables
⚠️ Botones de URL dinámica Compatibilidad limitada. Confirma con soporte si tu inbox y tu plan cubren este caso

Qué pasa al momento del envío

Las variables se resuelven al momento del envío de cada etapa, y no en el lanzamiento de la campaña. En la práctica:

  • La plataforma busca los datos actuales del contacto cuando llega la hora de enviar esa etapa

  • Si el campo del contacto cambia entre una etapa y otra, la siguiente etapa usa el valor actualizado

  • El valor del campo se inserta en el texto exactamente como está registrado, sin ningún tratamiento extra de caracteres

  • Si un contacto no tiene el campo mapeado completado y la variable no tiene texto predeterminado, el mensaje no se le envía y la inscripción se cierra como falla

  • Si la variable tiene texto predeterminado, el mensaje sale normalmente, con ese texto en lugar de la variable


Texto predeterminado: enviar aunque el contacto no tenga el dato

Que falten datos es rutina: un lead nuevo no tiene ciudad, un contacto que llegó por formulario no tiene empresa en los primeros segundos. Antes, una sola variable vacía tumbaba todo el mensaje de ese contacto. Con el texto predeterminado, defines qué entra en lugar de la variable, y el mensaje sale.

Dónde completarlo

El bloque Texto predeterminado de las variables aparece dentro de la etapa, tanto en el Paso 3 de la creación (en Agregar etapa) como al crear o editar una etapa en la pantalla de la campaña. Sirve para los dos tipos de envío:

  • Plantilla: el bloque aparece después de que seleccionas la plantilla, con un campo por variable de la plantilla

  • Texto: el bloque aparece debajo del campo de mensaje, con un campo por variable que escribiste

Cada campo se identifica por el nombre de la variable (ej.: #{{var_contact_city}}), y el subtítulo del bloque resume la regla: “Opcional. Si el contacto no tiene el dato, el mensaje se envía con este texto en lugar de la variable, en vez de no enviarse.”

  1. Configura la etapa normalmente (inbox, tipo de envío, plantilla o texto)

  2. En el bloque Texto predeterminado de las variables, completa el campo de la variable que quieres proteger (ej.: para la ciudad, escribe tu región)

  3. Deja en blanco las variables que no quieres proteger. Un campo vacío significa “sin texto predeterminado”, es decir, el comportamiento anterior

  4. Guarda la etapa

Qué hace y qué no hace el texto predeterminado

SituaciónQué pasa
Contacto sin el campo completado, variable con texto predeterminado El mensaje se envía con el texto predeterminado en lugar de la variable
Contacto con el campo existente, pero vacío Igual que el caso anterior: el texto predeterminado también entra
Contacto sin el campo completado, variable sin texto predeterminado Sigue como antes: el envío falla y la falla nombra el campo
Contacto con el campo completado El valor real del contacto siempre gana. El texto predeterminado solo entra cuando falta el dato
Variable de columna de lista (var_col_) El texto predeterminado no aplica. Una columna de lista vacía sigue tumbando el envío
Plantilla enviada manualmente desde una conversación El texto predeterminado no aplica: es una configuración de la etapa de la campaña

Reglas de llenado

El texto predeterminado se valida cuando guardas la etapa. Tres cosas hacen que la plataforma lo rechace:

ReglaMensaje de error
Sin saltos de línea, tabulaciones ni más de cuatro espacios seguidos “El texto predeterminado de X no puede tener saltos de línea, tabulaciones ni más de cuatro espacios seguidos.”
Un texto predeterminado solo no puede superar el límite de caracteres del mensaje “El texto predeterminado de X supera el límite del mensaje: caben N caracteres.”
La suma de todos los textos predeterminados de la etapa no puede superar el límite “Los textos predeterminados sumados superan el límite del mensaje: caben N caracteres para todos juntos.”

El cálculo ya descuenta el espacio del propio #{{…}}, que desaparece cuando entra el texto predeterminado. El campo también limita lo que puedes escribir según el espacio disponible, como orientación: el rechazo definitivo lo hace la plataforma al guardar.


Límites y reglas

ReglaValor
Número de variables por plantilla Definido al crear y aprobar la plantilla. Nuvia no agrega un límite propio al mapeo
Límite de caracteres El cuerpo del mensaje, ya con las variables completadas, no puede superar los 1.024 caracteres (límite de Meta)
Tipos de variable Solo variables de texto (#{{n}}). Las variables multimedia (imagen, video, documento) necesitan una configuración aparte
Origen de los datos Solo campos del contacto (fijos o personalizados). No se puede ingresar texto libre como valor
Texto predeterminado por variable Opcional, definido en la etapa de la campaña. Aplica a etapas de plantilla y de texto. No aplica a variables de columna de lista (var_col_) ni a plantillas enviadas manualmente desde la conversación
Caracteres no permitidos en el texto predeterminado Salto de línea, tabulación y más de cuatro espacios seguidos
Longitud del texto predeterminado Cada texto predeterminado, y la suma de todos los de la etapa, tiene que caber en el límite de caracteres del mensaje. En etapas de plantilla la longitud no se valida al guardar, solo las reglas de caracteres
Caracteres especiales en el valor El valor del campo entra en el mensaje exactamente como está registrado, incluidos el símbolo de moneda y la puntuación (ej.: R$ 1.200,00). No hace falta escapar nada, y la vista previa muestra el mismo texto que sale para el lead
Plantillas disponibles Solo plantillas con estado Aprobada por Meta
Filtro por inbox El desplegable muestra solo las plantillas del inbox seleccionado en la etapa
Después de la activación El mapeo y el texto predeterminado forman parte del contenido de la etapa y no se pueden cambiar después de que la campaña pasa al estado Activa
Recomendación De 2 a 3 variables por plantilla. Meta también rechaza plantillas con demasiadas variables para el tamaño del mensaje
Variables en los bordes El cuerpo no puede empezar ni terminar con una variable, aunque esté seguida o precedida de puntuación (ej.: #{{1}}?, ? #{{1}}). La plataforma bloquea el guardado con el mensaje “El cuerpo del mensaje no puede empezar ni terminar con variables”

Preguntas frecuentes

Preguntas frecuentes

¿Qué pasa si el contacto no tiene el campo mapeado completado?

Depende de si definiste un texto predeterminado para esa variable. Con texto predeterminado, el mensaje se envía normalmente, con el texto en lugar de la variable. Sin texto predeterminado, el mensaje no se envía a ese contacto y la falla nombra el campo vacío con su etiqueta amigable (ej.: “No fue posible enviar la plantilla: Nombre de la empresa está vacío en este lead. Completa el campo e intenta de nuevo.”). La plataforma nunca envía una plantilla con una variable en blanco. Otra forma de evitar la falla es filtrar la audiencia para incluir solo contactos con el campo completado antes de lanzar.

¿Cómo hago para que el mensaje salga aunque el contacto no tenga el dato?

Completa el bloque Texto predeterminado de las variables en la etapa. Para cada variable escribes el texto que entra cuando el contacto no tiene ese campo (ej.: “tu región” para la ciudad). Un campo en blanco significa “sin texto predeterminado” y mantiene el comportamiento anterior: una variable vacía tumba el envío de ese contacto.

¿El texto predeterminado también aplica cuando el campo existe pero está vacío?

Sí. Tanto el campo que no existe en el contacto como el campo registrado en blanco activan el texto predeterminado.

Si el contacto tiene el dato, ¿el texto predeterminado molesta?

No. El valor real del contacto siempre gana. El texto predeterminado solo se usa cuando falta el dato.

¿El texto predeterminado aplica a las variables de columna de lista?

No. Las variables de columna de lista (var_col_) se resuelven por otro camino y siguen tumbando el envío cuando la columna está vacía en ese contacto. Asegúrate de que la columna esté completada en la Lista antes de lanzar.

¿Puedo definir texto predeterminado para una plantilla que envío manualmente desde la conversación?

No. El texto predeterminado es una configuración de la etapa de la campaña. En el envío manual de una plantilla desde la conversación, la variable vacía sigue bloqueando el envío, con un mensaje claro para el agente.

¿Puedo usar texto fijo como valor de una variable?

No. El mapeo acepta solo campos del contacto, fijos o personalizados. Si necesitas un valor fijo en una posición de la plantilla, incluye el texto directamente en la plantilla al enviarla a aprobación de Meta, no como variable. El texto predeterminado es diferente: no reemplaza el mapeo, solo entra cuando el campo mapeado está vacío.

¿Puedo usar el símbolo de moneda (R$) en el valor de una variable?

Sí. El valor del campo se inserta en el mensaje exactamente como está registrado en el contacto o en la columna de la lista: R$ 1.200,00 llega como R$ 1.200,00. Esto vale tanto para el texto que sale para el lead como para la vista previa, que muestra el mismo resultado. Lo mismo aplica a cualquier otra puntuación en el valor del campo.

¿Puedo usar la misma plantilla en varias etapas de la campaña?

Sí. Puedes seleccionar la misma plantilla aprobada en varias etapas, con mapeos iguales o diferentes. Esto ayuda en secuencias de seguimiento, en las que la estructura del mensaje es parecida, pero el contexto cambia.

¿Puedo cambiar el mapeo después de lanzar la campaña?

No. Después de la activación, el contenido de las etapas, incluidos el mapeo y el texto predeterminado, queda bloqueado. Para corregirlo, pausa y archiva la campaña actual y crea una nueva con el mapeo correcto.

Si el nombre del contacto se actualiza después del lanzamiento, ¿qué valor se envía?

El valor al momento del envío de la etapa, es decir, el más reciente. La plataforma busca los datos actuales del contacto en cada ejecución de etapa y no congela los datos en el lanzamiento.

Si una etapa falla por una variable vacía, ¿el contacto sigue en las próximas etapas?

No. Cuando el envío de una etapa falla por una variable vacía, la inscripción de ese contacto se cierra y las etapas siguientes no se ejecutan para él. Por eso el texto predeterminado tiene que estar definido en la etapa antes del envío.

¿Qué pasa si cambio la plantilla después de mapear las variables?

La plataforma borra todos los mapeos anteriores. Cada plantilla puede tener variables con significados diferentes, así que hay que rehacer el mapeo desde cero para la nueva plantilla.

¿Hay un límite de envíos por minuto cuando uso variables?

No. Las variables no cambian la velocidad de envío. Aplican los mismos límites de cualquier campaña de WhatsApp: la capacidad del inbox y los límites de la API.

¿La vista previa muestra exactamente lo que recibirá el contacto?

La vista previa muestra el mensaje renderizado, con las variables reemplazadas y el formato de WhatsApp aplicado. No muestra el payload técnico (JSON) enviado a la API. Para una auditoría técnica, consulta el historial de ejecuciones después del envío.

¿La plantilla puede empezar o terminar con una variable?

No. Meta rechaza las plantillas cuyo cuerpo empieza o termina con una variable, y la plataforma lo valida antes del envío, incluso cuando la variable viene con puntuación, como #{{1}}? o #{{1}}!. Si aparece el error “El cuerpo del mensaje no puede empezar ni terminar con variables”, mueve la variable al medio del texto.

¿Te ayudó este artículo?