Skip to Content

Personalizar Plantillas de Correo

Auris envía correos transaccionales en los momentos críticos del ciclo de vida del usuario: verificación de email, restablecimiento de contraseña, inicio de sesión con magic link, invitaciones, alertas de seguridad y más. Por defecto, estos correos usan una plantilla limpia renderizada con la marca de tu tenant (nombre de empresa, logo, color primario). Personalizarlos te da control total del HTML, para que cada punto de contacto — desde el primer correo de verificación hasta una alerta de inicio de sesión sospechoso meses después — sea coherente con tu producto.

Esta guía te acompaña en la edición de plantillas desde la Consola, el uso de variables dinámicas y bloques condicionales, la previsualización y prueba de cambios, la gestión de idiomas y la gestión programática vía API.

Tipos de Plantilla

Auris incluye trece tipos de plantilla de correo. Cada uno se activa automáticamente en el momento adecuado.

Tipo de plantillaCuándo se envía
verificationTras el registro, para verificar la dirección de email
password_resetCuando un usuario solicita restablecer su contraseña
invitationCuando un usuario es invitado a un tenant
mfa_codeCuando la 2FA por correo envía un código
magic_linkCuando un usuario solicita un acceso sin contraseña vía magic link
login_alertCuando se detecta un nuevo inicio de sesión en la cuenta
welcomeDespués de que un usuario verifica con éxito su email
password_changedCuando se confirma un cambio de contraseña
account_lockedCuando una cuenta se bloquea tras demasiados intentos fallidos
suspicious_loginCuando se detecta un acceso desde ubicación, dispositivo o IP inusuales
email_changedCuando cambia el email principal (enviado a la dirección antigua)
license_issuedCuando se emite una clave de licencia para un cliente
cibaCuando una aplicación solicita la aprobación del acceso vía flujo CIBA

Cada plantilla se personaliza de forma independiente, y de forma independiente por idioma.

Paso 1: Abre el Editor de Plantillas

  1. Abre la Consola de Auris y ve a Configuración, luego Plantillas de Email
  2. Verás los trece tipos de plantilla con su estado actual (predeterminada o personalizada)
  3. Haz clic en el tipo de plantilla que quieres editar

Paso 2: Elige un Modo de Edición

El editor ofrece tres modos:

  • Editor de tema — personaliza identidad (logo, nombre de marca, texto del pie), colores, tipografía, botones, layout y contenido mediante paneles visuales.
  • Builder visual — compón el correo con bloques sobre un lienzo.
  • Editor de código — edita HTML y CSS en crudo. Una biblioteca de snippets ofrece puntos de partida listos.

Uses el modo que uses, el resultado es un documento HTML completo guardado por tipo de plantilla e idioma. La mayoría de los clientes de correo tienen soporte CSS limitado: los estilos inline y los layouts de tablas son el enfoque más fiable.

Paso 3: Usa las Variables de las Plantillas

Las variables usan la sintaxis {{nombreVariable}}. Cuando Auris envía el correo, cada placeholder se sustituye por el valor real de ese usuario y ese evento. En el cuerpo, los valores llevan escape HTML automático; en el asunto se insertan como texto plano.

Variables Globales (disponibles en todas las plantillas)

VariableDescripciónValor de ejemplo
{{year}}Año actual2026
{{month}}Mes actual, dos dígitos07
{{day}}Día actual, dos dígitos23
{{date}}Fecha actual, YYYY-MM-DD2026-07-23

Variables por Tipo

PlantillaVariables
verification{{email}}, {{link}}, {{expiresIn}}
password_reset{{email}}, {{link}}, {{expiresIn}}
invitation{{email}}, {{orgName}}, {{role}}, {{inviterEmail}}, {{link}}, {{expiresIn}}
mfa_code{{email}}, {{code}}, {{expiresIn}}
magic_link{{email}}, {{link}}, {{approveLink}}, {{expiresIn}}, {{tenantName}}
login_alert{{email}}, {{device}}, {{ipAddress}}, {{location}}, {{time}}
welcome{{email}}, {{name}}, {{orgName}}, {{dashboardLink}}
password_changed{{email}}, {{name}}, {{time}}, {{ipAddress}}
account_locked{{email}}, {{name}}, {{lockDuration}}, {{attempts}}, {{ipAddress}}, {{time}}
suspicious_login{{email}}, {{name}}, {{device}}, {{ipAddress}}, {{location}}, {{time}}, {{reason}}
email_changed{{email}}, {{name}}, {{newEmail}}, {{time}}
license_issued{{key}}, {{jwtToken}}, {{product}}, {{expiresAt}}, {{features}}
ciba{{email}}, {{appName}}, {{bindingMessage}}, {{approveUrl}}, {{denyUrl}}

