Get help with anything related to RevenueCat.
- 1,003 Posts
- 2,565 Replies
We have a production version of the app on testflight, and i assume users can make free IAP’s with sandbox there and gain premium user status.When we promote this build to appstore, as its backed by the same environment, users can use their same account on production.I wanted to know, will revenue cat update our backend to make their account ‘non premium’ again after they open the appstore build of the app? despite using their same user account and backend server that they had sandbox premium on in testflight?I didnt want a situation where users are non premium in revenue cat, but still marked as premium on our server causing issues.Thanks
I’m working on an IOS application with the following in-app purchase options:$0.99 - Receive 1 credit per month (Auto-Renewing) $1.99 - Receive 3 credits per month (Auto-Renewing) $2.99 - Receive 5 credits per month (Auto-Renewing) $3.99 - Receive 10 credits per month (Auto-Renewing) $4.99 - Receive 1 credit (Consumable)Users may only subscribe to one auto-renewing option at a time, but they can purchase the single credit consumable without restriction.My question is how should I organize these products as offerings/entitlements/packages/etc.? My current method is:All four auto-renewing products above are associated with a single entitlement Each auto-renewing product has a 1:1 “parent offering” The consumable product has no associated entitlement/offeringThe tutorials I followed all suggest using offering and entitlements, and so I did. However I feel it’s all clunkier than it has to be. For example, with the Purchases SDK, fetching the offerings and then extracting the packages (prod
Hi there,Our app has options for subscriptions:monthly renewing subscriptions annual renewing subscriptions lifetime month_upgrade_lifetimeThe lifetime option is implemented as a non-consumable purchase in the App Store.The issue we’re having is that once a user has purchased a lifetime subscription in the sandbox, there seems to be no way to ignore that purchase (even to Deleting Account, user can still restore after deleting the account).So we have to treat sandbox lifetime purchases as invalid. But if I ignore sandbox purchases, this would also ignore non-sandbox purchases for the same entitlement. As lifetime purchase may have high priorityin Revenuecat SDK.If one user made a monthly subscription via AppStore and also made a lifetime purchase via TestFlight or made a lifetime purchase via TestFlight first and then made a month_upgrade_lifetime purchase via AppStore. restore or getPurchaseInfo methods will return the lifetime purchase recipient (Sandbox) first on TestFlight en
I’m using the Flutter SDK and the introductoryPrice field returns null even if the free trial is set on the Google Developer Console. This also happens in production. I looked up my crash reports and found out that there aren’t many users affected by this bug. I haven’t tested on several devices, but I guess it only happens on several Android devices or the OS versions. At least I confirmed that it doesn’t work on my device. Anyone else has experienced the same issue?
I’m trying to push my app out for Beta testing but when I upload a build to TestFlight and run it the call to Purchases.getPurchaserInfo() hangs and never returns. It works on the same device when just running outside of TestFlight. I can run through the whole IAP flow when running on this device. But as soon as I push to TestFlight and run it through there it just hangs waiting to get purchaser info. I think these are the logs needed:default 12:08:37.873277-0500 Runner [Purchases] - DEBUG: There are no requests currently running, starting request GET /subscribers/$RCAnonymousID0X0P+0f621ae3fbd374db9b96d0b6d31ea5d20default 12:08:37.873327-0500 Runner [Purchases] - DEBUG: API request started: GET /v1/subscribers/$RCAnonymousID:f621ae3fbd374db9b96d0b6d31ea5d20default 12:08:37.883570-0500 Runner [Purchases] - DEBUG: There's a request currently running and 0 requests left in the queue, queueing GET /subscribers/$RCAnonymousID0X0P+0f621ae3fbd374db9b96d0b6d31ea
Is there a way to know the monthly start date of the user's subscription? I can use the latest purchase date for a one-month subscription product, but there is no way to know a three-month or one-year subscription product. Because the latest purchase date will continue to change.
I have a subscription tier in my iOS app. I understand how to access `purchaserInfo` to check if the current user has the entitlement associated with this tier. However, I would like to display a badge on all user icons for other subscribers in the app - a little like the ‘verified’ badges on a Twitter account image.Clearly I need to store something server-side on my own user objects to track this, but I’m not sure what approach to take. Perhaps each user’s status should be saved to the server by my app as their entitlements change, and other instances use this saved user flag? But entitlements can change when the app isn’t being used, such as cancelled or expired subscriptions. My backend will have no knowledge of that change, so that use will continue to be displayed as a subscriber until and unless the launch the app again.Any suggestions on a good approach for this?
I am using RevenueCat to manage my 3 streams of subscriptions: Android, iOS, and Web. For Web purchases, we are using the promotional entitlements API to register the relevant subscription purchases. However, we are not sure how to manage grace periods for these.Is there a recommended way of doing it using RevenueCat? Or should the logic to manage a grace period be done on our side?A potential solution we have discussed is to update a user’s subscription information when a billing issue is detected on a payment method on the Web platform. This would allow us to keep a consistent format in managing mobile and web purchases. However, there doesn't currently seem to be a way to do that.
In my application i want to achieve the following flowActual flow:User install the app → Purchase the subscription → Create account on our app → Get access to appIssue:User install the app → Purchase the subscription → Uninstall the appNow when a user re install the app we are calling restore function of Revenue Cat to restore purchases just to verify if the device has any active purchases If any purchase found → navigate to sign up screen and if no purchase is found → navigate to purchase screen againIn our app launch we are calling Restore function which restore purchases to anonymous user which is creating a edge case, that every time the app is installed it restores the purchases and any user who sign up will be bind to that purchase with provided app user id, means its possible to create multiple accounts on same device/same purchase.For-example: App launches, restore happens and if there is no logged in user, some another user will create an account on same active subscription be
Hello! I am planning on increasing the price of the subscription to access my app. I want to keep all current users on the existing price, and only increase price on new users. I am planning on creating a new subscription group (iOS) and the google play equivalent so that new users cannot go into settings and switch to the cheaper subscription plan that my legacy users will be on. My question is: can my new subscription group be connected to my existing RevenueCat Entitlement? Or will I have to create a new RC Entitlement for each subscription group? TIA!
Hey,We’ve come across a weird Family Sharing transaction, and since similar cases are not described in the RC documentation, we decided to ask it here. So, we have a user who activated our premium features via Family Sharing, and we can see it through RC (the transaction has the flag "is_family_share": true). The same user has another transaction with the same transaction_id ("is_family_share": true), but it’s a refund. How is that possible if the user who purchased the app initially doesn’t have any refund transactions?Is this how disabling Family Sharing on the user’s end reflected? The problem is that Premium stopped working for the user who activated it via Family Sharing, and they claim that they didn’t changed anything on their end.
I was told to create a unique identifier for each course. But I have thousands of courses and creating a non-consumable for each unique course(apple id, google id, revenuecat ids, entitlements & offerings) is not optimal. How about I create pre-defined prices like ios: tier1, tier2 These are my consumable products: tier1, tier2, tier3 ...Each course has one of the predefined tier price. After selling the course with tier1 consumable, I’ll add the course id to user’s inventory in my rest service. That way, after the course is sold in one platform, it can be reached by all the platforms because I get my inventory from my rest service.Is this a feasible solution? Will there be any problem in that approach, especially by Apple?
timeline:fc_0499_1m_1m0299: removed in iOS app version 1.5 (released on 01/25/2022), replaced by fc_0099_1w_ioshow could the user (1st using app on 02/13) change from fc_0099_1w_ios to fc_0499_1m_1m0299?especially when there is no reason to change: fc_0499_1m_1m0299 is more expensive.
I have created monthly and yearly subscriptions with the same level on appstore. In the app I first subscribe for monthly subscription and then I change the subscription from monthly to yearly in the app using Revenuecat react native library. After monthly subscription expires it changes to yearly correctly. When yearly is activated I change the plan again to monthly. Instead of changing the subscription back to monthly after yearly subscription ends in an hour it simply expires and the user is left without a subscription plan. Is it a limitation on Sandbox or an error? If I first subscribe to yearly and then change to monthly then after an hour it changes to monthly correctly. Highly appreciate if someone can provide any guidance on this issue.
After having subscriptions working correctly in my apps on ios and android, since yesterday I have started receiving an error when connecting to the android play store and it is not possible to make a subscription on android. Anyone know what might be happening?
Do you know what the best way is to onboard a user and give them access to a subscription for free? I am using Firebase as a back end, fyi. I need a way to onboard clients and provide them access to subscription features without charging them.Thanks in advance for your help.
99% of my subscriptions are working fine, but I have a handful of users that are ‘renewing’ every month for a price of 0. Their initial conversion was also 0, as is every monthly renewal cost ongoing. Any idea what’s going on? Am I being cheated or is something just being mis-reported?I’ve never changed prices, run any offers or introductory pricing, just a 7 day free trial, which as mentioned above is pretty much working as expected apart from these few anomalies.Thanks
Hi there. I have a product which unlocks content for 1 day to specific features inside my App. (We control this time on our server so no problem here).The problem that we're having is that when we try to purchase this item more than once. Google shows a Modal: "Error: You already own this item"I guess that this is happening because products are non-consumable by default.The only thing that I need is to make this product consumable to let the user buy the item as many times as he wants.How can I do this using RevenueCat?Thank you in advance!
Hello support team,I have setup yearly subscription in google play and getting that offer by revenue cat. I created yearly package for 60 usd. I usually offer discount code to users. So I want when user apply discount code in yearly package, they will get 20% discount on 60 USD. is it possible to do? Please let me know.
Hello support team, I am using sandbox to test purchase in revenue cat in flutter android. Usually test purchase last for 30 mins for annually subscription. So when a purchase info expire, it automatically renew subscription for the user. Why this happen. I have no idea. Does anyone has?
Hello, I am facing a weird problem. I purchase a subscription by flutter app. Then I see the purchase info in recent transaction in dashboard in revenue cat. That's fine. But if I log out and login in app, I see another renew transaction in chart in dashboard. Why a new renew purchase create automatically. I don't understand . Please help me.
I filed this issue in the github flutter repo, but was informed that no human will look at it because “the template was changed”.The template is entirely irrelevant to the content of the ticket, because the issue is related to the way the project itself is maintained.Please do not ignore issues just because the flutter doctor output is not attached, there are plenty of cases where this is just a waste of everybody’s time.
Log in to the Community
Authenticate with RevenueCat
Enter your username or e-mail address. We'll send you an e-mail with instructions to reset your password.