Discussion and help from anything related to RevenueCat.
Recently active
Hey! Is there any way to have discord webhook compatible with Revenuecat? There is an integration with Slack, but regular Webhook in rc and discord does not work together. Any ideas what to do to connect discord?
Hello. We have an emergency production issue that we need to clarify RevenueCat Old Project Name on RevenueCat: STRONG&SXYOld Project ID Code: 532a68e1New Project Name on RevenueCat: STRNGOld Project ID Code: 3f1c3178we need emergency help please that issue effect millions of users
I’ve been looking all over the internet and reading through RevenueCat documentation and have continued to come up short with this. I would appreciate guidance from anyone who has done this before, as it’s driving me crazy.I’m building an iOS app using Ionic/Capacitor and leveraging the brand new @revenuecat/purchases-capacitor SDK to manage receipt validation and the entire in-app-purchase life-cycle for Auto-Renewable subscriptions. I’ve got everything working except for a way for the user to be taken to their App Subscriptions page (should they decide to cancel the subscription).When retrieving customer info (which I do, right after configuration ‘Purchases.configure’) I store the returned managementUrl (which ends up being “https://apps.apple.com/account/subscriptions” for me).My issue is:I know this link is correct; If I enter it into Safari on my phone, it guides me straight to the phone’s App Subscription management page When I navigate to this Url in my app using this.router.
I am trying RevenueCat for the first time. When I compile my project in VS Code since including the purchases_flutter package (latest version: purchases_flutter: ^6.0.0), I receive this warning:Note: C:\Users\User\AppData\Local\Pub\Cache\hosted\pub.dev\purchases_flutter-6.0.0\android\src\main\java\com\revenuecat\purchases_flutter\PurchasesFlutterPlugin.java uses or overrides a deprecated API.minSdkVersion is set to 30 (flutter.minSdkVersion=30)Flutter Doctor info:[√] Flutter (Channel stable, 3.13.7, on Microsoft Windows [Version 10.0.19045.3570], locale en-US)[√] Windows Version (Installed version of Windows is version 10 or higher)[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)[√] Chrome - develop for the web[!] Visual Studio - develop Windows apps (Visual Studio Community 2017 15.8.1) X Visual Studio 2019 or later is required.[√] Android Studio (version 2022.3)[√] VS Code (version 1.83.1) How do I fix this problem?Thank you.
I am using react native library/sdk on Android to complete a purchase and want to get clarification on how to know the purchase completed successfully. Using this example, i call await Purchases.purchasePackage(package)but this evaluates to false:typeof customerInfo.entitlements.active.my_entitlement_identifier !== "undefined"and it is considered not a successful purchase even though in the OS it said purchase was done ok.seems like my_entitlement_identifier is undefined.Any idea why this would happen?The resulting customerInfo has activeSubscriptions populated to it is telling me it was a success. What is the best way to know it was done successfully? Just compare the product id of the purchase with the one inside activeSubscriptions?productIdentifier coming from the promise is just the name of the subscription and does not include the base so that was not enough to tell..
I have implemented RevenueCat in my app and am testing the restore functionality across multiple devices. I use a device identifier as the RevenueCat user ID. This is a UUID generated when I first authenticate the app on first run.When I restore the subscription on another device, the subscription is transferred to the new app user id, and the old device no longer has a subscription to the content. I can get it back by hitting restore in the old device, but then the new device does not get the content too The Apple guidelines state:“Subscriptions must work on all of the user’s devices where the app is available.”How do I ensure that the subscription is available on all devices which the user owns, and has the app installed on? I don’t want to have the person perform a login step.
After following the suggested answer I am still facing the error of“ There is an issue with your configuration. Check the underlying error for more details. There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is being used).”
Purchases.shared.presentCodeRedemptionSheet()We encountered an issue when trying to use this code for the promotion redemption.On the iPad, the screen appears normally and I can enter the redemption code. However, after I input the password and receive a transaction completion notification, my app doesn't actually subscribe successfully. Attempting to restore the subscription also doesn't retrieve any successful transactions. This issue persists across all versions we've tried.
I’m using paywall with Android 7.1.0-beta.2The template I create didn’t show, it uses the defatult view.The log error is:Template name is not recognized: 4Displaying default template due to validation errors.I use the template of “Template 4 - Persian Content”
Hello Everyone,I am currently utilizing the RevenueCat SDK in my Flutter project to manage in-app purchases, specifically, monitoring real-time changes in users' subscription statuses. The SDK has been instrumental in achieving this on the client-side, and now, I am looking to sync this data with my backend.In my backend (which is developed using the Elixir/Phoenix framework), I have a database table where I would like to maintain a record of whether a user is subscribed or not. The main goal is to ensure that the subscription status in my backend is always in sync with the real-time status on the client-side.Here are my thoughts so far:One way could be to send the subscription status from the client to the backend every time there is a change. However, I am concerned about the reliability and timeliness of this approach. Another approach could be to use webhooks, but I am not entirely sure how to set this up with RevenueCat and Flutter.I am very interested to hear if anyone has encoun
I’m tired of my charts looking like a line going straight across the top of the screen. It’s impossible to see days when there were lifts or drops in anything. The charts are useless…Here is your chart: Just make your charts like stock charts, or any other useful chart for that matter and don’t start the y axis at 0… Here is the same exact data put into a useful chart in excel. I’ve been asking for this update for over a year, and it’s so simple and will make such a huge difference. I’ve tweeted it, I’ve submitted tickets, it’s like 3 lines of code guys… PLEASE update this.
Hello, Let’s say I have a project called Flexifit that is both on the mobile and the web.I am using revenuecat to handle subscriptions on the iOs app, users are presented with a paywall before signin in, meaning that they could be a “pro” member without user account.After they create account, how do I reliably “attach” the revenue cat user to my database user? Also on top of that what uniquely identifies the revenue cat user? is it the original_app_user_id or is the email address that is used to login to the app store? I want a single source of truth so that I could verify their subscription status no matter what device they are using.The reason for this is that if user decides to go use the web version, I could check their pro status by calling my database and then checking what revenue cat user id belongs to the current user.
I don’t always want to have to develop features on my physical device and obviously we can’t interact with the Simulator on iOS, related to getting offerings for paywalls…what’s the suggested workaround to avoid having to set a subscription in development on simulator?
I want to validate the data sent from RevenueCat to my server via webhooks. The data is JSON, so are there JSON schemas available to do that?
I am trying to integrate RevenueCat into my Flutter app. Regarding Authentication I have the following setup:I have a LocalAuthId, which is created when the app is installed. I think this is comparable to the AnonymousId from RevenueCat, but I’d rather be in full control and also I’m using this ID in other parts of the app. I also have the option for users to either log in to an existing account, or create a new account. In both cases the user would then also have a ServerAuthId, which is connected with their database account in supabase.The expected behavior is the following:Upon installing the app, the user is not signed in to the supabase server, and therefor only has a LocalAuthId for now. I call PurchasesConfiguration(<key>)..appUserID = myLocalAuthId; to configure RevenueCat on the device. The user should be able to purchase a subscription, which would then be linked to this device.Then, if the user decides to create an account, I believe that the purchase should be transfe
Hi there, I currently have some products that are available at certain price points (i.e. $1.00, $2.00, $3.00, etc.) However, when presented to users of other countries, the IAP prices that show up in `offerings.current.availablePackages.map((p) => p.product.price)` show up as the local currency values. One workaround that I can think of is to use the `title` of the product (which I included the USD price on) to parse out the USD price that corresponds with the product, but was wondering if there was any other way? Also on the webhook side, if they purchased a package in their local currency for 4.99 CAD (which corresponds to my $3.49USD IAP), what would I get on the event side? I know there is a `price` field that is supposed to be the price in USD. Will that give me $3.49 or will it just do a direct currency conversion and end up with some approximate amount like $3.60 or something?In the end, I want all the tracking to be done in USD
app store normal subscription works. But I want to set discount offer codes and as stated in the docs I redirect the user with a URL to the app store to redeem the code for the subscription. I see the subscription in the user’s app store but there is nothing on revenue cat and when I try to “restore purchases” there is nothing. Also this offer code is for a subsctiption. The offer is discount for 12 months of subscription. everything looks good on apple side, will revenuecat understand when subscription renews or when subscription is cancelled?
We are integrating revenuecat inside our project as "observer", we have followed the documentation step by step.Our part related to configure our project into revenuecat console is done for both android and ios.but in order to test that out, we got a build for both android and ios, for android it is crashing when making a purchase. but for ios it is crashing without launching the app.for androin we got "no class found exception" but also we add a proguard text file as you mentioned in the documentation
Hi, I have an app that users can log into using either their gmail or their apple id. I want to implement the RevenueCat SDK, but in the docs, it says to configure the SDK as early as possible, usually when the app starts. My challenge if I do that is that, when the app starts, I don’t know which login method the user is going to use and obviously, if they are using gmail, I want to the Google API key and if they are using their Apple Id, I need to use the Apple API Key. Based on the documentation, it is my understanding that the API key is configured in the SDK at the time of the initial configuration.My question is: if my understanding is correct, can I update the PurchasesConfiguration once the user logs in with the right API key? If that is not possible, can i configure the PurchasesConfiguration when the user logs in and “unconfigure" it when the user logs out? If none of these are possible, then how do I do this?Thanks a lot in advance,Bertrand.
Hi Everyone,For some reason in my app, during the registration process, and while updating user details, the paywall pops up, which prompts the user to buy before their setup is complete.That of course generates an RCAnonymous userId in RevenueCat and my firestore database. Prompting the users to navigate to the subscription page would work but relys on them remembering to do it, even after sending reminder emails.Is it possible to call Purchases.restorePurchase() during the FirebaseAuth login flow, after the user has successfully logged in and the user details have been retrieved?Can I call this... _restore() async { setState(() { isLoading = true; }); try { await Purchases.restorePurchases(); appData.appUserID = await Purchases.appUserID; } on PlatformException catch (e) { await showDialog( context: context, builder: (BuildContext context) => ShowDialogToDismiss( title: "Error", content: e.message ?? "Unk
when the user downloads the app, I want the App Store to display the subscription options there, which have to be selected to download. I don’t have any “freemium” options, either you’re subscribed and access or not. Ideally there is no paywall. can this be achieved?
Hi RevenueCat community,We are going to open part of our application to unauthorised users.And we want our users to be able to purchase a Pro subscription before they even sign up.Customuse backend handles RevenueCat webhook events and tracks user subscriptions to control access to features. But it works with real user id’s only.Our thought was that after signing up, we could restore/transfer purchases made by anonymous user to the registered user (with a custom user ID) so that webhook event would be sent to our backend and we could assign the subscription. But it seems that instead of transferring, a simple aliasing takes place, and no webhook events are being sent.We're sure this is a typical scenario, and would appreciate it if you could advise how to approach this?How can we check on the backend side whether the user has active subscriptions in RevenueCat at the time of registration?Sincerely,Dmitry, Customuse
Hi,I’ve researched the subject for some time but I can’t quite figure out how is RevenueCat able to compute the takehome_percentage value for a certain transaction. I do understand that when somebody pays for a subscription the sdk knows the value + currency and it can extract the receipt then pass the actual transaction information to the api. What makes me wonder is how accurate is the takehome_percentage that RevenueCat’s webhook passes forward. In my mind the only way this would be possible is by looking inside the unified receipt and determine if that user was subscribed for more than a year, then apply the reduced percentage to the next transaction.Thank you
Hi everyone, We have a flutter app that requires user to make a purchase first and then create an account. Users can’t access the app unless they signup and create an account. First time a purchase is made with Rc anonymous id and after signup we call logIn() method with user id. We are trying to implement restore purchases as apple doesn’t approve apps without having any restore method. When user clicks on restore purchase revenue cat restores the purchases but transfers the purchase to an anonymous id. We are using the webhooks to save user subscription status on basis of webhooks. But after restoring purchases revenue cat send the webhooks with anonymous id and our backend is unable to connect it with user. After clicking on restore purchases logIn() method doesn’t work. In debug mode it says that user has been logged in but on revenue cat it doesn’t change the app user id and webhooks are being sent from anonymous id. How to implement the restore purchases in flutter when we have a
Inb4 great platform and docs ✋Hi, I’m almost finished with my iOS app and i’m at the point where i want to integrate in-app purchases. So far so good with settings up my project in revenuecat. My in app purchases is a common case of consumables - coin packages non-consumable - lifetime access auto-renewal subscriptions - silver / gold - monthly / yearlyI’m using firestore and cloud functions as db and backend, and i’ve also set up the revenuecat extension for firebase. And let’s say on the user profile in firebase I have a field calledactive_subscription = silver / gold / free / lifetime Even though i’ve read lots of article about this, official documentation, examples etc, I still have some questions about certain flows especially Refunds I’m not sure how to handle them. If a refund is accepted by apple for a transaction, the cancellable event is triggered for the web hooks? if that is true, then in my backend hook i’ll update the profile active_subscription? then what’s the poi
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.