Hi!
I’m currently evaluating the Virtual Currency feature for our iOS+Backend app. At the moment, I’m intentionally not using an authentication system to reduce user friction and churn. Instead, I rely on RevenueCat’s default anonymous app user IDs and Apple’s restore mechanism. This worked well so far for entitlements: when a user deletes and reinstalls the app, RevenueCat correctly restores purchases and migrates entitlements to the new anonymous user ID after a restore.
However, I’m struggling to understand how this is supposed to work with virtual currencies. From reading the docs, it seems that virtual currency balances are strictly tied to the RevenueCat app user ID and are not migrated or restored when the user reinstalls the app and a new anonymous ID is generated.
My questions are:
- When RevenueCat checks historical App Store transactions and restores entitlements via Apple’s restore mechanism, is the virtual currency balance expected to be restored automatically as well, or does restoring virtual currency require retaining the original app user ID (for example, via login or other user identification)?
- In the absence of explicit user authentication, is there any supported or recommended approach to restore or migrate virtual currency balances when entitlements are migrated during a restore on iOS side?
- If not, is it correct to assume that use of virtual currencies inherently requires a stable, authenticated app user ID to be viable in production?
