diff --git a/src/PowderCoating.Web/Controllers/RevenueController.cs b/src/PowderCoating.Web/Controllers/RevenueController.cs index 04fe5ea..feb0b83 100644 --- a/src/PowderCoating.Web/Controllers/RevenueController.cs +++ b/src/PowderCoating.Web/Controllers/RevenueController.cs @@ -74,9 +74,10 @@ public class RevenueController : Controller // ── Revenue metrics ────────────────────────────────────────────── - // Active paying companies + // Active paying companies — exclude trials (no StripeSubscriptionId = on trial) var payingActive = companies .Where(c => + !string.IsNullOrEmpty(c.StripeSubscriptionId) && (c.SubscriptionStatus == SubscriptionStatus.Active || c.SubscriptionStatus == SubscriptionStatus.GracePeriod)) .ToList(); @@ -111,6 +112,7 @@ public class RevenueController : Controller // ── Plan distribution ──────────────────────────────────────────── var planDistribution = companies .Where(c => !c.IsComped && + !string.IsNullOrEmpty(c.StripeSubscriptionId) && (c.SubscriptionStatus == SubscriptionStatus.Active || c.SubscriptionStatus == SubscriptionStatus.GracePeriod)) .GroupBy(c => c.SubscriptionPlan) @@ -137,6 +139,7 @@ public class RevenueController : Controller var activeInMonth = companies .Where(c => !c.IsComped && + !string.IsNullOrEmpty(c.StripeSubscriptionId) && c.CreatedAt < monthEnd && (c.SubscriptionStatus == SubscriptionStatus.Active || c.SubscriptionStatus == SubscriptionStatus.GracePeriod ||