working
2 files · +19 −0
Pricing is marketing-only. There is no payment processing anywhere in the codebase.
/pricing page + landing preview, driven by components/pricing/tiers.ts — Free $0, Starter $10, Pro $29, Business $49/mo, annual toggle (10× monthly), FAQ promising proration./auth/sign-up; Free links to /developers. Nothing collects money.scripts/sql/; no enforcement of page counts, storage, domains, or AI credits — credits appear only in copy.Net: every account is effectively free and unmetered. To charge, the missing pieces are a processor integration, a subscription/plan column + webhook sync, and quota enforcement in the publish/document server actions.
/api/billing/*; prices resolved by lookup_key (starter_monthly…business_annual).billing_subscriptions + ai_usage_events (manual SQL in scripts/sql/, not yet applied)./settings/billing usage page; pricing CTAs now start checkout.Remaining (user): apply the 2 SQL files in Supabase, create the 6 Stripe prices, set STRIPE_SECRET_KEY + STRIPE_WEBHOOK_SECRET locally and on Vercel, run the test-mode E2E.