Aller au contenu principal

Guide de Déploiement - Kazacalendar

Ce guide explique comment configurer et déployer l'application Kazacalendar en mode TEST ou PRODUCTION.

Table des matières

  1. Configuration Stripe (Test vs Production)
  2. Configuration du Backend API
  3. Configuration de l'application Mobile
  4. Redémarrage des services
  5. Vérification du mode actif

Configuration Stripe

Mode TEST (Développement)

Le mode TEST permet de tester les paiements sans débiter de vrais comptes bancaires. Tous les paiements sont simulés.

Quand utiliser le mode TEST :

  • Développement local
  • Tests de fonctionnalités
  • Démonstrations
  • Environnement de staging

Avantages :

  • Aucun argent réel n'est débité
  • Cartes de test illimitées
  • Facile à debugger dans le dashboard Stripe

Mode PRODUCTION

Le mode PRODUCTION utilise de vraies clés Stripe et débite de vrais comptes bancaires.

Quand utiliser le mode PRODUCTION :

  • Application déployée en production
  • Vrais clients
  • Vrais paiements

⚠️ ATTENTION :

  • Les paiements sont réels et irréversibles
  • Les frais Stripe s'appliquent
  • Assurez-vous que tous les tests sont terminés

Configuration Backend

Fichier : kazalendar-agent-api/.env

Mode TEST (recommandé pour développement)

# Stripe (MODE TEST pour développement)
STRIPE_SECRET_KEY=sk_test_51SA6opLP9egkkqnOUCA8P2XyE4OQaBLwrELDqGwEn8dfpOlp3HatOpXrE7GpulhFRijugL8Uf851zc11Lci0GlZR00K4gir7yk

# Stripe PRODUCTION (commenté)
# STRIPE_SECRET_KEY=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

Mode PRODUCTION

# Stripe (MODE PRODUCTION)
STRIPE_SECRET_KEY=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

# Stripe TEST (commenté)
# STRIPE_SECRET_KEY=sk_test_51SA6opLP9egkkqnOUCA8P2XyE4OQaBLwrELDqGwEn8dfpOlp3HatOpXrE7GpulhFRijugL8Uf851zc11Lci0GlZR00K4gir7yk

Configuration Mobile

Fichier : kazacalendar_mobile/.env

Mode TEST (recommandé pour développement)

# Configuration Stripe
# Clés de test Stripe (pour développement)
STRIPE_TEST_SECRET_KEY=sk_test_51SA6opLP9egkkqnOUCA8P2XyE4OQaBLwrELDqGwEn8dfpOlp3HatOpXrE7GpulhFRijugL8Uf851zc11Lci0GlZR00K4gir7yk
STRIPE_TEST_PUBLISHABLE_KEY=pk_test_51SA6opLP9egkkqnOJvCB3ouSCtm5PrSgPYTDkfVrOqyjMIGZRHHRUtXXZsSMSuGZh4IAhXciz7nQEQv0Dh8ZHfdI009tGy1Ms7

# Clés de production Stripe (pour production)
STRIPE_LIVE_SECRET_KEY=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
STRIPE_LIVE_PUBLISHABLE_KEY=pk_live_51MRtoELj8c4wtrudl1lxctbq2zNf8M3OjFRdMWpNkT33uZ0yK1ECwpMBrrOSlaMAlrZbwiiE13JY1OlJIIUI1Q7L00MG0LcuZf

# Mode (true pour test, false pour production)
STRIPE_TEST_MODE=true

Mode PRODUCTION

# Configuration Stripe
# Clés de test Stripe (pour développement)
STRIPE_TEST_SECRET_KEY=sk_test_51SA6opLP9egkkqnOUCA8P2XyE4OQaBLwrELDqGwEn8dfpOlp3HatOpXrE7GpulhFRijugL8Uf851zc11Lci0GlZR00K4gir7yk
STRIPE_TEST_PUBLISHABLE_KEY=pk_test_51SA6opLP9egkkqnOJvCB3ouSCtm5PrSgPYTDkfVrOqyjMIGZRHHRUtXXZsSMSuGZh4IAhXciz7nQEQv0Dh8ZHfdI009tGy1Ms7

