Discussion and help from anything related to RevenueCat.
Recently active
On one of my devices, I’m consistently getting nil in PurchaserInfo for both originalApplicationVersion and originalPurchaseDate. Based on what I’ve read in the docs and elsewhere, I thought in the sandbox I should always expect originalApplicationVersion to be “1.0” and originalPurchaseDate to be 2013-08-01.I did notice that in the header for both of these properties, it says:@note This can be nil, see -[RCPurchases restoreTransactionsForAppStore:]But that function doesn’t exist.This seems like pretty odd behavior, since it’s only happening on one of my devices, both in TestFlight and running through Xcode. I can’t confirm it easily, but I think one of my TestFlight testers is experiencing it too.I also tried a few different versions of the SDK and the issue was the same. Purchases iOS 3.12.3iOS 14.7.1
Hi,We are looking into using the RevenueCat integration with Stripe to provide our users with a way to purchase subscriptions via our website.I have looked at the RevenueCat docs but it is not clear to me to the ideal way to do this. Should the RevenueCat SDK be embedded in the webpage? This would require the public key to be in clear text on the web - is there an issue with that? I know that it is a public key and is usually embedded in an app, but this is still more secure than having it on a website. Another option is to proxy requests via our own backend? And how would you suggested we list available offerings on a website? The getOfferings API requires an app_user_id however we would like to display offerings on our website homepage before any form of user has been created.Thanks for your helpDanny
Is there a reason, why you removed the total revenue chart in the new revenue charts? I know it is shown, when you hover it, but that makes the user experience way worse. We also used a screenshot of this chart to report to our investors. That is not possible anymore. I would suggest, that you bring it back as it was, or give the possibility to at least see it. This change decreased usability in my opinion.
I am looking into how to support discounted subscriptions in our app similar to how we provide them in our web based product. We have a few different scenarios that I am looking to support, specifically:Giving an introductory offer of 20% off for 3 months based on signup criteria Giving an introductory offer of 20% off for 6 months based on different signup criteria Giving a free month of a subscriptionI am looking at https://docs.revenuecat.com/docs/ios-subscription-offers to try to figure out the best option for me. It looks like Introductory Offers is what we want for the first two bullet points since we can automatically apply it in-app at initial purchase time without the customer needing to enter an offer code. However, the notes beside intro offers says “SDK applies offer to purchases automatically”, does that mean I can’t control which of the two intro prices I offer? Is that a misunderstanding of intro offers on my part perhaps? Basically, based on server side information, I w
Hello,I’m trying to run RevenueCat SDK on android and iOS from flutter and I have two questions.This is my code for purchasing.‘’’makePurchase() async { try { PurchaserInfo purchaserInfo = await Purchases.purchasePackage(package); var isPro = purchaserInfo.entitlements.all["test"]!.isActive; print('PRO : $isPro'); if (isPro) { print("이즈프로"); DataStorage().setPremiumUser(true); ShowSnackBar().getSnackBar(context, 'Thank you for purchasing.'); Navigator.of(context).pushAndRemoveUntil(MaterialPageRoute(builder: (context) => MainFrame()), (Route<dynamic> route) => false); } } on PlatformException catch (e) { showErrorMsg('Purchase error', e); }}‘’’ App was closed after the first purchase was successful.I was testing on the Android device and the purchasing was successful. I can see the purchasing record from my Google play console. But the app was closed right after purchasing finished. The error seems occurred from the red line above (p
Hi everyone,For testing purposes in sandbox mode, I would like to be able to generate a brand new user id, that would not be tied to any purchase, while staying on the same Apple device.The scenario would be this: A tester is logged in with an anonymous user ID, or an alias of one. The tester makes a bunch of purchases / restore etc. operations. The tester needs to test something else as a brand new user. The tester generates a brand new user ID (provided ID), that is not an alias. The tester is able to perform new purchase related tests as a brand new user.I’m currently trying to make step 4 happen. I’ve tried logging out and logging in with a new provided ID, but it just creates a new alias.From the login() chart in the docs, what I’m asking seems to be impossible but I would really like to make sure and if that is the case, find out whether there might be some type of workaround?Any help is greatly appreciated!
We have been prompting different user cohorts to subscribe. To judge the effectiveness of our targeting, we created a different UTM campaign ID for each cohort. All of the these subscriptions are via Stripe. Is there a way for us to breakout subscriptions based on weblink or UTM campaign ID?
I noticed that it takes a few seconds to load the purchase screen in iOS after calling `Purchases.purchasePackage` in the React Native package.It also takes several seconds after the user completes the purchase before the receipt is acknowledged and this method returns a result.Is there any mechanism to know which part of the process you’re in? I’d like to be able to inform the user at first, “Loading . . .” but then change it to “Confirming purchase . . ..”Thanks!!!
I’m using react native to fetch the packages and looking at the logs: const offerings = await Purchases.getOfferings(); const packages = offerings.all["default"].availablePackages; console.log("Paywall Currency", packages[0].product.currency_code)Looking at the logs, the products inside the package has the price in USD. But the phone I am running the code on is set to Australia for the region of the account. I went to Settings > Account name > Media & Purchases > Country Region > Set to AustraliaAm I doing something wrong here?
Hi, I have integrated SDK in my android app and its working great.but sometime I am gettingError fetching offerings - PurchasesError(code=NetworkError, underlyingErrorMessage=Unable to resolve host "api.revenuecat.com": No address associated with hostname, message='Error performing request.')this error. any resolution for this? thanks
I have a question about how RevenueCat outputs the price fields (price, price_in_purchased_currency) with actions that have proration. I can think of two scenarios where proration comes into effect:Android upgrades with IMMEDIATE_WITH_TIME_PRORATION iOS upgradesWhen these events occur we receive a webhook with details about the change. Does this webhook contain the full price of the new plan, or the prorated price? I am also wondering about the transactions that get exported into S3, but I’m guessing that answer is the same as the webhooks.As an example, say a users is paying $50 per month for a subscription. Half way through the billing period they upgrade to a subscription that is $100 per month. Is the `price` in the webhook going to be $75 (assuming the renewal date remains the same) or $100 (if it reports the full price of the new plan)? I’ve tried to test this out myself in Sandbox, but with the super quick renewal periods, it’s hard to say for certain what is going on.A similar
Hi,I have integrated revenuecat in my android app, I have the 3 days trial period setup for my app that i want to activate when user starts using the app. And want to show how many days are left for trial expiry time, after trial only i want to ask for the subscription. Is there any options to activate the trial and show the trial expiry status? Thanks in advanced.
Hello guys, I’m trying to update the “Stripe Webhook Secret” field but the dashboard doesn’t seem to be saving it. What am I doing wrong? Thanks in advance!
Hey RevenueCat community,I’d like to ask for some guidance related to app monetization. Is it mandatory for a subscription-based app to provide free functionality? Or an app could be paid-only with a limited free trial after which an app’s functionality is not accessible?
I would like to know how I can set consumable purchase to inactive state after the user has used the product. For example, in my app, I have a consumable purchase that the user can use one time and then after that, I want to set that purchased product's entitlement state to inactive so that the user would have to buy it the next time before they can use the product.Any help with this will be very useful and much appreciated.
Testing in Sandbox we’ve encountered the following issue: Upon making a purchase on Android we see the following behavior:Play Store (on device) - Gets success confirmation PlayStore console order manager shows the order Purchase shows up on PlaySore order manager RevenueCat Dashboard has a record of that exact purchase (matching transaction_id) However there’s no record of webhook that’s being triggered for INITIAL_PURCHASE (see image above)Is this an issue with RevenueCat SDK or the RevenueCat service?Please advise
Would love to see one of the new charts show install trend lines and ability to segment. Frustrates me that installs are shown on dashboard but can’t really do anything with this data.
Our App has quite a lot of inApp purchases for e-book like content.The current system works and it would be easiest to just keep it as it is (for the iOS side). Our server knows about the available items and the item content. Adding all products to revenueCat would not really add value and might introduce errors. Is it possible to use revenueCat just be handing over the product ID? Or is it better to leave the purchase code as is and use the revenue Cat SDK for handling the subscriptions?
Hi, I ma trying to integrate revenuecat to my android app. in play store console i have added all the details of the subscription and connected my revenuecat account with the play store.but in the app, ReceiveOfferingsListenerI am always getting `Offerings(current=null, all={})`Not sure if i am doing something wrong here. thanks in advance
Hello, I am trying to set up a webhook integration with Zapier/Integromat that will send emails to unsubscribed users. These tools work the way you start setting up a webhook and then listen for data from RC. Once it receives call from RC it automaticaly builds a scheme to work with. However, RC test event doesn’t contain email and name attributes. Making it impossible for tools to build a scheme and work with emails and names. Hope this makes sense. Thanks,Jakub
Currently using com.revenuecat.purchases:purchases:4.2.1When a user goes to upgrade a product in the same offering, I’m using UpgradeInfo to do that. new UpgradeInfo(currentProduct,1) //1 = IMMEDIATE_WITH_TIME_PRORATIONBut the user is showing that the upgrade will start at a later date . Am I doing something wrong?
I have added Flutter SDK and its working fine for iOS I made purchases as well but for Android offering are coming as null
How does the SDK work when there is no cell or wifi? Which methods will work on device-only, and which ones need connectivity to complete? Will there be a noticeable delay to the call? (Is there a doc describing this?)The case is where you want to test for a valid iOS subscription/entitlement, but there is no network available. Does it work?
HiWe’re trying to configure a flow where user subscription is strictly bound to their account. In our mobile app we identify users by their personal accouns and provide a way to sign in / sign up and sign out directly in the app. So it’s possible to have a state when there’s no user id.We used Block restores setting (btw, thanks for this update - it’s much simpler now!) and applied the recommended way of identifying users with login/logout mehtods as described here. However with this approach when we register a new user the RevenueCat creates a subscriber with anonymous Original App User ID and then aliases the actual user id and setups App User ID field with it.While this is totally expected according to the documentation, it looks confusing in our flow where user can subscribe only with active account and thus already having actual identifier. What we’re trying to achieve is to always have users with single identifier (i.e. Original App User ID == App User ID) without aliases as we’r
Hi RevCat team and community Would love some guidance around LTV calculations in the experiments feature. We’ve been doing price testing of two price points for 2+ months now, and every day we check the experiments feature it is different, wild swings between variant A and B. I would have thought now we have been through 2 monthly renewal cycles we would start to see a trend or more signal, but it is different recommendation each day. Is there a recommended time period to run an experiment? Or someone on the RevCat team that can help us analysis the results or setup our experiment differently? Thanks - love the idea behind the feature - just looking for best way to utilize it. Cheers
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.