name: stripe-subscription description: Add Stripe subscriptions to a Convex + TanStack Start + Better Auth app. Use when implementing paywall, checkout, billing portal, or subscription gating. Documents the full flow: @convex-dev/stripe, webhooks, plan config, permissions, and UI.
Stripe Subscription (Tastik-style)
Use this skill when adding paid subscriptions to a Convex app with TanStack Start and Better Auth. It documents the complete implementation: component setup, checkout, billing portal, subscription gating, and tests.
Workflow overview
- Install & config — Add
@convex-dev/stripe, register component, HTTP webhook route - Env vars — Stripe keys, product IDs, webhook secret,
SITE_URL - Backend — Plan constant, Stripe actions, subscription query,
requireSubscriptionhelper - Gate mutations — Call
requireSubscriptionin lists, items, listEditors - Frontend — Subscription hooks, subscription page, route guards, error handling
- Nav & legal — Billing portal link, trial card, Stripe in third-party services
- Tests — Register stripe component,
seedSubscriptionhelper
For detailed step-by-step instructions with code patterns, see references/implementation.md.