Sometimes a user will say they've made a purchase but they don't seem to have access to the content in RevenueCat. What gives? There are several reasons why that might happen, and this article will walk you through what you can do to troubleshoot.
If there's no purchases showing in the RevenueCat dashboard it means that either no receipt was sent by that App User ID, or the receipt that was sent didn't contain any purchases. In this case you should:
- Ask the user to Restore Purchases (or someway trigger the restoreTransactions() SDK method). Restoring will re-sync the current receipt on the device with RevenueCat, and unlock any associated content. There are cases, such as network connectivity failures, where the receipt may never make it to RevenueCat after a purchase. There is automatic retry logic built into the SDK to handle these scenarios, but a manual restore is another way to resend the receipt.
- Try to confirm with the user that they are logged in with the correct Apple ID/Google account. Some users have multiple devices with different accounts and they'll forget which account they purchased with. Restoring purchases can help here but only if they're using the same account they purchased with before. To provide a good customer support experience, you can grant them a promotional subscription while this gets sorted out.
- In rare cases, the user can try to uninstall and reinstall your application, then attempt to restore again. There are instances where a receipt file will remain empty after a purchase and re-installing seems to resolve the issue.
If there does appear to be purchases showing in the RevenueCat dashboard but the user still says they don't have access, you should confirm that the purchase actually unlocked an Entitlement (assuming you're using Entitlements).
- Make sure you've added all of your products to the correct Entitlement in the RevenueCat dashboard. It's easy to add a new product to your app and forget to add it to your app's Entitlements, so it's worth double-checking that everything's set up correctly on your dashboard.