Condicionales e Interpolación Raw

  • {{#if variable}}...{{/if}} conserva el contenido encerrado solo cuando la variable tiene un valor no vacío. En caso contrario el bloque — markup incluido — se elimina.
  • {{{variable}}} inserta el valor en crudo sin escape HTML. Úsala solo para fragmentos HTML de confianza construidos en el servidor.

Ejemplo para una plantilla magic_link:

<h1>Inicia sesión en {{tenantName}}</h1> <p><a href="{{link}}">Iniciar sesión en este dispositivo</a></p> {{#if approveLink}} <p><a href="{{approveLink}}">Aprobar en el dispositivo donde empezaste el acceso</a></p> {{/if}} <p>Este enlace caduca en {{expiresIn}}.</p>

Los nombres de variables distinguen mayúsculas y la notación con punto no está soportada — {{user.name}} no se sustituirá. Los placeholders desconocidos quedan como {{texto}} literal en el correo enviado, así que una errata es fácil de detectar en un envío de prueba.

Paso 4: Gestiona los Idiomas

Las plantillas predeterminadas integradas existen en cinco idiomas: inglés (en), italiano (it), francés (fr), alemán (de) y español (es). Las plantillas personalizadas pueden guardarse para cualquier código de locale (por ejemplo pt-BR) mediante el selector de idioma del editor.

En el envío, Auris resuelve la plantilla en este orden:

  1. Plantilla personalizada en el idioma del destinatario
  2. Plantilla personalizada en inglés
  3. Predeterminada integrada en el idioma del destinatario
  4. Predeterminada integrada en inglés

Así puedes personalizar solo los idiomas que te importan — el resto sigue funcionando con las predeterminadas.

Paso 5: Previsualiza

La vista previa en vivo renderiza la plantilla con datos de ejemplo realistas mientras editas (por ejemplo [email protected] para {{email}} y 24 hours para {{expiresIn}}). Usa el selector de dispositivo para comprobar los anchos de escritorio, tablet y móvil, o abre la vista previa a pantalla completa.

La vista previa es una aproximación fiel, pero los clientes de correo varían mucho en su soporte de HTML/CSS. Envía siempre un correo de prueba y compruébalo en un cliente real antes de pasar a producción.

Paso 6: Envía un Correo de Prueba

Haz clic en Enviar prueba en el editor. Auris renderiza la plantilla con datos de ejemplo y la envía a tu propia dirección de email (el administrador autenticado), con el asunto prefijado con [TEST]. Vía API puedes indicar opcionalmente otro destinatario con el campo recipientEmail.

Comprueba el correo en tu bandeja de entrada:

  • El logo y las imágenes se cargan correctamente
  • El botón de acción es clicable y tiene el estilo correcto
  • El diseño se ve bien en escritorio y móvil
  • Todos los placeholders fueron sustituidos (ningún {{texto}} literal)
  • El correo no acaba en la carpeta de spam

Paso 7: Guarda

Haz clic en Guardar para publicar. Los cambios tienen efecto inmediato para todos los correos futuros de ese tipo y ese idioma — sin despliegues ni reinicios. El HTML guardado se sanea en el servidor (se eliminan scripts, manejadores de eventos y frames incrustados) y debe quedar por debajo de 500 KB.

Para volver a la plantilla predeterminada del idioma actual, haz clic en Restablecer predeterminado. Esto elimina la versión personalizada y restaura la plantilla integrada con la marca del tenant.

Entrega de Correo

Auris envía el correo a través de la configuración SMTP de tu tenant cuando está presente y activa; si no, usa el remitente predeterminado de la plataforma. Puedes configurar SMTP (host, puerto, credenciales, dirección del remitente), ejecutar una prueba de conexión y controlar el pie de los correos en Configuración, luego Email:

  • Emails white-label elimina la atribución “Powered by Altovar” del pie de las plantillas predeterminadas.
  • Ocultar pie de página omite por completo la banda del pie.

Para la entregabilidad, configura los registros DNS SPF, DKIM y DMARC de tu dominio remitente — tu proveedor de correo te da los valores exactos.

Gestión Programática de Plantillas

Todas las operaciones disponibles en la Consola pueden ejecutarse también con la API de Plantillas de Correo. Todos los endpoints requieren el permiso manage:security y la cabecera x-tenant.

Listar todas las plantillas

curl https://auth.tudominio.com/api/email-templates \ -H "Authorization: Bearer $AURIS_ACCESS_TOKEN" \ -H "x-tenant: tu-realm"

Devuelve cada tipo con label, description, variables, hasCustomTemplate, customLocales, más availableLocales (los cinco idiomas integrados).

Obtener una plantilla (con base predeterminada)

curl "https://auth.tudominio.com/api/email-templates/verification?locale=es" \ -H "Authorization: Bearer $AURIS_ACCESS_TOKEN" \ -H "x-tenant: tu-realm"

Devuelve los subject/htmlBody personalizados de ese idioma (o null), junto con defaultSubject/defaultHtmlBody renderizados con la marca de tu tenant.

Actualizar una plantilla

curl -X PUT https://auth.tudominio.com/api/email-templates/verification \ -H "Authorization: Bearer $AURIS_ACCESS_TOKEN" \ -H "x-tenant: tu-realm" \ -H "Content-Type: application/json" \ -d '{ "subject": "Verifica tu correo", "htmlBody": "<!DOCTYPE html><html><body><p>Hola {{email}},</p><p><a href=\"{{link}}\">Verifica tu dirección</a> — caduca en {{expiresIn}}.</p></body></html>", "locale": "es" }'

Previsualizar una plantilla

curl -X POST https://auth.tudominio.com/api/email-templates/verification/preview \ -H "Authorization: Bearer $AURIS_ACCESS_TOKEN" \ -H "x-tenant: tu-realm" \ -H "Content-Type: application/json" \ -d '{ "subject": "Verifica tu correo", "htmlBody": "<p>Hola {{email}}</p>" }'

Devuelve { "subject": ..., "html": ..., "variables": { ... } } renderizados con valores de ejemplo. No se envía nada.

Enviar un correo de prueba

curl -X POST https://auth.tudominio.com/api/email-templates/verification/test \ -H "Authorization: Bearer $AURIS_ACCESS_TOKEN" \ -H "x-tenant: tu-realm" \ -H "Content-Type: application/json" \ -d '{ "subject": "Verifica tu correo", "htmlBody": "<p>Hola {{email}}</p>", "recipientEmail": "[email protected]" }'

recipientEmail es opcional — sin él, la prueba va a tu propio buzón (el del administrador autenticado). La respuesta es { "success": true, "sentTo": "..." }.

Eliminar (restablecer la predeterminada)

curl -X DELETE "https://auth.tudominio.com/api/email-templates/verification?locale=es" \ -H "Authorization: Bearer $AURIS_ACCESS_TOKEN" \ -H "x-tenant: tu-realm"

Con ?locale= solo se elimina la versión personalizada de ese idioma. Sin él, se eliminan todos los idiomas del tipo.

Buenas Prácticas

Mantén las plantillas simples. El soporte HTML de los clientes de correo es notoriamente incoherente. Usa estilos inline, layouts de tablas y fuentes de sistema para la máxima compatibilidad.

Incluye siempre la URL de acción en texto. Debajo de cada botón de acción, añade la URL en crudo como texto. Algunos clientes no renderizan bien los botones HTML, y algunos usuarios prefieren inspeccionar las URL antes de hacer clic. Auris además deriva automáticamente una parte text/plain de tu HTML, preservando los enlaces.

Usa {{expiresIn}} para gestionar expectativas. Di siempre al usuario cuánto tiempo es válido un enlace o un código.

Mantén el botón de aprobación condicional en magic_link. Envuelve el botón secundario en {{#if approveLink}}...{{/if}} — la variable está vacía en los flujos sin aprobación entre dispositivos, y el condicional retira el botón limpiamente.

No incluyas datos sensibles. Nunca pongas contraseñas ni claves API completas en los correos. Los correos pueden quedarse indefinidamente en los buzones de los usuarios.

Versiona tus plantillas. Si gestionas las plantillas vía API, guarda el HTML fuente en tu repositorio: historial de cambios, revisión y rollback.

Solución de Problemas

ProblemaCausa probableSolución
Variables mostradas como {{texto}} literalErrata o variable no soportadaComprueba el nombre exacto en las tablas de arriba. Los nombres distinguen mayúsculas; la notación con punto no está soportada.
Guardado rechazado con HTTP 413Cuerpo HTML por encima de 500 KBAligera la plantilla; referencia las imágenes por URL en lugar de incrustarlas.
Script o markup interactivo ausente tras guardarSaneado en el servidor<script>, manejadores de eventos, <iframe>/<embed>/<object>/<form> y similares se eliminan al guardar, por diseño.
El correo de prueba no llega a un compañeroLa prueba va a tu buzónEn la Consola la prueba va siempre a tu propia dirección; usa el campo recipientEmail de la API para otro destinatario.
Correos en spamFaltan registros SPF/DKIM/DMARCConfigura los registros DNS del dominio remitente según las indicaciones de tu proveedor de correo.
Idioma equivocado recibidoCadena de fallbackSi no existe plantilla (personalizada o predeterminada) en el idioma del destinatario, Auris recurre al inglés. Guarda una versión personalizada para ese idioma.
El pie sigue mostrando la atribución de la plataformaWhite-label desactivadoActiva los emails white-label en Configuración, luego Email, o guarda una plantilla totalmente personalizada.

Guías Relacionadas