La plantilla líquida te permite crear mensajes personalizados con lógica avanzada, como mostrar contenido diferente según la ubicación del cliente, usar texto de respaldo cuando faltan datos, o formatear fechas y precios dinámicamente. Usa Liquid en campañas de Correo electrónico, SMS y notificaciones push.
Antes de empezar
La plantillas líquidas funcionan en Campañas y Automatización – Correo electrónico, SMS y Notificaciones Push admiten objetos y filtros líquidos.
Prueba la personalización antes de enviar – Los correos de prueba muestran etiquetas Liquid en bruto (
[[ contact.first_name ]]). UsarPrueba y Vista Previa en el editor y selecciona un contacto real para ver cómo se llena la personalización.Siempre añade valores de fallback – Usa
| por defecto: 'texto' para evitar espacios en blanco cuando faltan datos de contacto.Omnisend utiliza una sintaxis Liquid modificada – Reemplaza las llaves de Shopify
{{ }} con corchetes cuadrados[[ ]].
💡 ¿Nuevo en la personalización? Comienza con personalización estándar antes de usar Liquid. Liquid es para casos de uso avanzados.
Resumen: ¿Qué es Liquid?
Liquid es un lenguaje de plantillas de código abierto creado por Shopify. Te permite insertar contenido dinámico en mensajes usando tres elementos:
Objetos – Variables que generan datos de contacto o pedido (
[[ contact.first_name ]])Etiquetas – Lógica y flujo de control (
[% if contact.country == 'France' %])Filtros – Modificar salida (
[[ contact.first_name | capitalize ]])
Omnisend utiliza una versión modificada de Liquid:
Objetos: Usa
[[ ]] en lugar de{{ }} - Ejemplo:[[ contact.first_name ]]Etiquetas: Usa
[% %] en lugar de{% %} - Ejemplo:[% if contact.country == 'France' %]
📝 Aprende más sobre Liquid en la documentación de Shopify y recuerda reemplazar las llaves con corchetes en Omnisend.
Objetos
Los objetos son variables que generan contenido dinámico a partir de perfiles de contacto, pedidos o la configuración de tu cuenta. Los objetos siempre están encerrados en dobles corchetes cuadrados.
[[ contact.first_name ]]
Grupos de objetos disponibles:
Propiedades de Contacto:
[[ contact.variable ]] (nombre, correo electrónico, ubicación, propiedades personalizadas)Propiedades de la Cuenta:
[[ account.variable ]] (nombre de la tienda, sitio web, moneda)Propiedades del pedido:
[[ order.variable ]] (ID de pedido, total, artículos) – Automatización Workflows soloPropiedades del carrito:
[[ cart.variable ]] (URL del carrito abandonado) – Automatización de flujos de trabajo solamentePropiedades de fecha:
[[ current_date ]] (día, mes, año actual)
Ver la Tabla de Referencia de Objetos completa a continuación.
Filtros
Los filtros cambian la salida de un objeto Liquid. Los filtros están separados por un símbolo de barra vertical |.
Ejemplo:
[[ 'mywebsite.com/orders/' | append: order.order_id ]]
Filtros comunes:
default – Añadir texto de fallback cuando faltan datos:
[[ contact.first_name | default: 'there' ]]capitalize – Capitalizar la primera letra:
[[ contact.city | capitalize ]]upcase – Convertir a mayúsculas:
[[ contact.country | upcase ]]agregar – Añadir texto al final:
[[ account.website | append: '/sale' ]]date – Formatear fechas:
[[ current_date | date:'%B %d, %Y' ]] → "13 de mayo de 2026"vocative – Ajustar nombres a la forma vocativa en idiomas compatibles:
[[ contact.first_name | vocative ]]
Aprende más sobre filtros Liquid en la documentación de Shopify – recuerda usar la sintaxis de Omnisend [[ ]].
Etiquetas (Solo Automatización)
Las etiquetas crean lógica y controlan el flujo en los mensajes. Las etiquetas están encerradas en [% %] llaves y no producen texto visible.
Ejemplo:
[% if contact.first_name %] Hi [[ contact.first_name ]] [% endif %]
⚠️ Las etiquetas solo funcionan en Automatización – no en Campañas. Aprende más sobre etiquetas Liquid en la documentación de Shopify.
Casos de uso comunes
Aquí hay varios casos de uso comunes útiles para la sintaxis de Liquid:
Personalización
Hi [[ contact.first_name ]], welcome to Omnisend!
Salida: "¡Hola Sarah, bienvenida a Omnisend!"
💡 Consejo: Este filtro ajusta automáticamente el nombre a su forma vocativa en los idiomas compatibles, haciendo que tus mensajes suenen más naturales y personales. Esto se puede lograr utilizando personalización vocativa: [[ contact.first_name | vocative ]]
Personalización con Fallback
Hi [[ contact.first_name | default: 'there' ]], welcome to Omnisend!
Salida (si falta el nombre): "¡Hola, bienvenido a Omnisend!"
💡 ¿Por qué usar fallbacks?
Si el perfil de un contacto falta datos (por ejemplo, sin nombre), las etiquetas de personalización mostrarán espacios en blanco. Los fallbacks previenen esto:
Con respaldo:
Hola [[ contact.first_name | default: 'ahí' ]] → "Hola ahí"Sin fallback:
Hola [[ contact.first_name ]] → "Hola "
Siempre añade fallbacks para evitar espacios en blanco incómodos.
Inserción de variables en mensajes
Inserta variables Liquid en:
Líneas de asunto del correo electrónico:
¡No olvides tu carrito, [[ contact.first_name ]]!Texto del cuerpo del correo electrónico:
El total de su pedido: [[ order.total_price ]] [[ order.currency ]]Mensajes SMS:
¡Hola [[ contact.first_name ]], su pedido #[[ order.order_number ]] ha sido enviado!Notificaciones push:
[[ contact.first_name ]], 20% de descuento termina hoyEnlaces de botones:
[[ account.website ]]/orders/[[ order.order_id ]]
Lógica condicional (solo automatizaciones)
Utiliza declaraciones condicionales para mostrar contenido diferente según los datos de contacto.
Localización de idioma
[% if contact.custom_properties.language == 'Spanish' %] Hola [[ contact.first_name ]]! [% elsif contact.custom_properties.language == 'French' %] Bonjour [[ contact.first_name ]]! [% else %] Hi [[ contact.first_name ]]! [% endif %]
Contenido basado en ubicación
[% if contact.country == 'UK' or contact.country == 'Ireland' %] Have you visited our newest flagship store in London? [% endif %]
Formato
Capitalizar la primera letra
Hi [[ contact.first_name | capitalize ]]
Salida: "Hola sarah" → "Hola Sarah"
Agregar texto personalizado
[% assign campaign_destination = '/landing_page.html' %] [[ account.website | append: campaign_destination ]]
Salida: "www.yourstore.com/landing_page.html
Formato de fechas
Omnisend © [[ current_date | date:'%Y' ]]
Salida: "Omnisend © 2026"
Opciones de formato de fecha:
%d – Día (13)%A – Nombre del día (miércoles)%m – Número del mes (05)%B – Nombre del mes (mayo)%Y – Año (2026
Tabla de Referencia de Objetos
Propiedades de Contacto
Título del menú desplegable | Etiqueta | Tipo de valor | Descripción |
Correo electrónico |
| cadena | Correo electrónico de contacto |
Nombre |
| cadena | Nombre de pila del contacto |
Apellido |
| cadena | Apellido del contacto |
Ciudad |
| cadena | Ciudad del contacto |
País |
| cadena | País del contacto |
Estado | [[ contact.state ]] | cadena | Estado del contacto |
Código postal | [[ contact.postal_code ]] | cadena | Código postal del contacto |
Enlace para darse de baja | [[ unsubscribe_link ]] | – | Enlace del contacto para darse de baja |
Enlace del centro de preferencias |
| – | enlace de preferencia de Contacto |
Propiedades personalizadas |
| objeto | Propiedades personalizadas del contacto |
Número de teléfono |
| cadena | Número de teléfono del contacto |
Propiedades de la Cuenta
Título del desplegable | Etiqueta | Tipo de valor | Descripción |
Correo electrónico |
| cadena | Correo electrónico de contacto |
Nombre |
| cadena | Nombre del contacto |
Apellido |
| cadena | Apellido del contacto |
Ciudad |
| cadena | Ciudad del contacto |
País |
| cadena | País del contacto |
Estado | [[ contact.state ]] | cadena | Estado del contacto |
Código postal | [[ contact.postal_code ]] | cadena | Código postal del contacto |
Enlace para darse de baja | [[ unsubscribe_link ]] | – | Enlace del contacto para darse de baja |
Enlace del centro de preferencias |
| – | enlace de preferencia de Contacto |
Propiedades personalizadas |
| objeto | Propiedades personalizadas del contacto |
Número de teléfono |
| cadena | Número de teléfono del contacto |
Propiedades de la Cuenta
Título del desplegable | Etiqueta | Tipo de valor | Descripción |
Nombre |
| cadena | Nombre de la cuenta |
Dirección |
| cadena | Dirección de la cuenta |
Ciudad |
| cadena | Ciudad de la cuenta |
Código ZIP / Postal |
| cadena | Código ZIP / Postal de la cuenta |
País |
| cadena | País de la cuenta |
URL del sitio web |
| cadena | URL del sitio web de la cuenta |
Zona horaria |
| cadena | Zona horaria de la cuenta |
Moneda |
| cadena | Moneda de la cuenta |
Propiedades de fecha
Título del menú desplegable | Etiqueta | Tipo de valor | Descripción |
Día actual |
| - | El día en que se realiza la acción |
Nombre del día actual |
| - | El día en que se realiza la acción |
Mes actual |
| - | El mes en que se realiza la acción |
Nombre del mes actual |
| - | El nombre del mes en que se realiza la acción |
Año actual |
| - | El año actual en que se realiza la acción |
Propiedades del Pedido (Solo Automatización)
Título del menú desplegable | Etiqueta | Tipo de valor | Descripción |
ID del pedido |
| cadena | ID del pedido |
Número de pedido |
| int64 | Número del pedido |
Nombre del pedido |
| cadena | Nombre del pedido |
Fecha del pedido |
| Fecha | Fecha en que se crea el pedido |
Moneda |
| cadena | Moneda del pedido |
Precio total |
| int64 | Suma total del pedido |
Precio subtotal |
| int64 | Suma subtotal del pedido |
Descuento |
| int64 | Descuento del pedido |
Precio de envío |
| int64 | Precio de envío del pedido |
URL de estado del pedido |
| cadena | URL para acceder a la información exacta del pedido |
Nota del pedido |
| cadena | Notas adicionales del pedido |
Dirección de Facturación (Solo Automatización)
Título del desplegable | Etiqueta | Tipo de valor | Descripción |
Nombre |
| cadena | Nombre del contacto proporcionado en la dirección de facturación |
Apellido |
| cadena | Apellido del contacto proporcionado en la dirección de facturación |
País |
| cadena | País del contacto proporcionado en la dirección de facturación |
Código de país |
| cadena | Código de país del contacto proporcionado en la dirección de facturación |
Estado |
| cadena | Estado del contacto proporcionado en la dirección de facturación |
Código de estado |
| cadena | Código de estado del contacto proporcionado en la dirección de facturación |
Ciudad |
| cadena | Ciudad del contacto proporcionada en la dirección de facturación |
Dirección 1 y |
| cadena | Dirección del contacto (1ra línea) proporcionada en la dirección de facturación |
Dirección 2 |
| cadena | Dirección del contacto (2da línea) proporcionada en la dirección de facturación |
Código postal |
| cadena | Código postal del contacto proporcionado en la dirección de facturación |
Empresa |
| cadena | Título de la empresa del contacto proporcionado en la dirección de facturación |
Teléfono |
| cadena | Número de teléfono del contacto proporcionado en la dirección de facturación |
Dirección de Envío (Solo Automatización)
Título del menú desplegable | Etiqueta | Tipo de valor | Descripción |
Nombre de pila |
| cadena | Nombre de pila del contacto proporcionado en la dirección de envío |
Apellido |
| cadena | Apellido del contacto proporcionado en la dirección de envío |
País |
| cadena | País del contacto proporcionado en la dirección de envío |
Código de país |
| cadena | Código de país del contacto proporcionado en la dirección de envío |
Estado |
| cadena | Estado del contacto proporcionado en la dirección de envío |
Código de estado |
| cadena | Código de estado del contacto proporcionado en la dirección de envío |
Ciudad |
| cadena | Ciudad del contacto proporcionada en la dirección de envío |
Dirección 1 y |
| cadena | Dirección del contacto (1ª línea) proporcionada en la dirección de envío |
Dirección 2 |
| cadena | Dirección del contacto (2ª línea) proporcionada en la dirección de envío |
Código postal |
| cadena | Código postal proporcionado por el contacto en la dirección de envío |
Compañía |
| cadena | Título de la compañía del contacto proporcionado en la dirección de envío |
Teléfono |
| cadena | Número de teléfono del contacto proporcionado en la dirección de envío |
Propiedades del Carrito (Solo Automatización)
Título del desplegable | Etiqueta | Tipo de valor | Descripción |
URL del carrito abandonado |
| cadena | URL para alcanzar/recuperar el carrito abandonado |
Solución de problemas
La personalización muestra código en bruto en los correos
Causa: Estás viendo un correo electrónico de prueba en lugar de un correo electrónico en vivo.
Solución: Los correos electrónicos de prueba siempre muestran etiquetas Liquid en bruto ([[ contact.first_name ]]). Para probar la personalización:
Utiliza Prueba y Vista Previa en el editor y selecciona un contacto real.
O envía la campaña/automatización en vivo a tu propio correo electrónico (asegúrate de que tu perfil de contacto tenga datos).
La personalización no se transforma en correos en vivo
Causa: La etiqueta Liquid puede haber perdido integridad si se edita parcialmente.
Solución: Elimina toda la etiqueta de personalización y reinserta utilizando el menú de Etiqueta de Personalización en el editor.
El texto de respaldo no funciona
Causa: Sintaxis incorrecta o comillas faltantes.
Solución: Asegúrese de que los valores de respaldo estén entre comillas:
✅
[[ contact.first_name | default: 'there' ]]❌
[[ contact.first_name | default: there ]]
La lógica condicional no funciona en Campañas
Causa: Las etiquetas y las declaraciones condicionales solo funcionan en Flujos de Trabajo de Automatización.
Solución: Use lógica condicional en automatizaciones – no en Campañas.
FAQ
¿Puedo usar Liquid en SMS y Notificaciones Push?
Sí. Los objetos y filtros de Liquid funcionan en Correo electrónico, SMS y notificaciones push. La lógica condicional solo funciona en Automatización.
¿Cuál es la diferencia entre {{ }} y [[ ]]?
Shopify utiliza {{ }} para objetos Liquid. Omnisend utiliza [[ ]]. Si estás copiando código Liquid de la documentación de Shopify, reemplaza las llaves por corchetes.
¿Necesito agregar valores de respaldo?
Sí. Siempre agrega alternativas para evitar espacios en blanco cuando faltan datos de contacto:
[[ contact.first_name | default: 'there' ]]
¿Puedo combinar múltiples filtros?
Sí. Encadene filtros con símbolos |:
[[ contact.first_name | capitalize | default: 'there' ]]
¿Dónde puedo encontrar más ejemplos de Liquid?
Aprende más en la documentación de Liquid de Shopify – recuerda reemplazar {{ }} con [[ ]] y {% %} con [% %] en Omnisend.
Puedes contactar a nuestro galardonado Equipo de Soporte para cualquier asistencia adicional a través del chat en la aplicación o en [email protected].
