# Guide de test - IntĂ©gration Stripe ## đŸ§Ș Tester le flux de paiement complet ### Étape 1 : S'inscrire et se connecter 1. AccĂ©dez Ă  http://localhost:3000/auth/register 2. CrĂ©ez un compte (ex: `test@example.com`) 3. VĂ©rifiez l'email (rĂ©cupĂ©rez le lien du serveur logs) 4. Connectez-vous ### Étape 2 : AccĂ©dez Ă  la page pricing 1. Allez Ă  http://localhost:3000/pricing 2. Vous devriez voir : - Le plan FREE avec le bouton "Commencer" - Le plan PREMIUM avec le bouton "Passer Ă  Premium" ### Étape 3 : Initiez un paiement 1. Cliquez sur "Passer Ă  Premium" 2. Vous serez redirigĂ© vers Stripe Checkout 3. Utilisez les **cartes de test Stripe** : #### Paiements rĂ©ussis : - **NumĂ©ro** : `4242 4242 4242 4242` - **Expiration** : Futur (ex: 12/25) - **CVC** : N'importe quel 3 chiffres - **Nom** : N'importe quel nom #### Paiement Ă©chouĂ© : - **NumĂ©ro** : `4000 0000 0000 0002` - MĂȘme autres dĂ©tails #### Besoin d'authentification 3D Secure : - **NumĂ©ro** : `4000 0025 0000 3155` ### Étape 4 : VĂ©rifiez les webhooks AprĂšs un paiement rĂ©ussi, le webhook Stripe devrait : 1. ✅ CrĂ©er un `Subscription` en base de donnĂ©es 2. ✅ Mettre Ă  jour `User.plan = "PREMIUM"` 3. ✅ Rediriger vers `/dashboard?checkout=success` VĂ©rifiez en : - Ouvrant DevTools → Console - Cherchant les logs du serveur pour `[webhook]` messages - AccĂ©dant Ă  `/dashboard/profil` et vĂ©rifiant que le badge "Premium" apparaĂźt ### Étape 5 : Testez les fonctionnalitĂ©s PREMIUM AprĂšs l'upgrade : 1. ✅ Le ChatBot devrait ĂȘtre visible en bas Ă  droite 2. ✅ Les stats 30/90 jours devraient ĂȘtre accessibles 3. ✅ L'analyse IA quotidienne devrait fonctionner ## 🔧 Debugging ### VĂ©rifier les variables d'environnement ```bash grep STRIPE .env.local ``` ### VĂ©rifier les logs du serveur Cherchez : - `[create-checkout]` : Logs de crĂ©ation de session - `[webhook]` : Logs de webhooks Stripe ### Simuler des webhooks en local Pour tester les webhooks sans vraiment payer, tĂ©lĂ©charge **Stripe CLI** : ```bash # Windows : TĂ©lĂ©charge depuis https://stripe.com/docs/stripe-cli # macOS : brew install stripe/stripe-cli/stripe # Linux : Voir https://stripe.com/docs/stripe-cli # Se connecter avec ton compte Stripe stripe login # Rediriger les webhooks Ă  ton serveur local stripe listen --forward-to localhost:3000/api/stripe/webhook # Dans un autre terminal, simuler un paiement stripe trigger customer.subscription.created ``` ### VĂ©rifier la base de donnĂ©es ```bash sqlite3 prisma/dev.db .tables SELECT * FROM "Subscription" LIMIT 1; SELECT plan FROM "User" WHERE email = 'test@example.com'; ``` ## 🐛 ProblĂšmes courants ### Le bouton "Passer Ă  Premium" ne fait rien - VĂ©rifiez que `NEXT_PUBLIC_STRIPE_KEY` est correct (commence par `pk_`) - VĂ©rifiez les erreurs dans DevTools → Console ### Stripe Checkout ne se charge pas - VĂ©rifiez que la clĂ© publique est valide - VĂ©rifiez que la `STRIPE_PRICE_ID` existe dans votre compte Stripe ### Le webhook ne met pas Ă  jour le plan - VĂ©rifiez que `STRIPE_WEBHOOK_SECRET` est correct - VĂ©rifiez les logs serveur pour les erreurs de signature ### L'utilisateur reste FREE aprĂšs paiement - VĂ©rifiez que le webhook a Ă©tĂ© traitĂ© (cherchez `[webhook]` dans les logs) - VĂ©rifiez que l'utilisateur a un `userId` correct - VĂ©rifiez les logs de base de donnĂ©es ## 📊 État aprĂšs un paiement rĂ©ussi La base de donnĂ©es devrait contenir : ``` User: id: "cuid-123" plan: "PREMIUM" stripeId: "cus_abc123" Subscription: id: "sub-123" userId: "cuid-123" stripeId: "sub_abc123" status: "active" currentPeriodEnd: 2026-05-26 (30 jours Ă  partir d'aujourd'hui) ``` ## 🚀 Prochaines Ă©tapes - [ ] Ajouter une page de confirmation de paiement - [ ] Envoyer un email de bienvenue Premium - [ ] Afficher l'historique des factures - [ ] Permettre l'annulation d'abonnement - [ ] Tester en production avec les clĂ©s Live