Subscription & Billing
Manages subscriptions via Stripe with plan-based entitlements controlling feature access and resource limits.
Overview
Laravel Cashier handles Stripe integration. The OrganizationBilling model tracks subscription status, entitlements (maximum L1 locations, maximum assets, entitled modules), and complimentary/trial states. Middleware gates feature access based on the active plan.
Key Features
- Billing dashboard — View plan status, usage versus limits, and quick links to manage your subscription.
- Stripe Customer Portal — Self-service access for plan changes, payment method updates, and invoice downloads.
- Trial status — Displays remaining trial days so organizations know when billing begins.
- Complimentary organizations — Comped organizations bypass all billing constraints.
- Graceful degradation — If a subscription lapses, features are gated but all data is preserved. Access resumes when billing is restored.