Discussion and help from anything related to RevenueCat.
Recently active
I’m using in-built PaywallView() to present in SwiftUI application, i just want to change the title of this view based on different clicks. Is there any way to directly just update title of the Paywall.I tried to customize same instanse with below line but title is get only property.offering.paywall?.localizedConfiguration?.titleAnd Figure out that, if we needs changes in title will have to create completely new instance, but it’s not that ideal to just change title name.is there any simple ways that i might missed looking into.
Hi, I am in the process of finishing my integration with RevenueCat and having an issue where the subscription events are not updated in the user collection.StackVue.js + CapacitorJS + FirebaseWhat’s happeningSubscriptions are successful User collection is updated with RevenueCat data (I’m using the same collection as my normal user collection) I cancel the subscription in Google Play successfully I receive the event in Firestore User collection is not updatedUser collection’s entitlements and subscriptions sections after cancellation The only steps I’ve not completed is connecting up to Google Analytics but otherwise I think I’m setup correctly.Is this not working or is my expectations of how this integration works incorrect?I was expecting that when a user unsubscribes that the unsubscribe_detected_at would be updated and when the sub expires that the subscriptions and entitlements would update accordingly.Regards,Chris
Hi team. Found one problem. When I’ve tried to relogin to the same account - always receive the problem with `getProducts` method: ```BillingWrapper is not attached to a listener```Precondition:Setup global customerListener ``` Purchases.sharedInstance.updatedCustomerInfoListener = UpdatedCustomerInfoListener { customerInfo → if(customerInfo.originalAppUserId == myCurrentUserId) { fetchProducts(customerInfo) } } ```Found stable steps to reproduce:Login to account A (`Purchases.sharedInstance.awaitLogIn(firebaseUser.uid)`) Logout from account A Login to account B Logout from account B Login to account A, await `customerInfo`, call getProducts Result: ``` PurchasesError(code=UnknownError, underlyingErrorMessage=BillingWrapper is not attached to a listener, message='Unknown error.') ```
Hi! We are setting of our paywall and want to offer 2 options (annual and lifetime). Annual is a subscription and lifetime is a 1-time purchase. We want to offer a 7-day free trial regardless of what the user chooses - we are able to set this up for the annual subscription, but can’t figure out how to offer it for the lifetime (one-time) purchase.Is it even possible to offer a free trial for the lifetime purchase? Thanks in advance!
Hello! So I'm making an alarm app and since the users are anonymous I'm facing an issue with cancelling and refunds. I can't do authentication but I thought that maybe I could write to Firestore through webhooks the anonymous Ids along with the state of the subscription for the user as read only data, then each user can listen to the corresponding document. Is there any security risks from the point of view of Revenuecat to expose these information public ally? I'll add app check of course, but still want to make sure it's safe to do this. Thank you.
Hi all, We offer a monthly and annual plan and our products are divided by those plans. However, I’ve been using the “product duration” filter in some reports and see that a lot of the data is coming in as “weekly” product duration. Is there a way for me to 1) view which products might have a weekly duration and 2) edit that?
I cant seem to draw any conclusions from RC docs for the matter. This is for an android app.A user (John) pays for offering A (110 $ per year) which was the default I change the default offering to offering B (69$ per year) What offering does John (who is already subscribed with the pricier sub) see when he opens up my paywall?In the Customer Profile, I see that John’s “current offering” is set to offering B. Does this mean that he sees the cheaper offering now? And if so, how can I make it so that the users that have already paid for a pricier sub, still see the offering that they paid for?Thanks
Does Purchases.configure() need connection to network? I am configuring offline mode and curious about preferences to initialize the app.
When looking at, for example, the Overview, there is a flag next to the customer. When clicking into that, or searching for the customer, there is a “Country” field. For some countries, these do not match and I am wondering why or what they represent. For example, the flag can show the US but the country of the user in the detail screen will be something other than the US. Thanks.
I am using react native and looking at the customerInfo object, it seems that managementURL is at the top level. I am wondering why it is not inside each entitlement maybe or a better place to account for multiple purchases on different platforms..Example, if I log into the app on Android and make a purchase, then also login on iOS and make another purchase, wouldn’t I need 2 managementURLs (one for each store)?
I am new to RevenueCat and I am looking for advice on how to architect my consumable in-app purchases with ReveneCat. With the current app I am developing for macOS, I use the AWS Polly service and each usage of Polly costs money (pay as you go). I am using consumable in-app purchases to control my cost structures from users so that I will always make a profit no matter the overall customer usage. One requirement is fiscal security where the user can't spoof/hack the consumable resources on device, so I need to store their current resource count in the cloud. I read the following in the ReveneCat help pages.Non-Subscription Purchases:It's important to note that at the moment, logic for keeping track of consumable redemptions must be handled outside of RevenueCat. We recommend your server is set up to receive Webhook events for NON_RENEWING_PURCHASE to appropriately provide consumable content for your users.For example: RevenueCat can track a consumable coin purchase and include it in t
According to the docs, fetching a list of customers should include an active_entitlements hash. However, when I paginate and pull our list of customers, none of them have this object. Is this a bug with the API, or an issue with the docs?We’re calling https://api.revenuecat.com/v2/projects/<PROJ_ID>/customers, so if there’s an ?expand= I’m missing I’d appreciate some clarification! 😄 Our use-case requires us to fetch the entitlements of our customers and filter the list based on their status, so if active_entitlements isn’t meant to be returned, this means we’ll be round-tripping thousands of customers to the respective expansion route (projects/{project_id}/customers/{customer_id}/active_entitlements).
We are looking to phase out our app (sad days). The idea is to keep it running for another year so the annual subscriptions can run their course We currently have monthly and annual subscriptions, with annual having some additional perks in-appWe removed it from sales from the App store (and equivalent for Play store) to prevent new purchases and auto-renewing, however it seems the subscriptions are still auto-renewing Are there any other steps we need to do?
Normally we have single android and ios app in the store with unique bundle Id or google package id. But we can create multiple flavors by suffixing desired name to the main package id. However creating apps in project in RevenueCat requires App Bundle Id or Google Play package depending upon the platform. So is there any way one can use same subscriptions defined in the store for multiple flavors ?
Hello everyone,It’s a bit unclear if it’s possible to have a single Android app with 2 package ids (development and production), with 2 configured apps in the RevenueCat backoffice, and a single app in Google Play Console.We are getting an error every time we try to get the products with our .dev suffixed app"There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from the Play Store."Is the only way around this to create a new app in Google Play Console with this .dev bundle?It baffles us, because this works perfectly well with Google Billing Client, without the need of any additional app on the Google Play Console.Thank you for your help!
I am trying to read my logs on development, in iOS, using the Console (not console log), to find messages as per docs. However, I can’t find any messages within the Console filter. On Android `abd logcat` I see them fine. What’s the trick for iOS log viewing?
Hi!We currently have three different subscriptions active in production each with single base plan. Now creating new single subscription with three base plans seems best fit for our usecase. How do I make sure that the users with current active auto-renewable subscription doesn’t get affected if I have to create new one subscription with three base plans?
Hello, I have a project using React Native. In my project, I have subscription products that allow users to access in-app features. If I purchase a subscription on iOS or Android, will I be able to use the subscription on the other platform? Does RevenueCat have a feature for this? My product IDs for iOS and Android are different. How can I use a subscription purchased on iOS on Android as well? Do I need to update something in the backend? Could you please help me with this?
I’m able to build and run the app following the steps in https://github.com/RevenueCat/purchases-ios/blob/main/Examples/MagicWeatherSwiftUI/README.md.Sorry, a very basic question—my RC configurations (entitlements, products, offerings) are defined for my own app XYZ, with corresponding subscription product IDs for XYZ. What does the MagicWeather app expect to be done on the App Store Connect side? Should I add a “MagicWeather” app in my App Store Connect and define subscriptions specific to that app? Or do the subscriptions I’ve defined for my XYZ app in App Store Connect work with this MagicWeather app? Confused—sorry for the basic question. I hope a revision to the project README file can clarify this.
I’m currently launching Paywall from inside a Fragment like this: class PaywallFragment: Fragment(), PaywallResultHandler, SlidePolicy { private lateinit var paywallActivityLauncher: PaywallActivityLauncher override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) paywallActivityLauncher = PaywallActivityLauncher(this, this) } override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { launchPaywall() return super.onCreateView(inflater, container, savedInstanceState) } override fun onResume() { super.onResume() } private fun launchPaywall() { Purchases.sharedInstance.getOfferings(object : ReceiveOfferingsCallback { override fun onError(error: PurchasesError) { Timber.e(error.message) } override fun onReceived(offerings: Offerings) { val currentOffering = offerings.current currentOffering?.let { offering -> paywallActivi
I am only using RevenueCat Paywall (Android) to allow a user to subscribe. Let’s say a user subscribes to ‘Monthly’ and then two months down the line wants to shift to ‘Annual’. There’s no way the current Paywall or a version of it allows this shift. Personally, I feel it should be pretty easy for the RevenueCat team to use the current setup as you simply have to show the ‘Current’ subscription at the top, and allow to shift to Annual or whatever. No need to build a completely different paywall. The issue is, in Android there is absolutely no way to make this shift as the subscriptions management link which takes to Google Play Subscriptions also doesn’t show any option to shift the period / tenure. Please correct me if i am wrong anywhere.
When I get a test customer’s CustomerInfo while offline it looks exactly the same as if the user simply had no entitlements. How can we tell the difference - how can we know if a user has NOT made a purchase or if they are simply offline? If there anything in the CustomerInfo that can tell us? I feel like we can’t know for sure if a purchase has NOT been made.
What are the best practices to implement offline use-case?One of the main features of our subscription is to use our outdoor app with poor internet reception or no reception with maps and other information downloaded before. can we check the subscription status while the device is offline? what happens when the reception is very bad but not offline, is it still good to call “Purchases.shared.purchaserInfo” or will it make the UI feel non-responsive?
Hi. I granted a sandbox user access to an entitlement, but I see this action only on on the “Overview” (“Sandbox data” disabled) tab.Going to tab “Customers” > “Sandbox”, I see an older grant in the “Last Purchase”, but not the last one.Analyzing the “Customer Profile”, I also don’t see my last grant.What do I miss?
Hi, We have an internal statistics tools which collects various statistics each day, which are then used in various internal reports.I would like to add some data available in RC dashboard to those reports, for example the number of active subscription (ideally per app), and the MRR (ideally per app as well).Is it a way to easily get those informations from RevenueCat? I would probably use the API to get all subscriptions and compute those myself, but it would be much more efficient to use the data calculated by RC. Thanks,
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.