Get help with anything related to RevenueCat.
- 1,002 Posts
- 2,561 Replies
I would like to track on my server when each user first subscribed. I hit the /subscriptions endpoint and check `subscriber.original_purchase_date`, but it is set to some date in 2013 (I only started implementing IAPs in the past couple of weeks). The property under `subscriptions.<product>.original_purchase_date` seems correct, but I would prefer not to have to check every product in that `subscriptions` dictionary for the earliest date, especially not knowing right now which products I will want to add later, and which of those I will count as subscriptions.What is the purpose of `subscriber.original_purchase_date` and why is it set so early? Is it an artifact of Sandbox testing? A bug?
Hey team, consider the following scenario: User Signs up. We show them an “Initial Paywall” Offerings: $20 month, 2 week free, $80 a year, 2 week free Here, we let the user “Skip” the Paywall In this case, we don’t show it to them again, for 2 weeks _2 weeks later_. We show the user a “Blocking Paywall” Offerings: $20 month, $80 a year Some users buy at “Initial Paywall”, some users buy at “Blocking Paywall”. 3 months later, the user goes to their “Membership Settings” We want to let the user upgrade / downgrade Here, their `activeSubs` could contain _either_ 2 weeks free, or notProblem:Let’s say in the upgrade / downgrade, I have “$20 a month”, “$80 a month”. A user on the “20 a month, 2 weeks free” _can theoretically “upgrade” to the $20 a month plan. This feels like a bug, as it won’t make a difference -- I would like it so they can only upgrade to the yearly one. Is there a “best way” to handle this scenario?
Why does Google subscriptions get deleted from RC (but not Google) after the initial 5 minutes? (sandbox testing)
I’m implementing RC on Android. Sandbox testing.My use case is this:✅ I make a purchase in the app and reload the purchaser info ✅ The user correctly now has an active subscription, in both RC and Google Play Store❌ 5 minutes later I re-open the app and load purchaser info. The active subscription is gone from RC, both via getPurchaserInfo and on the website✅ On Google Play Store it’s however correctly still active and I keep getting purchase confirmations mails every 5 minutesWhy is the subscription deleted from RC after the initial 5 minute subscription period?
How does RevenueCat handle the situation when a user that has an active subscription for a given entitlement intends to purchase a “lifetime subscription” - i.e. a non-consumable product that is attached to the same entitlement?Does this automatically stop/cancel the running subscription? Is there any special implementation needed to prevent that a user purchases lifetime access but at the same time has a running subscription?I would appreciate any input on this (or references to documentation) since I have not been able to find an answer anywhere so far. Thanks in advance!(Asking for an iOS application)
I cannot find a clear way to implement the IOS promo codes inside React Native surely, I followed the documentation here : https://docs.revenuecat.com/docs/ios-subscription-offers I tried both offer codes and the promotional offers the promotional offers could not be used, it fired error,this offer is ineligible for the current userlooks these promotional offers cannot be used for the new users so I had to switch to the offer codes, I tried to open the sheetPurchase.presentCodeRedemptionSheet(); it does not show anything, neither give me any errors to know what’s happening Apple forcing us to use their promotional system to pass the app review and publishing to the storeMy client application is delayed for a months because of this feature
Hi Team,We have setup 3 apps in our RevenueCat project. Apple, Google and Stripe. If we need to call the "Get or Create Subscriber" REST API, which API key we need to use. The app specific public API keys or the internal API key. Also, if a user has a play store subscription and if we try to fetch the user details using the Apple app public API key or vice versa will it work. Or is it a good practice to do so. Need help on this query. Awaiting your revert on the same.
I have a few subscription apps and noticed today that the financial information in Google is showing a lot more activity than revenue cat,The money that has been paid and showing in revenue cat is way less than the value within google play.I have not even looked where the money is… but its worrying that revenue cat’s status page is not showing any of the google financials.Anyone having any issues like this, it makes me think why am I using revenue cat as my earning are not correct?
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.
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.
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.
User got purchase transferred from another user, in the renewal event after this transfer the webhook did not receive app user id, instead only RCAnonymousID is included in the webhook request. How do I know which user had this renewal in this case?
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.
Good morning,We are trying to integrate Stripe into RevenueCat, in addition with Google Play and App Store. We had some doubts regarding if our product structure in Stripe is adequate for integration.- We have a Prime Entitlement.- In Stripe we have 2 products, one for Spain and one for the US.- Each of them has 3 prices (what in RevenueCat are packages) for monthly, quarterly and yearly subscription.These three packages are the same ones we have in Apple and Google Play.Therefore in Stripe we have two products, each of them with 3 prices.Will this Stripe structure work with Revenuecat? If not, how could we properly modify our Stripe structure to work correclty?
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.
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!
Relatively minor but just seeking some clarification on the numbers in the dashboard. We are currently doing testing and haven’t published the app to a production environment yet. As it stands the dashboard is showing 132 new customers and 138 active users, all of these are test users. Deleting the test customers does remove them from the Customers list (after a period of time) however the dashboard still seems to count them. Active users, as I understand it, is just the number of user ID’s (including anonymous/generated) that have been seen within 28 days. My question is over time we’ll still be testing things and will interfere with these numbers. Is there anyway to differentiate between the testing users and production. Toggling the ‘View Sandbox data’ doesn’t seem to effect these numbers?
Hello,I have an app, where I’m selling pictures. I have Non-Consumable and Auto-Renewable Subscription formula. This means, you can buy pictures one by one or you can subscribe for one year to get all of them. My GET API check your inventory, to make sure you own the image. Therefore I synchronise the database via Webhook. My RevenueCat structures look like this:I have 1 offering called default, with 2 packages (Annual and Lifetime) Annual package has 1 product Lifetime package has 1 product (I don’t want to map the product-image one by one, cuz it’s not scaleable) I have 2 entitlements First one is for lifetime things, therefore this has only 1 product (Lifetime package) Second one is for subscriptions and lifetime things, therefore this has 2 products My problem is, if my customer make a Non-Consumable purchase (so buy only 1 image), my webhook called, but i do not know, which image was bought. I know who bought, cuz after login I’m settings the app_user_id. Any suggestion?
A real customer in our production iOS app reached out to my team today after upgrading their subscription and saw inconsistent results. We investigated and reproduced the issue in the sandbox. Based on the data we receive from RevenueCat, we display to our customers info about their active subscription(s). In this case we (my team + customer) are seeing that the customer is currently subscribed to two subscriptions in the same iOS Subscription Group. We are waiting on the customer to send us a screenshot of their active subscription for our app from the App Store - Manage Subscriptions screen and waiting for confirmation if they received a prorated refund from their previous subscription from Apple. We suspect (and hope) that the screenshot will show the customer is only subscribed to the upgraded Tier 1 subscription which matches the validated apple receipt data that indicates the Tier 3 subscription was upgraded (is_upgraded: true). Details We have 4 iOS subscriptions right now. In o
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.
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.