espace-paie-odentas/FIX_OTP_EMAIL_LINKS.md
2025-10-12 17:05:46 +02:00

2 KiB

🔧 Fix OTP Email Links - Guide Rapide

Problème

Les emails OTP reçus contiennent des liens vers localhost:3000 au lieu de votre domaine Vercel.

Solution Implémentée

1. Code Corrigé

Le fichier app/api/auth/send-code/route.ts a été mis à jour pour détecter automatiquement l'URL correcte :

// Détecter automatiquement l'URL de base selon l'environnement
const getBaseUrl = () => {
  // En production, utiliser l'URL Vercel ou le domaine custom
  if (process.env.VERCEL_URL) {
    return `https://${process.env.VERCEL_URL}`;
  }
  // Fallback vers variable d'environnement personnalisée
  if (process.env.NEXT_PUBLIC_SITE_URL) {
    return process.env.NEXT_PUBLIC_SITE_URL;
  }
  // En développement local
  return "http://localhost:3000";
};

🚀 Actions à Faire MAINTENANT

1. Variables Vercel (URGENT)

Ajoutez cette variable dans votre dashboard Vercel :

# Settings → Environment Variables → Production
NEXT_PUBLIC_SITE_URL=https://votre-app.vercel.app

2. Configuration Supabase (URGENT)

Dans Supabase Dashboard → Authentication → URL Configuration :

Site URL: https://votre-app.vercel.app
Additional Redirect URLs:
- https://votre-app.vercel.app/**
- https://votre-domaine-custom.com/** (si vous en avez un)
- http://localhost:3000/** (pour le dev)

3. Template Email Supabase (OPTIONNEL)

Dans Supabase → Authentication → Email Templates → Confirm signup :

Remplacez :

{{ .ConfirmationURL }}

Par votre domaine :

https://votre-app.vercel.app/auth/callback?token_hash={{ .TokenHash }}&type=magiclink

Test Rapide

  1. Déployez le code corrigé sur Vercel
  2. Ajoutez la variable NEXT_PUBLIC_SITE_URL
  3. Configurez les URLs dans Supabase
  4. Testez l'OTP sur votre site Vercel

🎯 Résultat

Les emails OTP contiendront désormais des liens vers votre domaine Vercel, pas localhost.


Temps estimé : 5 minutes de configuration + 2 minutes de déploiement = 7 minutes total