Mails
La API manda dos mails transaccionales con Resend. No hay newsletter ni mails de marketing.
| Cuándo | Idioma | |
|---|---|---|
| Bienvenida | Se crea una cuenta (primer inicio de sesión) | El del perfil; si todavía no tiene, el de la página |
| Tu cuenta fue eliminada | Se borra la cuenta (desde el sitio o desde Facebook) | El del perfil |
Si no hay idioma válido, se usa español.
Cómo se arman
Sección titulada «Cómo se arman»flowchart LR
T["@inzumer/email<br/>layout, botón, textos, tema"] --> M["@inzumer/milimon-emails<br/>plantillas + src/i18n/<carpeta>/{es,en}.json"]
M --> A["API: MailService<br/>resolveLang(perfil, página)"]
A -->|POST /emails| R[Resend]
R --> P((Persona))
inzumer-email(@inzumer/email): piezas genéricas de React Email (layout, título, texto, botón, tarjeta y pie), reutilizables en otros proyectos.milimon-emails-react(@inzumer/milimon-emails): las plantillas de Milimon con los colores de la marca. Los textos están ensrc/i18n/<carpeta>/{es,en}.json, igual que en el sitio, con las mismas claves en los dos idiomas.- API (
milimon-backend-nest, módulomail): elige el idioma conresolveLang, renderiza HTML y texto plano y los manda. Un mail que falla queda en el log y nunca frena el inicio de sesión ni el borrado.
Configuración
Sección titulada «Configuración»| Variable (Render) | Qué es |
|---|---|
RESEND_API_KEY |
Clave de Resend con permiso solo de envío |
EMAIL_FROM |
Remitente de un dominio verificado en Resend |
Si falta alguna de las dos, no se manda nada y la API registra “Email skipped”.
Para ver las plantillas en local: pnpm preview en milimon-emails-react (http://localhost:3030).
