Replace hardcoded subscription fields (orders_limit, products_limit,
team_members_limit) across 5 frontend pages with dynamic feature
provider APIs. Add admin convenience endpoint for store subscription
lookup. Remove legacy stubs (StoreSubscription, FeatureCode, Feature,
TIER_LIMITS, FeatureInfo, FeatureUpgradeInfo) and schema aliases.
Pages updated:
- Admin subscriptions: dynamic feature overrides editor
- Admin tiers: correct feature catalog/limits API URLs
- Store billing: usage metrics from /store/billing/usage
- Merchant subscription detail: tier.feature_limits rendering
- Admin store detail: new GET /admin/subscriptions/store/{id} endpoint
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
67 lines
1.8 KiB
Python
67 lines
1.8 KiB
Python
# app/modules/billing/services/__init__.py
|
|
"""
|
|
Billing module services.
|
|
|
|
Provides subscription management, Stripe integration, and admin operations.
|
|
"""
|
|
|
|
from app.modules.billing.services.subscription_service import (
|
|
SubscriptionService,
|
|
subscription_service,
|
|
)
|
|
from app.modules.billing.services.stripe_service import (
|
|
StripeService,
|
|
stripe_service,
|
|
)
|
|
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.exceptions import (
|
|
BillingServiceError,
|
|
PaymentSystemNotConfiguredError,
|
|
TierNotFoundError,
|
|
StripePriceNotConfiguredError,
|
|
NoActiveSubscriptionError,
|
|
SubscriptionNotCancelledError,
|
|
)
|
|
from app.modules.billing.services.feature_service import (
|
|
FeatureService,
|
|
feature_service,
|
|
)
|
|
from app.modules.billing.services.capacity_forecast_service import (
|
|
CapacityForecastService,
|
|
capacity_forecast_service,
|
|
)
|
|
from app.modules.billing.services.platform_pricing_service import (
|
|
PlatformPricingService,
|
|
platform_pricing_service,
|
|
)
|
|
|
|
__all__ = [
|
|
"SubscriptionService",
|
|
"subscription_service",
|
|
"StripeService",
|
|
"stripe_service",
|
|
"AdminSubscriptionService",
|
|
"admin_subscription_service",
|
|
"BillingService",
|
|
"billing_service",
|
|
"BillingServiceError",
|
|
"PaymentSystemNotConfiguredError",
|
|
"TierNotFoundError",
|
|
"StripePriceNotConfiguredError",
|
|
"NoActiveSubscriptionError",
|
|
"SubscriptionNotCancelledError",
|
|
"FeatureService",
|
|
"feature_service",
|
|
"CapacityForecastService",
|
|
"capacity_forecast_service",
|
|
"PlatformPricingService",
|
|
"platform_pricing_service",
|
|
]
|