Files
orion/app/modules/billing/services/__init__.py
Samir Boulahtit 9c27fa02b0
Some checks failed
CI / ruff (push) Failing after 8s
CI / pytest (push) Successful in 36m5s
CI / architecture (push) Successful in 11s
CI / dependency-scanning (push) Successful in 27s
CI / docs (push) Has been skipped
CI / audit (push) Successful in 8s
refactor: move capacity_forecast_service from billing to monitoring
Resolves the billing (core) → monitoring (optional) architecture violation
by moving CapacityForecastService to the monitoring module where it belongs.

- Create BillingMetricsProvider to expose subscription counts via stats_aggregator
- Move CapacitySnapshot model from billing to monitoring
- Replace direct MerchantSubscription queries with stats_aggregator calls
- Fix middleware test mocks to cover StoreDomain/MerchantDomain fallback chains

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 20:58:22 +01:00

77 lines
1.9 KiB
Python

# app/modules/billing/services/__init__.py
"""
Billing module services.
Provides subscription management, Stripe integration, and admin operations.
"""
from app.modules.billing.exceptions import (
BillingServiceError,
NoActiveSubscriptionError,
PaymentSystemNotConfiguredError,
StripePriceNotConfiguredError,
SubscriptionNotCancelledError,
TierNotFoundError,
)
from app.modules.billing.services.admin_subscription_service import (
AdminSubscriptionService,
admin_subscription_service,
)
from app.modules.billing.services.billing_service import (
BillingService,
billing_service,
)
from app.modules.billing.services.feature_service import (
FeatureService,
feature_service,
)
from app.modules.billing.services.platform_pricing_service import (
PlatformPricingService,
platform_pricing_service,
)
from app.modules.billing.services.stripe_service import (
StripeService,
stripe_service,
)
from app.modules.billing.services.subscription_service import (
SubscriptionService,
subscription_service,
)
from app.modules.billing.services.usage_service import (
LimitCheckData,
TierInfoData,
UpgradeTierData,
UsageData,
UsageMetricData,
UsageService,
usage_service,
)
__all__ = [
"SubscriptionService",
"subscription_service",
"StripeService",
"stripe_service",
"AdminSubscriptionService",
"admin_subscription_service",
"BillingService",
"billing_service",
"BillingServiceError",
"PaymentSystemNotConfiguredError",
"TierNotFoundError",
"StripePriceNotConfiguredError",
"NoActiveSubscriptionError",
"SubscriptionNotCancelledError",
"FeatureService",
"feature_service",
"PlatformPricingService",
"platform_pricing_service",
"UsageService",
"usage_service",
"UsageData",
"UsageMetricData",
"TierInfoData",
"UpgradeTierData",
"LimitCheckData",
]