Native builds purchase/restore via RevenueCat; browser keeps Stripe checkout/portal. Billing history shows store ledger rows from backend webhooks. Closes #100.