One Subscription: Web + Mobile (Stripe + RevenueCat + Supabase)
Pay on web or mobile, unlock both, never double-charge. One Supabase column is the source of truth.
What's included
- The Supabase migration (subscription_tier + stripe_customer_id + RLS)
- A Stripe checkout function and the Stripe webhook that maps events to the tier
- A canonical RevenueCat webhook mapping mobile events to the same tier
- The one entitlement-check helper, identical on web and mobile, plus a full README
Stop reconciling two billing systems at runtime. One Supabase column, profiles.subscription_tier, is the single source of truth: the Stripe webhook writes it on web purchases, the RevenueCat webhook writes it on mobile purchases, and every app just reads it. The architecture from a production web app plus Expo app sharing one subscription, packaged into a drop-in kit.
For anyone building a SaaS on both web and mobile who needs unified entitlements without double-charging or runtime billing-SDK checks.
Reviews appear here as the first buyers land. ( social proof — coming soon )