Stripe & abonnements dans Django

Mettre en place des abonnements réels dans Django : produits & prix, Checkout, portail client, webhooks sécurisés et gestion complète des statuts (essai, actif, suspendu, expiré).

Objectifs pédagogiques

  • Configurer Stripe (produits, prix récurrents, taxes) et relier un projet Django existant.
  • Déployer un flux d’abonnement avec Checkout Session et Customer Portal.
  • Sécuriser et traiter les webhooks pour tenir à jour les statuts d’abonnement.
  • Gérer essais, proration, coupons, annulations planifiées et relances basiques.
  • Passer proprement du mode test au mode production (clés, idempotency, logs).

Public & prérequis

  • Développeurs Django / Full-stack, CTO/Tech lead, chefs de projet techniques.
  • Connaissances : Python, Django (views/urls/models), notions d’API REST.
  • Compte Stripe (test), environnement Python 3.10+ opérationnel.

Programme (1 jour intensif)

Matin

  • Tour d’horizon Stripe Billing (produits, prix, taxes, mode test vs prod).
  • Connexion Django ↔ Stripe : clés d’env, SDK, notions d’idempotency.
  • Checkout Session : création côté serveur, retour de succès/annulation.
  • Customer Portal : gestion autonome des moyens de paiement et des plans.

Après-midi

  • Webhooks signés : vérification de signature, sécurité et relecture d’événements.
  • Événements clés : checkout.session.completed, invoice.paid, customer.subscription.updated.
  • Modèle Django minimal : Customer, Subscription, statuts, dates, plan.
  • Cas d’usage : essais (trial), proration, coupons, annulation planifiée et relances.
  • Passage en production : clés live, journaux d’événements, monitoring, pièges à éviter.

Option Jour 2 (approfondissement)

  • Plans multi-produits, add-ons, upgrades/downgrades propres.
  • Taxes (Stripe Tax) et facturation multi-pays.
  • Webhook resiliency : files, replays, idempotency avancée.
  • Tableau de bord admin (Django) : vue des abonnements, exports.
  • Bonnes pratiques RGPD et conservation des données de paiement.

Ateliers pratiques & livrables

  • Mini-projet Django avec pages Pricing, Checkout, Compte.
  • Webhook Django sécurisé, mapping des événements → mise à jour en base.
  • Starter kit (extraits de vues/urls/models) et checklist de mise en prod.
  • Support PDF du cours et ressources officielles.

Sessions janvier à juin 2026