# ¿Por qué veo "Error in liquid syntax"?

> Cómo solucionar el TokenizationError causado por caracteres especiales como paréntesis, barras o dos puntos dentro de los tokens de personalización.

## Qué Significa Este Error

SecureMailMerge usa el [lenguaje de plantillas Liquid](https://liquidjs.com/) para procesar tus tokens de personalización. Liquid trata todo lo que está dentro de llaves (por ejemplo, \{\{...\}\}) como código, no como texto plano. Cuando un nombre de columna contiene caracteres especiales, Liquid intenta interpretarlos como operadores de programación y falla.

Por ejemplo, si tu hoja de cálculo tiene una columna llamada **Date(s)** y escribes `{{Date(s)}}` en tu correo, Liquid ve:

- `Date`, un nombre de variable
- `(s)`, lo que parece una llamada a función o expresión de rango

Esto provoca el error:

> TokenizationError: invalid range syntax
## Caracteres Que Causan Este Error

Los siguientes caracteres tienen un significado especial en Liquid y causarán errores cuando se usen dentro de llaves:

| Carácter | Lo que Liquid piensa que significa |
|-----------|---------------------------|
| `(` `)` | Expresión de rango o agrupación |
| `/` | Operador de división |
| `:` | Separador de argumentos de filtro |
| `+` `-` `*` | Operadores aritméticos |

Así que una columna llamada `Date(s)` o `Day(s)/Date(s):` fallará porque Liquid intenta interpretar estos caracteres como código.
## Cómo solucionarlo

### Opción 1: Usa el menú desplegable de columnas (recomendado)

La solución más fácil es usar el **personalization token dropdown** en SecureMailMerge en lugar de escribir el token manualmente. El menú desplegable automáticamente envuelve los nombres de columnas que contienen caracteres especiales en la sintaxis de escape correcta:

`{{ ["Date(s)"] }}`

Los corchetes y las comillas indican a Liquid que trate toda la cadena como un nombre de columna en lugar de código. Simplemente selecciona la columna del menú desplegable y haz clic en el botón para insertarla en tu asunto o cuerpo.

### Opción 2: Corrige la sintaxis manualmente

Si prefieres escribir los tokens tú mismo, envuelve los nombres de columnas que contienen caracteres especiales en `["..."]`:

| Incorrecto | Correcto |
|------------|----------|
| `{{Date(s)}}` | `{{ ["Date(s)"] }}` |
| `{{Day(s)/Date(s):}}` | `{{ ["Day(s)/Date(s):"] }}` |
| `{{Time(s):}}` | `{{ ["Time(s):"] }}` |

### Opción 3: Cambia el nombre de las columnas de tu hoja de cálculo

Puedes evitar este problema por completo renombrando tus columnas para usar solo letras, números y guiones bajos:

| Antes | Después |
|-------|---------|
| `Date(s)` | `Dates` |
| `Day(s)/Date(s):` | `Day_Dates` |
| `Time(s):` | `Times` |

Después de renombrar, tokens simples como `{{Dates}}` funcionarán sin ninguna sintaxis especial.
## Relacionado

- [¿Por qué veo "ParseError: unexpected token"?](https://es.securemailmerge.com/help/error-parse-error/)
- [Creando tu plantilla de combinación de correspondencia](https://es.securemailmerge.com/help/creating-a-mail-merge-template/)
- [¿Por qué mi hoja de cálculo muestra un error de "illegal characters"?](https://es.securemailmerge.com/help/illegal-characters-in-column-headers/)
