Discussion and help from anything related to RevenueCat.
Recently active
I have integrated latest SDK of flutter in my app. I’m using default Paywall created by Revenuecat. In Android device not able to Skip button which we generally use in Paywall. How to add that.
Hello everyone,How would I set up a discount depending on how many subscriptions my user has at a given time? Or is there some kind of group/package/bundle that they can upgrade to, grouping multiple subscriptions in one?I must say I am very confused with the language used by RevenueCat as far as entitlements, products, offerings, and packages are concerned. But maybe that’s just because English isn’t my first language.At any rate, any help would be very appreciated :)Thank you
My app offers a one year auto-renewing subscription. I also need to offer a one week subscription that does not automatically renew.I am expecting the entitlement associated with the non-renewing subscription to be automatically revoked when the subscription expires, like it does when the user cancels an auto-renewing subscription.I am able to specify the duration for the non-renewing subscription on Google Play, but don’t see how to do it on App Store Connect.In searching the internet, it seems App Store Connect doesn’t support durations for non-renewing subscriptions.Has Revenue Cat come up with a workaround on iOS so that entitlements associated with a non-renewing subscription can be automatically revoked?Are entitlements automatically revoked on Android, at least?
I’ve noticed that in order to see the purchase status reflected correctly under App Store → Sandbox Account → Subscriptions, I will need to set in Xcode Product->Scheme->StoreKit Configuration to none. But in doing so, I’m unable to retrieve the correct Trial offer eligibility information. On the other hand, if I set a value to the StoreKit configuration file, then I’m able to see the up to date trial offer eligibility info on Paywall, but the purchase won’t show up under App Store → Sandbox Account → Subscriptions, in spite of the success purchase confirmation.What is the proper way to test in the sandbox environment in this case? Please advise. Thank you.
I'm encountering an issue with all of my Play Store plans that offer a trial period. None of them are converting after the 7-day free trial period, and I always receive the following error message: The peculiar aspect is that this issue is specific to the Play Store; it works fine on iOS without any exceptions. Can you please assist me with this matter?
Hello!We are integrating subscriptions in FlutterSir we have two subscriptions(PRO and ELITE) in a single group(AppStore). We have user login system. We give app user id. So the issue is that it is working well but we need the following: 1. User want to upgrade from PRO to ELITE within the app. mean changing subscription plans within the app. Please guide me how to do it. Please share any related documentation where i can follow the steps to do upgrade/downgrade subscription from the app, yes not from setting. is there any code to do this?
I am unable to see entitlements/purchases on android when I’m logged in with the same user id that I used for iOS (I purchased through iOS).Here is how I setup the app user id: import React from "react";import { useSelector } from "react-redux";import Purchases from 'react-native-purchases' const SetupRevenuecat = () => {const stateAuthSession = useSelector(state => state.auth.session)React.useEffect(() => {Purchases.setLogLevel(Purchases.LOG_LEVEL.DEBUG)console.log(stateAuthSession?.user.id)if (Platform.OS === 'ios') {console.log('ios user id: ', stateAuthSession?.user.id)Purchases.configure({apiKey: 'appl_xxx', appUserID: stateAuthSession?.user.id })} else if (Platform.OS === 'android') {console.log('android user id: ', stateAuthSession?.user.id)Purchases.configure({apiKey: 'goog_xxx', appUserID: stateAuthSession?.user.id })}Purchases.setAttributes({ "email": stateAuthSession?.user.email })}, [])}export default SetupRevenuecatLoading both android and ios shows: BUNDLE ./in
Hi. I’ve just started using RevenueCat and I really like the ease of integration, however, unless I’m missing something it appears that RevenueCat does not support non-subscription in-app purchases. Is that really correct?For my application, I need monthly and yearly subscriptions, but also a consumable purchase. I really don’t want to have to implement two different solutions.Can anyone tell me if I’m wrong? And if not, has anyone heard that at least basic support for consumables is the RevenueCat roadmap?Btw, I know that RevenueCat will pick up these transactions for reporting, but that’s not helpful to me.Thanks!
I’m trying to better understand how refunds affect revenue, and specifically how they relate to the Apple App Store fee and sales tax / VAT. My current understanding: If I have a renewable subscription for $10/mo, and the user purchases from a location with 10% sales tax/VAT, then my net revenue is $10 * (1 - 0.1) * (1 - 0.15) = $7.65. that accounts for apple’s 15% fee and the 10% tax. Next, when the user requests a refund, that customer gets the full $10 back, and the full $10 comes from my net revenue, is that right? So I end up paying $2.35 to Apple for each refunded customer.Is my understanding correct? I can’t find any documentation about how refunds affect my revenue specifically. In this case, I’m only concerned with Apple’s App Store and auto-renewable subscriptions, if that makes a difference in how it’s handled.
Hi Team, This question regards the pagination of REST API endpoints. It is mentioned in the document in the pagination section that the default value for the limit is 20, but it doesn’t mention the maximum value.I have tested it in the Postman, and it supports unlimited value. Is there any plan to fix the limit value at a certain value? I also noticed an error with the pagination when setting the value to 1. The pagination goes into an infinite loop when we set the pagination limit value to 1. The next_page field returns the same API URL multiple times. Could you please look into that?
I have a one-year, non-renewing subscription (one time purchase) set up in Stripe. How can I set an expiration date for it?
I've updated my schema on Xcode to set my location to a different country. I tried running it on both a physical device and a simulator. In both cases, all the apps on the device respond to the simulated location, but Revenue Cat continues to show the paywall in my actual local (prices and currency). I'm assuming that the RC SDK is not relying on geolocation, so it needs to pick up the change. Do I need to change my IP address? Is there an easy way to test paywalls in simulated locations?
My client wants to integrate revenue cat in her existing App and then want to set up Subscriptions and group promo codes in the dashboard itself is it possible?
Hello,I have noticed that when I access the Customer tab and go in Non-Subscription, it’s showing also some Subscriptions, both Active and Expired, which are not in their actual Filter.Is the Made Non-subscription Purchase Filter not working properly? Because I would like to be able to see only the non-subscription purchases.
Can i use paywall for in app purchase, what should I pay attention to if I can use it? I tried with subscriptions and working well.
Hi all,I’m setting up subscriptions with RevenueCat and I noticed that `[RCPurchases.sharedPurchases customerInfoWithCompletionHandler:^(RCCustomerInfo * _Nullable info, NSError * _Nullable error) {` will have the completion handler called a background thread. Is this intended? Are all RevenueCat callbacks on background threads? Do I need to always run `dispatch_async(dispatch_get_main_queue()` after a RevenueCat API?Thanks!
Hi, the app is using RC to make a purchase, I already update the bundle Id and the keys into the RC dashboard, However when I tried to make a purchase I’m seeing in the logs that is in sandbox env.And when the Apple pay dialog is presented, it is displaying information about sandbox user. My question: Should I modify something in the RC dashboard to user a production environment ?2023-07-26 09:02:41.399867-0500 Sharpen[2703:1095151] [receipt] WARN: 🍎‼️ App running on sandbox without a receipt file. Unable to determine into eligibility unless you've purchased before and there is a receipt available.request for these products because they were already cached: ["2023.07.premium.recurring.offer"]2023-07-26 09:02:41.399717-0500 Sharpen[2703:1095151] [network] DEBUG: ℹ️ GetIntroEligibilityOperation: Started2023-07-26 09:02:41.399867-0500 Sharpen[2703:1095151] [receipt] WARN: 🍎‼️ App running on sandbox without a receipt file. Unable to determine into eligibility unless you've purchased befo
Hi,I am facing an issue getting StoreProduct on Android using Flutter. On iOS, everything is fine, I can add any product on AppStoreConnect, then get it in RevenueCat automatically and then display and purchase products in my app.But on Android, I can’t get any product.The app is in production but also in Closed Testing. My product is “Active” in Google Play Console.The only thing I can think for now is Google Play Console giving me a problem with the payment profil. Do you think it can be from there ? I’m not the owner of Google account so I can’t check.I think I’ve tried every solution on internet..
Hi I am struggling to fix issues with RC regarding revenues from consumable IAPs (iOS).Thus rather than have those products tracked within RC I wish to remove these specific products from my projects whilst leaving other products (my subscriptions etc) intact.However, when I attempt to remove the product from the project I receive the message, “There are transactions in the system using this product.” and the product remains in my project.The products I am trying to delete are not associated with any entitlements or offerings and stand alone as single use consumable products. Can anybody suggest anything here please?Regards,Alex
Hi there,I wanted to check how can revenuecat help my situation. The billing method I am thinking about is getting my user to pay a one time fee to unlock features, and also having consumables that they can purchase quarterly. How can revenuecat sends the revenue amount or knowledge that the user had paid for the feature or consumables to supabase which is my backend, and so that when my user login to the system, they can get full access to all their features they have paid for?
I am trying with UnityPlugin.I checked on my IOS device and the "GetOfferings" callback is not being called.What is the cause? purchases.GetOfferings((offerings, error) => { if (error != null) { LogError(error); } else { Debug.Log("offerings received " + offerings.ToString()); var yOffset = 0; foreach (var package in offerings.Current.AvailablePackages) { Debug.Log("Package " + package); if (package == null) continue; var label = package.PackageType + " " + package.Product.priceString; CreateButton(label, () => ButtonClicked(package), 500 + yOffset); yOffset += 70; } } });
When presenting paywalls using .presentPaywallIfNeeded in Flutter, RevenueCatUI does not include a close button. I've tried it with 5 - Bengal template. Can you please update the Flutter package so that the close button is displayed automatically on the paywall?
I have another example of a customer history where I am not sure if it should currently have or not have entitlements. For reference customer id is zFJvdHtkE2evnc9fnhtGVNLcDt52.The webhook events are in this order: What seems to be missing is another EXPIRATION event. Feb 21 should be when the grace period expires and the subscription should end. But at this time after one renewal and after pausing the subscription, we have yet to receive any information of the latest status. RC console says that Subscription expired on 2024-02-18. Is there any reason no webhook event came in in February?
Hi, We are currently managing app specific entitlements by relying on webhooks.Does the SUBSCRIPTION_PAUSED event require any intervention to add/remove entitlements? Or this event is just informative and is correctly preceded and followed by RENEWAL and EXPIRATION events (which do need actions)?This sections of the documentations seems short and I was not able to get a clear picture.Thank you
I don't understand why I have to regenerate service credentials. I already have a project at console.cloud.google.com with everything defined. Can't I just give permission to the new Google account that will receive the app in this project?The app is transferred to the Google Play console, I don't understand this part about generating new credentials? Would it be a new project on Google cloud?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.