Nivel: principiante. Proyecto: un contacto ficticio. Verificado: n8n 2.44.5, 21 de octubre de 2026. Ejemplos ejecutados con datos ficticios.

Un formulario puede entregar el mismo nombre escrito con espacios de más y un correo con mayúsculas. Si guardas esos valores sin revisarlos, las búsquedas y las comparaciones posteriores se vuelven menos fiables. En este proyecto construirás un flujo que convierte un contacto de ejemplo en tres campos uniformes.

No vas a conectar un formulario real ni una base de datos: primero comprobarás la transformación en n8n. Así podrás entender lo que ocurre antes de añadir credenciales o trabajar con información de clientes.

Qué necesitas

n8n funcionando en tu navegador y el archivo 01-limpiar-contacto.json. La prueba se ha realizado con n8n 2.44.5 y las capturas muestran esa ejecución. El proyecto solo contiene un disparador manual y dos nodos Edit Fields; no envía correos.

1. Importa el proyecto

Abre un workflow nuevo e importa el JSON desde el menú del editor. Comprueba que aparecen tres nodos conectados: Ejecutar prueba → Contacto de ejemplo → Normalizar contacto. Conserva el flujo sin publicar: su disparador es manual.

Si prefieres construirlo, añade Manual Trigger y dos nodos Edit Fields. Los nombres de los nodos son etiquetas del ejemplo; puedes cambiarlos sin alterar la idea del flujo.

Flujo de n8n con disparador manual, datos de contacto y nodo de normalización.
Flujo de n8n con disparador manual, datos de contacto y nodo de normalización.

2. Revisa los datos de entrada

El nodo Contacto de ejemplo tiene tres campos de tipo String: nombre, email y ciudad. El nombre contiene Ana López ; el correo, ANA.LOPEZ@EXAMPLE.COM ; la ciudad, Valencia . Los espacios son intencionados. No los corrijas todavía: sirven para comprobar si el siguiente nodo hace su trabajo.

3. Configura la transformación

En Normalizar contacto, cada campo utiliza una expresión. Para el nombre y la ciudad usamos {{ $json.nombre.trim() }} y {{ $json.ciudad.trim() }}. Para el correo, {{ $json.email.trim().toLowerCase() }}.

$json representa los datos del elemento que recibe el nodo. trim() elimina espacios al principio y al final; no borra el espacio entre Ana y López. toLowerCase() convierte el correo a minúsculas. Es una decisión de normalización de este ejemplo, no una comprobación de que la dirección exista.

4. Ejecuta y comprueba

Ejecuta el workflow manualmente y abre la salida de Normalizar contacto. El resultado esperado es nombre Ana López, email ana.lopez@example.com y ciudad Valencia.

Cambia ahora los datos a Luis Pérez , LUIS@EXAMPLE.COM y Madrid . Vuelve a ejecutar todo el flujo y compara la entrada y la salida. La segunda prueba permite comprobar que no estamos mostrando un resultado fijo.

Si la salida no coincide

Si ves las llaves de la expresión como texto, revisa que el campo esté en modo Expression. Si aparece que no puede leerse una propiedad, comprueba el nombre del campo y ejecuta el nodo anterior. Este ejemplo espera textos: un valor ausente o un número necesita una regla adicional antes de llamar a trim().

Qué has construido y qué falta

Ya tienes una etapa de limpieza que puedes colocar entre un formulario y una herramienta de destino. Todavía no valida correos, detecta duplicados ni decide qué hacer con contactos incompletos. Esas reglas deben diseñarse antes de usarlo con datos reales.

Documentación oficial de n8n

Resultados comprobados y capturas reales

Comprobado: Ana López / ana.lopez@example.com / Valencia; segunda prueba con Luis Pérez / luis@example.com / Madrid.

Expresiones trim y toLowerCase con nombre, correo y ciudad normalizados en n8n.
Expresiones trim y toLowerCase con nombre, correo y ciudad normalizados en n8n.

Descarga y prueba el proyecto

Descargar el workflow en ZIP. Descomprime el archivo y selecciona el JSON en la opción de importar desde archivo de n8n. El proyecto utiliza datos ficticios y no contiene credenciales.

¿Todavía no tienes n8n? Consulta la instalación local en Windows.

Volver a los tutoriales de n8nfácil →

Construye este workflow desde cero

Puedes crear los nodos manualmente en lugar de importar el ZIP. Los ajustes siguientes corresponden al archivo del proyecto y a la versión indicada al comienzo de la guía; los nombres de los controles pueden variar en otras versiones.

Ejecutar prueba · Manual Trigger

Añade Manual Trigger como inicio del flujo. Permite ejecutar la práctica pulsando Execute workflow, sin publicar un disparador automático.

Contacto de ejemplo · Edit Fields (Set)

Añade Edit Fields (Set) y selecciona Manual Mapping. Crea los siguientes campos; utiliza Fixed para valores literales y Expression para fórmulas. Conserva solo los campos configurados para reproducir la salida del proyecto.

CampoTipoModoValor
nombrestringFixed" Ana López "
emailstringFixed" ANA.LOPEZ@EXAMPLE.COM "
ciudadstringFixed" Valencia "

Las comillas de los valores de texto de la tabla indican que son cadenas: no las escribas en el campo Fixed. Conserva los espacios cuando formen parte de los datos de prueba.

Normalizar contacto · Edit Fields (Set)

Añade Edit Fields (Set) y selecciona Manual Mapping. Crea los siguientes campos; utiliza Fixed para valores literales y Expression para fórmulas. Conserva solo los campos configurados para reproducir la salida del proyecto.

CampoTipoModoValor
nombrestringExpression{{ $json.nombre.trim() }}
emailstringExpression{{ $json.email.trim().toLowerCase() }}
ciudadstringExpression{{ $json.ciudad.trim() }}

Las comillas de los valores de texto de la tabla indican que son cadenas: no las escribas en el campo Fixed. Conserva los espacios cuando formen parte de los datos de prueba.

Conecta los nodos y revisa el recorrido

  • Ejecutar prueba → Contacto de ejemplo.
  • Contacto de ejemplo → Normalizar contacto.

Ejecuta desde el inicio y abre la salida de cada nodo. Comprueba los valores y el número de elementos antes de seguir. Un nodo verde indica ejecución completada, pero debes comparar su salida con los resultados esperados de esta guía.


Leave a Reply

Your email address will not be published. Required fields are marked *