Templates de E-mail
Los templates de e-mail permiten personalizar las comunicaciones transaccionales enviadas a los clientes.
Campos del Template
| Campo | Descripción |
|---|---|
| Nombre | Nombre del template |
| Slug | Identificador único |
| Tipo | Tipo de notificación asociada |
| Asunto | Línea de asunto (soporta variables) |
| Cuerpo HTML | Contenido HTML del e-mail (soporta variables) |
| Cuerpo texto | Versión en texto puro (fallback) |
| Variables | Lista de variables utilizadas |
| Predeterminado | Un template predeterminado por tipo de notificación |
| Activo | Si el template está disponible |
Variables
Las variables son sustituidas en el asunto y cuerpo usando la sintaxis \{{ nombre_variable \}}:
| Variable | Descripción |
|---|---|
{{ customer_name }} | Nombre del cliente |
{{ invoice_number }} | Número de la factura |
{{ amount }} | Valor en moneda |
{{ due_date }} | Fecha de vencimiento |
{{ verification_url }} | Link de verificación de e-mail |
{{ reset_url }} | Link de reset de contraseña |
{{ subscription_name }} | Nombre del plan |
{{ trial_end_date }} | Fecha de fin del trial |
Operaciones
- Crear: Nuevo template con nombre, slug, tipo y contenido
- Actualizar: Editar asunto, cuerpo y variables
- Duplicar: Copiar template con nuevo slug
- Eliminar: No es posible eliminar el template predeterminado
- Preview: Visualizar el template con datos de ejemplo
- Definir como predeterminado: Marca como template predeterminado para el tipo
Renderización
- Obtiene el template por ID o por el tipo (usa el predeterminado)
- Carga todas las variables del contexto
- Sustituye todos los patrones
\{{ clave \}}por los valores - Retorna asunto y cuerpo HTML renderizados
Seguridad
- Los caracteres especiales son escapados vía regex para prevenir ReDoS
- El input del usuario es sanitizado antes de la renderización