Planification Financière
Règles
- Calcul du MRR : somme de toutes les valeurs mensuelles des abonnements actifs — les abonnements annuels divisés par 12, exclure les frais uniques
- ARR : MRR * 12 — afficher les deux sur le tableau de bord, utiliser le MRR pour les tendances mensuelles, l'ARR pour la planification annuelle
- Composants du MRR : suivre le nouveau MRR, le MRR d'expansion (upgrades), le MRR de contraction (downgrades), le MRR de désabonnement (churn), le MRR de réactivation — afficher sous forme de graphique en cascade
- Burn rate : (trésorerie de départ - trésorerie de fin) / mois — calculer mensuellement, afficher le runway en mois au burn rate actuel
- Tableau de bord des revenus : afficher le MRR, l'ARR, le taux de croissance du MRR (MoM%), la rétention nette des revenus, le nombre total de clients — mise à jour quotidienne
- Projections financières : modéliser 3 scénarios (conservateur, de base, optimiste) — faire varier le taux de croissance et le taux de désabonnement, projeter sur 12-24 mois
- Gestion des devises : stocker tous les montants en cents (entiers) — ne jamais utiliser de virgule flottante pour l'argent — afficher avec
Intl.NumberFormat - Plages de dates : par défaut les 12 derniers mois, autoriser une plage personnalisée — agréger par mois pour les tendances, par jour pour l'activité récente
Modèle de Données du Tableau de Bord
CREATE TABLE revenue_events (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
type TEXT NOT NULL, -- 'new' | 'expansion' | 'contraction' | 'churn' | 'reactivation'
amount_cents INTEGER NOT NULL,
customer_id UUID NOT NULL,
occurred_at DATE NOT NULL,
created_at TIMESTAMP DEFAULT NOW()
);
Agréger le MRR par mois : SELECT date_trunc('month', occurred_at), type, SUM(amount_cents) FROM revenue_events GROUP BY 1, 2.
À Éviter
- Virgule flottante pour l'argent — utilisez les cents entiers partout
- Compter le MRR sans séparer les composants — vous devez savoir pourquoi le MRR a changé
- Granularité uniquement mensuelle — stockez les événements quotidiens, agrégez pour l'affichage
- Ignorer le MRR de contraction — les downgrades sont des signaux précoces de désabonnement