Le défi
Le point de départ
Image Charts génère des graphiques via URL pour les emails et dashboards des développeurs. En pleine croissance, le fondateur gérait encore les abonnements Stripe à la main, en éditant un fichier CSV à chaque nouvel abonné : fragile, chronophage et non évolutif. Objectif : automatiser entièrement ce processus côté back-end.
- Problème initial
- Gestion manuelle et chronophage via un CSV.
- Objectif de la mission
- Automatiser 100 % du cycle de vie des abonnés.
- Problème initial
- Erreurs humaines, impayés non détectés.
- Objectif de la mission
- Sécuriser le processus et fiabiliser la détection des impayés.
- Problème initial
- Aucune intégration temps réel Stripe ↔ base interne.
- Objectif de la mission
- Bâtir une intégration robuste (webhooks / file d’attente).
Notre approche
Ce qui a été mis en œuvre
- 1
Intégration temps réel & résiliente
- Webhooks Stripe pour capter les événements d’abonnement en temps réel.
- File d’attente Redis : aucun événement perdu, même en pic de charge.
- 2
Automatisation complète du flux
- Logique métier Node.js/NestJS pour interpréter les statuts Stripe.
- Base mise à jour automatiquement, sans aucune intervention manuelle.
- 3
Environnement & qualité
- TypeScript et NestJS pour une architecture back-end maintenable.
- Tests unitaires sur les webhooks et la mise à jour de la base.
Résultats
Ce que ça a changé
Efficacité
Validation manuelle (~15 min par abonnement).
Validation instantanée et sans erreur.
Gain de temps
Temps perdu à maintenir le CSV à jour.
Plus d’une heure récupérée chaque mois.
Finances
Impayés non détectés ou traités tard.
Détection automatique des impayés (jusqu’à 5 000 €).
Compétences mobilisées
La stack du projet
Back-end
- Node.js
- NestJS
- JavaScript
- TypeScript
Intégration & résilience
- Stripe
- Webhooks
- Redis
Qualité
- Tests unitaires
Repartez avec le livret complet
Toute la mission Image Charts, mise en page et prête à partager.