RevenueCat Web Billing
Infnits Pro checkout, entitlement checks, and backend sync
Uses @revenuecat/purchases-js with a hosted paywall and a custom package purchase fallback. The backend remains the source of truth for app access after the 7-day app-managed trial.
SDK Config
Web API key: test_mYl...
SDK configured: yes
Custom Purchase Fallback
Best practice: use hosted paywall first, keep this as a manual fallback and debugging tool.
No packages loaded.
Configure these package IDs in RevenueCat offering default: monthly, yearly, lifetime.
Entitlement & Customer Info
Local entitlementInactive
Entitlement checked
infnits Pro// No customer info loaded yet
Backend Sync & Status (Optional in this demo page)
For a real app, do not trust client-only entitlement state. Call the backend and gate APIs on backend entitlement status.
// Backend status not loaded
Runtime Messages
Ready.
Error handling best practice: treat 1 as a non-error UX path and only surface actionable errors.