PORTAL_STRIPE
Portail Client Stripe pour la Gestion des Abonnements
Fonctionnement
Lorsqu'un utilisateur clique sur "Annuler l'abonnement", il est maintenant redirigé vers le Customer Portal de Stripe au lieu d'annuler directement depuis l'application.
Avantages
✅ Gestion complète par Stripe : Les utilisateurs gèrent leurs abonnements directement depuis Stripe ✅ Sécurité : Stripe gère toute la logique de paiement et d'annulation ✅ Fonctionnalités supplémentaires :
- Annuler l'abonnement
- Reprendre un abonnement annulé
- Mettre à jour la méthode de paiement
- Voir l'historique des factures
- Télécharger les factures
- Mettre à jour les informations de facturation
Configuration requise
Le Customer Portal de Stripe doit être configuré dans votre tableau de bord Stripe :
- Allez sur https://dashboard.stripe.com/settings/billing/portal
- Activez le Customer Portal
- Configurez les fonctionnalités disponibles :
- ✅ Annulation d'abonnement
- ✅ Reprise d'abonnement
- ✅ Mise à jour de la méthode de paiement
- ✅ Téléchargement de factures
Routes concernées
- Abonnement utilisateur :
POST /abonnement/cancel→ Redirige vers le portail Stripe - Abonnement entreprise :
POST /m/{slug}/abonnements/{type}/cancel→ Redirige vers le portail Stripe
Retour après gestion
Après avoir géré leur abonnement dans le portail Stripe, les utilisateurs sont redirigés vers :
- Abonnement utilisateur :
/abonnement - Abonnement entreprise :
/m/{slug}?tab=abonnements
Webhooks
Les changements effectués dans le portail Stripe déclenchent automatiquement les webhooks :
customer.subscription.updated: Quand l'abonnement est modifiécustomer.subscription.deleted: Quand l'abonnement est suppriméinvoice.payment_succeeded: Quand un paiement réussit- etc.
Ces webhooks sont déjà gérés par StripeWebhookController et mettent à jour automatiquement la base de données.
Note pour les administrateurs
Les administrateurs peuvent toujours annuler les abonnements directement depuis l'interface admin (méthode cancelStripeSubscription dans AdminController), car ils ont besoin de cette fonctionnalité pour la gestion manuelle.