# Clés de production Stripe (pour production)
STRIPE_LIVE_SECRET_KEY=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
STRIPE_LIVE_PUBLISHABLE_KEY=pk_live_51MRtoELj8c4wtrudl1lxctbq2zNf8M3OjFRdMWpNkT33uZ0yK1ECwpMBrrOSlaMAlrZbwiiE13JY1OlJIIUI1Q7L00MG0LcuZf

# Mode (true pour test, false pour production)
STRIPE_TEST_MODE=false

Redémarrage

Backend API

Après avoir modifié le fichier .env du backend, redémarrez le serveur :

# Arrêter le serveur (si en cours d'exécution)
lsof -ti:3000 | xargs kill -9

# Démarrer le serveur avec les nouvelles variables
cd kazalendar-agent-api
npm run dev

Application Mobile

Après avoir modifié le fichier .env de l'application mobile :

Option 1 : Hot Restart

# Dans le terminal où flutter run est actif
# Appuyez sur Shift + R

Option 2 : Redémarrage complet

# Arrêter l'application (Ctrl+C dans le terminal)
# Relancer
flutter run

Vérification

Vérifier le mode Stripe actif

1. Dans les logs

Mode TEST :

  • Les clés commencent par sk_test_ et pk_test_
  • Les logs affichent "Test mode"

Mode PRODUCTION :

  • Les clés commencent par sk_live_ et pk_live_
  • Les logs affichent "Live mode"

2. Dans le Dashboard Stripe

  1. Connectez-vous à https://dashboard.stripe.com
  2. Vérifiez le toggle en haut à gauche :
    • "Test mode" = Mode test actif (fond orange)
    • "Production" = Mode production actif (fond vert)

3. Dans l'application

Mode TEST :

  • Les paiements créés apparaissent dans la section "Test" du dashboard Stripe
  • Les transactions ne sont pas réelles
  • Vous pouvez utiliser les cartes de test Stripe

Mode PRODUCTION :

  • Les paiements apparaissent dans la section "Production"
  • Les transactions sont réelles
  • Les frais Stripe s'appliquent

Cartes de test Stripe

En mode TEST, utilisez ces cartes pour simuler des paiements :

CarteNuméroRésultat
Visa4242 4242 4242 4242Paiement réussi
Visa (3D Secure)4000 0027 6000 31843D Secure requis
Mastercard5555 5555 5555 4444Paiement réussi
Carte refusée4000 0000 0000 0002Paiement refusé
Fonds insuffisants4000 0000 0000 9995Fonds insuffisants
  • Date d'expiration : N'importe quelle date future (ex: 12/34)
  • CVV : N'importe quel code à 3 chiffres (ex: 123)

Checklist de déploiement

Passage en PRODUCTION

  • Tous les tests sont passés
  • L'application a été testée en mode TEST
  • Les clés Stripe LIVE sont configurées dans les deux .env
  • STRIPE_TEST_MODE=false dans .env mobile
  • Le backend utilise STRIPE_SECRET_KEY LIVE
  • Le backend a été redémarré
  • L'application mobile a été redémarrée
  • Vérification dans le dashboard Stripe (mode Production actif)
  • Test de paiement avec une vraie carte (petit montant)
  • Remboursement du test si nécessaire

Retour en TEST

  • Modifier les .env pour utiliser les clés TEST
  • STRIPE_TEST_MODE=true dans .env mobile
  • Redémarrer le backend
  • Redémarrer l'application mobile
  • Vérification dans le dashboard Stripe (mode Test actif)

Troubleshooting

Le mode ne change pas

  1. Vérifiez que vous avez modifié les DEUX fichiers .env (mobile + backend)
  2. Redémarrez COMPLÈTEMENT les deux services (pas juste hot reload)
  3. Vérifiez dans les logs au démarrage

Les paiements échouent en mode TEST

  1. Utilisez les cartes de test Stripe (voir tableau ci-dessus)
  2. Vérifiez que les clés TEST sont bien configurées
  3. Consultez le dashboard Stripe > Test mode > Logs

Les paiements échouent en mode PRODUCTION

  1. Vérifiez que les clés LIVE sont correctes
  2. Vérifiez que le compte Stripe est activé (pas en review)
  3. Consultez le dashboard Stripe > Production > Logs

Support

Pour plus d'informations :


Dernière mise à jour : 10 novembre 2025