Introducing Offline Entitlements: Uninterrupted in-app purchases
Blog post from RevenueCat
RevenueCat has announced the introduction of Offline Entitlements to its SDKs for iOS and Android, allowing users to make in-app purchases even when the company's servers are temporarily unreachable. This feature enhances the reliability of the purchasing process by enabling the SDKs to continue processing transactions during server downtimes, with the system automatically syncing once the servers are back online. The implementation involved careful planning to ensure security and prevent fraudulent activities, using Apple’s StoreKit 2 and Google’s Play BillingClient for secure subscription verification. Prior SDK versions were resilient thanks to caching layers, but the new feature allows cached offerings and entitlement mappings to function during outages. Testing was rigorous, involving unit, integration, and manual tests to handle various state changes. While this feature improves user experience and business resilience, it is limited by certain constraints, such as the need for initial online access and incompatibility with consumable purchases. Nonetheless, it represents a significant advancement by reducing reliance on server uptime and enhancing app performance without requiring code changes.