Public plan catalog, Stripe-backed self-serve checkout, clinic entitlements, Plan & Limits posture, and restricted-mode behavior.
StripePublic catalogPlan & LimitsRestricted mode
Workflow
How This Flow Lands In The Product
1
Choose a public plan
Clinic owners can start from the public plan catalog without waiting for a platform admin.
2
Provision clinic
Public self-serve and platform-admin provisioning both create the clinic and seed a local subscription shell immediately.
3
Hosted checkout or trial
Clinic owner can continue into hosted Stripe checkout or stay on a public trial path for the selected plan.
4
Webhook sync
Stripe events update the central subscription records, cached tenant plan, and grace or restricted state.
5
Tenant enforcement
Clinic dashboard still loads, but restricted subscriptions are routed into plan, readiness, and billing-safe surfaces.
Details
Commercial Surfaces
Commercial is split between central control and clinic-local visibility.
Public Plans page for self-serve owners to compare plans, trials, and starting posture before signup.
Owner onboarding surface for plan confirmation, trial posture, and optional checkout handoff during clinic launch.
Platform Commercial page for subscription matrix, webhook audit, provider health, and plan catalog.
Tenant Plan & Limits page for effective plan, feature flags, usage, communications volume, and upgrade posture.
Clinic scorecard and readiness cards surface subscription mode so buyers and operators can explain access state immediately.
Commercial state remains visible even in restricted mode so owners can recover access without guessing why the clinic is limited.
The self-serve commercial story starts before platform login.Commercial centralizes plan catalog, subscription posture, webhook health, and usage review for every clinic.Tenant dashboard keeps plan posture visible alongside readiness and AI summary.
Details
Plan And Limits Narrative
Buyer-facing commercial proof is clearer when clinics can explain limits, posture, and next actions without opening raw Stripe records.
Plan & Limits now shows usage progress, entitlement reason, restricted or grace explanation, and upgrade posture.
Dashboard and clinic scorecard surfaces reuse the same posture summary so sales or support can explain access state in one screen.
Restricted mode preserves readiness-safe, billing-safe, and AI-review-safe paths while blocking ordinary clinic operations.
Details
Canonical Stripe Contract And Restricted Modes
Stripe integration now reads from one billing config contract and one subscription policy story.
Service code reads billing.stripe.secret, publishable_key, webhook_secret, api_base, checkout_success_url, checkout_cancel_url, and portal_return_url only.
Public self-serve owners and platform admins both launch hosted checkout or billing portal handoff without inventing plan state in the tenant shell.
trialing and active clinics stay normal; past_due clinics enter grace mode; unpaid, canceled, and paused clinics move into readiness-safe restricted mode.
Restricted mode preserves plan, billing-safe, readiness-safe, and AI-review-safe surfaces while blocking ordinary clinic operations.
Coverage appendix
This page is tied back to routes, views, requests, tests, and implementation files in the generated docs coverage appendix.