Email y SendGrid
Sección titulada «Email y SendGrid»TalentBricksAI envía emails transaccionales (verificación de cuenta, reset de contraseña). En desarrollo usa un proveedor Dummy. En producción requiere SendGrid.
Cómo funciona el email en desarrollo
Sección titulada «Cómo funciona el email en desarrollo»En desarrollo, la app usa el proveedor Dummy de Wasp. No envía emails reales — en cambio,
imprime los links en la consola del servidor.
Ver emails en desarrollo
Sección titulada «Ver emails en desarrollo»Cuando un usuario se registra o pide reset de contraseña, busca en la terminal donde corre
wasp start:
✅ Verification email for user sent! ✅Click the following link to verify your email:http://localhost:3000/email-verification?token=abc123...Password reset email sent!Click the following link to reset your password:http://localhost:3000/password-reset?token=xyz789...Copia ese link y ábrelo en el browser — no hay email real que revisar.
Emails que envía la plataforma automáticamente
Sección titulada «Emails que envía la plataforma automáticamente»| Trigger | Destinatario | Contenido |
|---|---|---|
| Registro nuevo | Usuario | Link de verificación de email |
| ”Olvidé mi contraseña” | Usuario | Link de reset (válido 1 hora) |
| Pago exitoso | Usuario | Confirmación de compra (via Stripe, no la app) |
Nota: Los emails de confirmación de pago los envía Stripe directamente, no la app.
Setup de SendGrid para producción
Sección titulada «Setup de SendGrid para producción»Paso 1: Crear cuenta en SendGrid
Sección titulada «Paso 1: Crear cuenta en SendGrid»- Ir a sendgrid.com y crear una cuenta (plan gratuito: 100 emails/día)
- Completar el onboarding de SendGrid
Paso 2: Verificar el dominio o email de envío
Sección titulada «Paso 2: Verificar el dominio o email de envío»SendGrid requiere que verifiques quién envías los emails.
Opción A — Verificar un dominio (recomendado para producción):
- SendGrid → Settings → Sender Authentication → Authenticate Your Domain
- Ingresar tu dominio (
talentbricks.ai) - Agregar los registros DNS que muestra SendGrid en tu proveedor de DNS
- Verificar la autenticación (puede tomar hasta 48 horas)
Opción B — Verificar un email individual (más fácil, menos profesional):
- SendGrid → Settings → Sender Authentication → Verify a Single Sender
- Ingresar el email desde el que enviarás (
noreply@talentbricks.ai) - Verificar el link que te llega por email
Paso 3: Crear API Key
Sección titulada «Paso 3: Crear API Key»- SendGrid → Settings → API Keys → Create API Key
- Nombre:
TalentBricksAI Production - Permisos: “Restricted Access” → Mail Send → Full Access
- Copiar la API Key (se muestra una sola vez)
Paso 4: Configurar en la app
Sección titulada «Paso 4: Configurar en la app»En .env.server (desarrollo/prueba):
SENDGRID_API_KEY=SG.tu-api-keyEn producción (Fly.io):
wasp deploy fly cmd --context server secrets set SENDGRID_API_KEY="SG.tu-api-key"Paso 5: Cambiar el proveedor en main.wasp
Sección titulada «Paso 5: Cambiar el proveedor en main.wasp»En app/main.wasp, cambiar Dummy por SendGrid:
// ANTES (desarrollo):emailSender: { provider: Dummy, defaultFrom: { name: "TalentBricksAI", email: "noreply@talentbricks.ai" },},
// DESPUÉS (producción):emailSender: { provider: SendGrid, defaultFrom: { name: "TalentBricksAI", email: "noreply@talentbricks.ai", // ← Debe coincidir con el email verificado en SendGrid },},⚠️ Importante: El email en
defaultFromdebe coincidir exactamente con el email o dominio verificado en SendGrid.
Después de cambiar, reconstruir y redesplegar:
cd app && wasp deploy fly deployVerificación del setup
Sección titulada «Verificación del setup»En desarrollo (con Dummy)
Sección titulada «En desarrollo (con Dummy)»# 1. Registrar un usuario de prueba# 2. Ver en la consola de wasp start:grep "verification" # buscar el link de verificaciónEn producción (con SendGrid)
Sección titulada «En producción (con SendGrid)»Después de configurar:
- Registrar un usuario de prueba con un email real
- Verificar que el email de verificación llega (revisar spam)
- Ir a SendGrid Dashboard → Activity para ver el historial de envíos
Troubleshooting
Sección titulada «Troubleshooting»Email no llega en producción
Sección titulada «Email no llega en producción»-
Verificar que SENDGRID_API_KEY está configurada:
Ventana de terminal flyctl secrets list -a talentbricksai | grep SENDGRID -
Verificar en SendGrid Activity: SendGrid Dashboard → Activity → buscar el email del usuario. Si aparece como “Delivered” pero no llega, puede estar en spam.
-
Verificar que el remitente está verificado: SendGrid → Sender Authentication — debe aparecer como “Verified”
-
El email en
defaultFromno coincide con el verificado: Si SendGrid rechaza el email, aparece como “Failed” en Activity con el error.
Error “Forbidden” en los logs del servidor
Sección titulada «Error “Forbidden” en los logs del servidor»Error sending email: 403 Forbidden→ La API Key no tiene permisos de Mail Send. Regenerar la Key con los permisos correctos.
Error “Unverified sender”
Sección titulada «Error “Unverified sender”»→ El email configurado en defaultFrom no está verificado en SendGrid. Verificar el email o
dominio.