For teams validating the product shell and basic account flows.
A pricing page template that works for both marketing and authenticated upgrade flows.
This page is intentionally more generic than the old billing demo. It can live in front of the paywall, compare plans, describe credits, and route the user into the shared Stripe checkout flow when they are ready.
Pricing contract
Plans
Replace plan names and copy, but keep the route and flow structure.
For production teams that want the full shared SaaS surface.
For top-ups and product flows that mix subscription and credits.
Pricing notes
These notes explain the template boundary, not your final commercial policy.
Marketing page here, payment truth there
The pricing page lives in the frontend, but all checkout creation, webhook truth, and subscription state remain backend-owned.
Replace names, not route structure
You should absolutely replace Starter / Pro / Credits copy, but it is useful to keep `/pricing` and `/billing` as stable product routes.
Growth path already preserved
If a referral code was captured before signup, the billing page can still forward it as metadata when checkout is created.