# Correo transaccional — opciones (aplazado)

El proyecto usa hoy `MAIL_MAILER=log`: los emails de SLA/escalado se escriben en `storage/logs/laravel.log` y **no salen a Internet**. Eso es suficiente para desarrollo y pruebas.

## Decisión actual

**Aplazar el envío real de correo** hasta definir estrategia. El producto no depende de email para el flujo móvil principal (login, listados, servicios, pago, chat por polling).

## ¿Puedo ser yo el proveedor sin pagar a terceros?

Sí, **en teoría**, montando tu propio servidor SMTP en `villearena.ddns.net` (Postfix, hMailServer, etc.) y apuntando Laravel con:

```env
MAIL_MAILER=smtp
MAIL_HOST=localhost
MAIL_PORT=25
MAIL_FROM_ADDRESS=noreply@tudominio.com
```

### Ventajas

- Sin cuota de Mailgun/Resend/SES.
- Control total del servidor.

### Inconvenientes importantes (por eso se aplaza)

1. **Entregabilidad**: Gmail/Outlook suelen marcar como spam correo desde IP residencial o DDNS sin reputación.
2. **DNS obligatorio**: SPF, DKIM y DMARC en tu dominio; sin eso casi no llega a bandeja de entrada.
3. **Puerto 25**: muchos ISP bloquean salida SMTP; hay que verificar en tu línea.
4. **Mantenimiento**: listas negras, rebotes, seguridad (no convertirse en relay abierto).
5. **Legal**: política anti-spam y consentimiento si envías a usuarios reales.

Para un MVP en casa/DDNS, lo habitual es **no** ser proveedor propio al inicio.

## Alternativas cuando quieras activarlo (muchas con capa gratuita)

| Enfoque | Coste típico | Complejidad |
|---------|--------------|-------------|
| **Seguir con `log`** | 0 € | Mínima — solo logs |
| **SMTP propio** (Postfix en el mismo VPS) | 0 € + VPS | Alta |
| **Resend / Mailgun / Brevo** | Tier gratis limitado | Baja |
| **Amazon SES** | Muy barato por volumen | Media |

Recomendación futura: si el volumen es bajo (alertas admin, SLA), un **tier gratis de un relay** suele ser más fiable que SMTP casero; si insistes en 0 € y control total, SMTP propio en un **VPS con IP fija** (no DDNS residencial) + DNS bien configurado.

## Cómo probar plantillas sin enviar correo

```bash
cd backend
php artisan tinker
# Mail::raw('test', fn ($m) => $m->to('tu@email.com'));
```

O revisar logs tras `php artisan support:notify-sla-overdue` con `MAIL_MAILER=log`.

## Cuando retomes (checklist)

1. Elegir estrategia: `log` / SMTP propio / relay con tier gratis.
2. Configurar `MAIL_*` y `APP_URL` en `.env` de producción.
3. Probar `SupportTicketSlaOverdueNotification` y escalado.
4. Añadir test o comando `mail:test` si hace falta.
