For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /fr/docs/web/resend-email.md (or send Accept: text/markdown).
Ajouter l'e-mail Resend
Créez un compte Resend gratuit, vérifiez un domaine d'envoi et basculez EMAIL_PROVIDER pour que les codes et reçus atteignent de vraies boîtes de réception.
Parcours pas à pas pour débuter
Prérequis : l'app qui tourne en local (En ligne en 5 minutes). Commencez gratuitement — sans carte, et le niveau gratuit de Resend couvre les volumes de développement.
Quelques termes : EMAIL_PROVIDER=local est le défaut — les messages sont écrits sur la page intégrée /mail-preview et ne quittent jamais votre machine, ce qui est parfait pendant la construction. Resend est l'adaptateur qui livre dans de vraies boîtes de réception. EMAIL_FROM est l'identité d'expéditeur qu'utilisent les modèles ; son adresse doit se trouver sur un domaine que Resend a vérifié. Les enregistrements DNS sont les lignes que vous collez chez votre registrar ou Cloudflare pour que les boîtes destinataires fassent confiance à votre expéditeur.
Ce que vous créez : un compte Resend, un domaine d'envoi vérifié et une clé d'API — l'étape du domaine est la seule partie qui fait attendre, la propagation DNS allant de quelques minutes à quelques heures.
Créer le compte Resend
1. Ouvrez resend.com → Sign up, confirmez votre e-mail et vous arrivez sur le tableau de bord.
2. Commencez avec le niveau gratuit — vous pouvez même envoyer du courrier de test depuis l'expéditeur partagé de Resend avant de posséder un domaine, ce que couvre la section suivante.
Vérifier votre domaine d'envoi
Essai rapide sans domaine : l'adresse [email protected] fonctionne immédiatement comme EMAIL_FROM — mais elle ne livre qu'à l'e-mail avec lequel vous vous êtes inscrit, jamais aux utilisateurs. Utilisez-la pour voir le pipeline fonctionner, puis faites la vraie configuration.
1. Ouvrez Domains → Add Domain et saisissez le domaine depuis lequel vous envoyez (par exemple yourdomain.com ; un sous-domaine comme mail.yourdomain.com fonctionne aussi et garde les enregistrements propres).
2. Resend liste les enregistrements DNS à créer — des enregistrements TXT DKIM plus des entrées MX/SPF ou CNAME selon l'âge du compte. Ajoutez chacun chez votre hébergeur DNS : la page DNS de votre registrar, ou Cloudflare si vous avez déplacé les nameservers. Sur Cloudflare, gardez le nuage du proxy gris (DNS only) pour les enregistrements mail — les enregistrements proxied ne se vérifient jamais.
3. De retour dans Resend, cliquez sur Verify. Attendu : le domaine passe à Verified. La propagation varie de quelques minutes à un jour ; la page du domaine nomme l'enregistrement exact qui ne résout pas encore.
Une fois vérifié, toute adresse du domaine fonctionne comme expéditeur — hello@, no-reply@, ce qu'utilise EMAIL_FROM — aucun enregistrement par adresse nécessaire.
Créer la clé d'API
1. Ouvrez API Keys → Create API Key.
2. Permission : Sending access suffit — le kit ne fait qu'envoyer. Nommez la clé d'après son environnement (production, local) pour qu'une clé de dev divulguée puisse être révoquée sans toucher la production.
3. Copiez la clé re_… maintenant — elle n'est affichée qu'une fois. La perdre signifie seulement en créer une autre.
Ajouter les valeurs à l'app
Renseignez les lignes ci-dessous dans apps/web/.env.local. RESEND_API_KEY reste côté serveur — jamais NEXT_PUBLIC_/EXPO_PUBLIC_, jamais commité ; EMAIL_PROVIDER et EMAIL_FROM sont de simples configurations. Redémarrez le serveur de dev après modification.
EMAIL_FROM doit se trouver sur le domaine vérifié : [email protected] n'atteint que votre propre adresse d'inscription, et un domaine non vérifié reçoit un rejet 403 de Resend.
# apps/web/.env.local
EMAIL_PROVIDER=resend
EMAIL_FROM="Your Product <[email protected]>"
RESEND_API_KEY=re_…Vérifier et dépanner
Redémarrez, ouvrez /auth et demandez un code de connexion vers une vraie boîte de réception que vous contrôlez. Attendu : le message arrive, et Resend → Emails affiche la livraison avec un statut vert — ce journal est aussi l'endroit où vivent les motifs de rebond et d'erreur.
Rien d'envoyé ? Vérifiez que EMAIL_PROVIDER=resend s'est bien enregistré dans apps/web/.env.local et redémarrez. Un 403 dans le journal serveur signifie que EMAIL_FROM n'est pas sur le domaine vérifié — ou que [email protected] a été envoyé à quelqu'un d'autre que vous.
Un autre fournisseur plus tard ? EMAIL_PROVIDER accepte aussi ses (avec les clés AWS) et les transports postmark, sendgrid, mailgun, smtp, brevo — même contrat EMAIL_FROM, noms d'env différents, tous listés dans .env.example. Le guide e-mail les compare.