Configuration Email — [email protected]
Runbook opérationnel pour brancher
[email protected](et ses variantes) sur le domaine déjà hébergé sur Cloudflare. Exécutable par le CEO, ~10 minutes, gratuit pour la phase F&F.
Phase 53.9 · Dernière mise à jour : 2026-05-08 · Fournisseur : Cloudflare Email Routing (recommandé pour le F&F)
Pourquoi ce guide existe
Arc OS envoie déjà des emails sortants (vérification, réinitialisation de mot de passe) via Resend avec From: [email protected] — voir shared/email.ts. Mais le domaine n'a aucune réception d'email : dig MX arc-os.co retourne vide, donc tout email envoyé à [email protected] est rejeté. Ça casse :
- Le lien
Supportdans le footer (mailto:[email protected]) - L'attente « réponds avec tes questions » dans le flux d'inscription
- Le fallback email de signalement de bugs pour les utilisateurs qui n'ouvrent pas le FeedbackWidget intégré
- Tout futur workflow « répondre à l'utilisateur »
Ce guide active la réception sans avoir à acheter une boîte mail.
Pré-requis
- Compte Cloudflare avec la zone
arc-os.co(déjà en place — enregistrements NSamir.ns.cloudflare.com/becky.ns.cloudflare.com) - Gmail personnel (ou n'importe quelle boîte fonctionnelle) prête à recevoir les transferts
- 10 minutes
- NE PAS activer sur l'étape de vérification de domaine Resend avant la fin de ce guide — Cloudflare Email Routing publie ses propres enregistrements MX/SPF et tu créeras des conflits
Phase A — Cloudflare Email Routing (GRATUIT, recommandé)
Étape 1 — Activer Email Routing dans le dashboard Cloudflare
- Ouvre https://dash.cloudflare.com → sélectionne la zone arc-os.co
- Barre latérale gauche → Email → Email Routing
- Clique sur Enable Email Routing
- Cloudflare propose d'ajouter automatiquement les enregistrements DNS requis — accepte. Il écrit :
MX 10 amir.mx.cloudflare.net.MX 20 isaac.mx.cloudflare.net.MX 30 linda.mx.cloudflare.net.TXT v=spf1 include:_spf.mx.cloudflare.net ~all
- Vérifie que la coche verte apparaît à côté de « DNS records configured correctly »
Étape 2 — Vérifie ta destination (Gmail) une fois
Cloudflare envoie un email de vérification unique à l'adresse vers laquelle tu vas transférer. Clique sur le lien.
Étape 3 — Ajouter les règles de transfert
Dans Email Routing → Routes, clique sur Create address. Ajoute ces trois :
| Adresse personnalisée | Action | Destination |
|---|---|---|
[email protected] |
Transférer vers | <ton-gmail>@gmail.com |
[email protected] |
Transférer vers | <ton-gmail>@gmail.com |
[email protected] |
Transférer vers | <ton-gmail>@gmail.com |
Optionnel : ajoute une règle Catch-all → transfert vers Gmail. Attrape les fautes de frappe comme
[email protected].
Étape 4 — Envoyer un test
echo "test from $(hostname) at $(date)" | mail -s "Email Routing test" [email protected]
Ou envoie simplement depuis ton téléphone. Ça devrait arriver dans Gmail en ~10 secondes, avec From: <l'expéditeur> préservé et To: [email protected].
Étape 5 — Répondre depuis Gmail en tant que [email protected] (optionnel mais pratique)
Cloudflare Email Routing est entrant uniquement — tu ne peux pas ENVOYER depuis [email protected]. Contournement via Gmail :
- Gmail → Paramètres → Comptes → Envoyer des e-mails en tant que → Ajouter une autre adresse email
- Adresse :
[email protected], Nom :Arc OS Team - SMTP sortant : le SMTP de Gmail lui-même (Cloudflare ne proxifie pas le trafic sortant)
- Vérifie via le code que Gmail envoie — l'email de vérification revient dans Gmail via la règle de transfert, c'est donc instantané
Gmail te permettra de rédiger avec From: [email protected]. Les destinataires le voient. Le Reply-To revient vers [email protected] → chaîne de transfert → Gmail.
Étape 6 — Mettre à jour l'en-tête From: de l'inscription CRM
Déjà correct — shared/email.ts:32 utilise par défaut Citadel <[email protected]>. Confirme que RESEND_API_KEY est dans le vault et que le domaine arc-os.co de Resend est vérifié dans leur dashboard. Resend utilise un jeu séparé de CNAME DKIM (*.resend._domainkey) qui ne conflicte pas avec les MX/SPF d'Email Routing.
Si tu veux aussi que les confirmations d'inscription arrivent à des adresses routables via info@, aucun changement n'est nécessaire — Resend envoie simplement ; Cloudflare reçoit simplement.
Phase B — DMARC (recommandé après validation de la Phase A)
DMARC protège le domaine contre l'usurpation. Avec Cloudflare Email Routing (entrant) et Resend (sortant) tous les deux actifs, ajoute un enregistrement TXT pour la surveillance :
Name: _dmarc.arc-os.co
Type: TXT
Value: v=DMARC1; p=none; rua=mailto:[email protected]; pct=100
p=none collecte les rapports sans rien rejeter. Après 2 semaines de rapports propres, passe à p=quarantine puis p=reject.
Phase C — Dépasser les transferts → vraie boîte mail (plus tard)
Quand les transferts ne suffisent plus (boîtes de réception séparées par rôle, invitations calendrier, apps mobiles, envoi depuis le domaine de manière fiable) :
| Fournisseur | Coût | Temps de configuration | Avantages |
|---|---|---|---|
| Zoho Mail Lite | 1 $/utilisateur/mois (ou gratuit pour ≤5 utilisateurs avec branding Zoho) | 30 min | Boîte complète, app mobile, envoi depuis info@ nativement |
| Google Workspace | 6 $/utilisateur/mois | 30 min | Gmail + Calendar + Drive + console admin de premier plan |
| Fastmail | 5 $/utilisateur/mois | 30 min | Axé confidentialité, sans pub, UI rapide |
Chemin de migration Cloudflare → boîte mail : supprime la règle de transfert pour l'adresse que tu migres (ex. info@), mets à jour les enregistrements MX vers le nouveau fournisseur, laisse Cloudflare Email Routing actif pour les adresses que tu veux encore transférer (ex. bugs@ peut rester transférée indéfiniment).
Ne migre pas prématurément. Le volume d'emails F&F justifie rarement la charge cognitive d'une boîte de réception séparée.
Checklist de vérification
Après avoir complété la Phase A :
-
dig MX arc-os.coretourne 3 enregistrements Cloudflare -
dig TXT arc-os.coinclutv=spf1 include:_spf.mx.cloudflare.net - Un email de test vers
[email protected]arrive dans Gmail en <30s - Le lien
Supportdans le AppFooter CRM fonctionne (pointe maintenant versinfo@) - L'état de succès du FeedbackWidget mentionne
[email protected] - La ligne de contact dans le README fonctionne
- Le domaine
arc-os.code Resend apparaît toujours en vert dans le dashboard (pas de conflit DNS)
Après avoir complété la Phase B :
-
dig TXT _dmarc.arc-os.coretourne la politique - Premier rapport DMARC reçu à
[email protected]dans les 24h
Actions pour le CEO (ne peuvent pas être automatisées)
- Maintenant : ouvre Cloudflare → Email → active Email Routing → accepte les DNS → vérifie la destination Gmail → ajoute 3 règles de transfert. ~7 minutes.
- Optionnel : configuration « Envoyer des e-mails en tant que » dans Gmail. ~3 minutes.
- Optionnel : ajoute l'enregistrement TXT DMARC. ~1 minute.
Une fois l'étape 1 terminée, fais signe et on ferme l'issue #39.
Références
- Docs Cloudflare Email Routing : https://developers.cloudflare.com/email-routing/
- Vérification de domaine Resend : https://resend.com/docs/dashboard/domains/introduction
- Helper email CRM existant :
shared/email.ts - Lien footer existant :
frontend/src/crm/components/AppFooter.jsx:17