> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# Aggiungi l'email con Resend

Crea un account Resend gratuito, verifica un dominio di invio e cambia EMAIL_PROVIDER perché codici e ricevute arrivino in caselle di posta reali.

## Procedura dettagliata per principianti

Prerequisiti: l'app in esecuzione in locale (Online in 5 minuti). Inizia gratis — niente carta, e il piano gratuito di Resend copre i volumi di sviluppo.

Terminologia rapida: `EMAIL_PROVIDER=local` è il predefinito — i messaggi vengono scritti nella pagina incorporata `/mail-preview` e non lasciano mai la tua macchina, il che è perfetto mentre costruisci. Resend è l'adattatore che consegna a caselle di posta reali. `EMAIL_FROM` è l'identità del mittente che usano i template; il suo indirizzo deve stare su un dominio che Resend ha verificato. I record DNS sono le righe che incolli dal tuo registrar o su Cloudflare perché le caselle riceventi si fidino del tuo mittente.

Cosa crei: un account Resend, un dominio di invio verificato e una chiave API — il passaggio del dominio è l'unica parte d'attesa, dato che la propagazione DNS va da minuti a ore.

[Configura il database](https://supastack.dev/it/docs/web/setup-database.md)


## Creare l'account Resend

1. Apri [resend.com](https://resend.com) → Sign up, conferma la tua email e arrivi sulla dashboard.

2. Inizia con il piano gratuito — puoi persino inviare mail di prova dal mittente condiviso di Resend prima di avere un dominio, cosa che copre la sezione successiva.


## Verificare il tuo dominio di invio

Prova rapida senza dominio: l'indirizzo `onboarding@resend.dev` funziona subito come `EMAIL_FROM` — ma consegna solo all'email con cui ti sei registrato, mai agli utenti. Usalo per vedere la pipeline funzionare, poi fai la configurazione vera.

1. Apri Domains → Add Domain e inserisci il dominio da cui invii (per esempio `yourdomain.com`; un sottodominio come `mail.yourdomain.com` funziona ugualmente e tiene i record in ordine).

2. Resend elenca i record DNS da creare — record TXT DKIM più voci MX/SPF o CNAME a seconda dell'età dell'account. Aggiungine uno per uno presso il tuo host DNS: la pagina DNS del tuo registrar, oppure Cloudflare se hai spostato i nameserver. Su Cloudflare tieni la nuvola del proxy grigia (DNS only) per i record di posta — i record proxied non si verificano mai.

3. Di nuovo in Resend fai clic su Verify. Atteso: il dominio passa a Verified. La propagazione varia da minuti a un giorno; la pagina del dominio nomina il record esatto che ancora non risolve.

Una volta verificato, qualsiasi indirizzo del dominio funziona come mittente — `hello@`, `no-reply@`, quello che usa `EMAIL_FROM` — senza registrazione per singolo indirizzo.


## Creare la chiave API

1. Apri API Keys → Create API Key.

2. Permission: Sending access basta — il kit invia soltanto. Nomina la chiave per il suo ambiente (`production`, `local`) così una chiave di dev trapelata può essere revocata senza toccare la produzione.

3. Copia la chiave `re_…` adesso — viene mostrata una volta sola. Perderla significa solo crearne un'altra.


## Aggiungere i valori all'app

Inserisci le righe qui sotto in `apps/web/.env.local`. `RESEND_API_KEY` resta lato server — mai `NEXT_PUBLIC_`/`EXPO_PUBLIC_`, mai committata; `EMAIL_PROVIDER` e `EMAIL_FROM` sono semplice configurazione. Riavvia il server di sviluppo dopo le modifiche.

`EMAIL_FROM` deve stare sul dominio verificato: `onboarding@resend.dev` raggiunge solo il tuo indirizzo di registrazione, e un dominio non verificato riceve un rifiuto 403 da Resend.

```
# apps/web/.env.local
EMAIL_PROVIDER=resend
EMAIL_FROM="Your Product <hello@yourdomain.com>"
RESEND_API_KEY=re_…
```


## Verificare e risolvere i problemi

Riavvia, apri `/auth` e richiedi un codice di accesso verso una casella reale che controlli. Atteso: il messaggio arriva, e Resend → Emails mostra la consegna con stato verde — quel registro è anche dove vivono i motivi di bounce ed errore.

Niente inviato? Controlla che `EMAIL_PROVIDER=resend` si sia davvero salvato in `apps/web/.env.local` e riavvia. Un 403 nel log del server significa che `EMAIL_FROM` non è sul dominio verificato — o che `onboarding@resend.dev` è stato mandato a qualcuno che non sei tu.

Un provider diverso in seguito? `EMAIL_PROVIDER` accetta anche `ses` (con le chiavi AWS) e i transport `postmark`, `sendgrid`, `mailgun`, `smtp`, `brevo` — stesso contratto `EMAIL_FROM`, nomi env diversi, tutti elencati in `.env.example`. La guida email li confronta.

[Confronta i provider email](https://supastack.dev/it/docs/web/setup-email.md)

[Raccogli poi le chiavi provider rimanenti](https://supastack.dev/it/docs/web/provider-keys.md)


Per continuare la configurazione, leggi [Configurare le email di Amazon SES](https://supastack.dev/it/docs/web/aws-ses.md).


## Successivo

[Configurare le email di Amazon SES](https://supastack.dev/it/docs/web/aws-ses.md)
