Discussion and help from anything related to RevenueCat.
Recently active
Is there any specific configuration needed for the Flutter V2 Paywall to be displayed on Android?Our Paywall displays correctly on IOS: But it is blank on Android: We hava a very simple flutter code to show the Paywall: Widget getRcPaywall(BuildContext context) { return SafeArea( child: Center( child: Container( color: context.colorsTheme.backgroundColor, // RevenueCat Paywall, this will use the default paywall configured on RevenueCat and render it here child: PaywallView( onPurchaseCompleted: onPurchaseCompleted, onPurchaseError: (PurchasesError error) { scaffoldKey.currentState?.showSnackBar(SnackBar( backgroundColor: MFColor.destructiveRed, content: Text('Unable to make Purchase. Error code: ${error.toString()}'), )); }, onRestoreCompleted: (CustomerInfo info) async {
Hey how do I display an icon on the app project? Do I need the app to be published? or how does that work?
Hi everyone! 👋First of all, I really appreciate the work the RevenueCat team has put into the Paywall Editor—it’s a great tool with a lot of potential! However, after using it extensively, I’ve noticed a few areas where the UX/UI could be improved to make the experience even smoother. I wanted to share some thoughts and open the discussion for others who might have additional suggestions.1. Editing & Usability EnhancementsThere’s no way to undo an action (neither Ctrl + Z nor a dedicated button). You can’t double-click a component to rename it. The Delete or Backspace keys don’t work to remove a component. There’s no option to hide/show components while editing.2. UI Layout ImprovementsThe language selection, dark/light mode toggle, and preview settings currently overlap the phone preview window, making it harder to work on designs. The same happens with the orientation and phone size options—they appear on top of the editing area. A possible fix: Placing these options above the P
SDK: RevenueCat 4.0.0-beta.xOperating System: iOS 15.1.1After successfully activating a subscription in the sandbox, calling `getCustomerInfo` and querying the relevant entitlement in `purchaseInfo.entitlements` on the returned `PurchaserInfo` object yields an entitlement with `isActive` set to false.Is this the expected behavior for entitlements when working in the sandbox, or should the relevant entitlement’s `isActive` property be set to `true` after successfully completing a sandbox purchase?
The offerings were working perfectly in sandbox testing in both testflight and regular Xcode signing however it was brought to my attention a week after release that my subscriptions aren't visible in app.I get this error when requesting the offerings:PlatformException (23, 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). More information: https://rev.cat/why-are-offerings- empty, {code: 23, message: 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). More information: https://rev.cat/why-are-offerings-empty, readab
Is this possible thru the paywall builder? Or is this something that needs to be custom created?Thanks!
The response from the "Get Purchases" endpoint (https://api.revenuecat.com/v2/projects/{project_id}/customers/{customer_id}/purchases) isn’t ordered by the customer's purchase time. Is this expected? It’s weird that the Customer History is ordered by time in the dashboard, but it’s not in the REST API.
Hey folks! I've just tried using Paywalls v2 instead of my own custom paywall and I find a few things confusing that I couldn't clarify in the documentation or repo. I would love to know how things are supposed to work:If I press "Restore" when there is nothing to restore, I don't get either onRestoreError or onRestoreCompleted callbacks triggered. Nothing happens on the UI - the button changes to a loader for a few seconds and then just goes back to normal. I find it confusing and would expect something to happen to at least notify the user about what's happening. Does the paywall close by itself after a successful purchase? I see navigation happening twice after migration from custom code, where I had a manual navigation call. But when I removed it, my testers said that in TestFlight the paywall didn't close, and moreover they couldn't close it themselves via the close button; only reloading the app helped. I also noticed a new crash that appeared only on the commit adding custom pay
I switched to V2 Paywall, I want to print “Try 7 Days Free & Subscribe” on the purchase button and I tried it like this: Try {{ product.offer_period_with_unit }} Free & Subscribe. This is not working, I want this variable to say 7 Days when monthly package is selected and 14 Days when annual package is selected.
public void InitializeRevenueCat(){ _purchases = GetComponentInChildren<Purchases>(); _userService = ServiceLocator.Instance.GetService<UserService>(); _analyticService = ServiceLocator.Instance.GetService<AnalyticService>(); var builder = Purchases.PurchasesConfiguration.Builder.Init("goog_YguHktEysEcVmKHkVbWMeVQyhjB"); var purchasesConfiguration = builder .SetUserDefaultsSuiteName(_userService.CurrentUser.Username) .SetAppUserId(_userService.CurrentUser.Id) .SetPurchasesAreCompletedBy(Purchases.PurchasesAreCompletedBy.MyApp, Purchases.StoreKitVersion.Default) .Build(); _purchases.SetLogLevel(Purchases.LogLevel.Verbose); _purchases.Configure(purchasesConfiguration); Debug.LogWarning("Initialized Revenue Cat Purchases");} public void BuyProductWithId(string productId, Action<bool> onComplete = null){ _purchases.PurchaseProduct(productId, (_, info, cancelled, er
Hi,My app is showing basic paywall on playstore but in debug which i tested its showing me designed paywall. why its showing basic paywall once it uploaded. In basic paywall my offering are good and working just not showing design which i created.
I am trying to set the ‘Fit mode’ for paywall background image to fit but when the paywall is displayed it shown in fill mode. I am trying to check this on simulator and even after restarting the simulator the image is not displayed as expected. Can you please advise on this issue?
Hi there, We have been having a terrible time getting our app approved recently. At some point someone on my team created an in-app purchase option in app store connect that we never intended on using in the app. I marked the item as “remove from sale”, but I don’t see any way to delete it from the app in app store connect. I know this is not really revenuecat related, but apples developer community is slow to respond (posted a question here https://developer.apple.com/forums/thread/776070). The app review keeps rejecting us because of:2.1.0 Performance: App CompletenessWe follow up with notes that we do not want the in-app purchase in the app and have marked it as remove from sale, but they keep rejecting us for the same reason. I have considered scheduling some time with the app review appointment with apple or submitting an appeal, but I’m worried those will stop app reviewers from responding to us. Any advice? (Please feel free to let me know if this too off topic for this forum)
Hello!I'm using iOS SDK and I need to send my event reporting metric depending on the purchase or start of a trial period. Can you please tell me if there is a property based on which I can implement the functionality I need? If someone has some developments in the form of Swift code I will be very happy to help.
I’m building a Paywall using the v2 builder and don’t understand how to make the “Restore Purchases” link functional. I was expecting a variable for this that I could drop into into the URL field.I checked the templates that contain “Restore Purchases” and all of them were just a text element with no functionality. Please explain. Thanks
Hi everyone, I’m integrating RevenueCat into my Flutter iOS app, but I’m encountering an issue when trying to fetch products from the App Store. Here’s the error message I’m getting: code: 23, message: There is an issue with your configuration. Check the underlying error for more details. 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). await Purchases.setLogLevel(LogLevel.debug);await Purchases.configure(PurchasesConfiguration("correct key"));try { final offerings = await Purchases.getOfferings(); print('Offerings: $offerings'); if (offerings.current != null) { await RevenueCatUI.presentPaywall(); } else { print('No available offerings.'); }} catch (e) { print('RevenueCat Error: $e');}purchases_flutter: ^8.6.1purchases_ui_flutter: ^8.6.1Setup Details:• SDK: RevenueCat (latest version)• App Store Connect: Subscriptions are set up • Product IDs: They match exactly be
Hello RevenueCat staff!I’ve gone quickly over the 2025 SOSA report and it looks very good. But I was wondering if you could provide a simple “dollar retention after 1 month for monthly subscriptions” figure by Category.I see page 69 has one 6 months in, but I was wonderng the % of a second monthly payment after a first one.Thanks!
This happens in the sandbox (I haven’t tested it in a production environment yet).Since I’m also using Superwall, I identified the user in the purchase controller on initialization (client) like this: Purchases.configure({ apiKey: REVENUECAT_API_KEY, appUserID }); I’m doing some tests, so I subscribed and I wait for the renewal events to arrive: Why does the first renewal arrive with an anonymous ID, and then it gets fixed in the subsequent event? Is this a sandbox issue?What other info can I provide to help debug this?
I want to do A/B testing for subscription prices on iOS. The revenuecat docs recommends to “Use distinct Subscription Groups on the App Store for each RevenueCat Offering when testing new prices”. Here’s what I would then setup:Price 1 subscription group:Annual - $39.99 Monthly - $7.99Price 2 subscription group:Annual - $19.99 Monthly - $3.99 I start the experiment, some users are being shown the first subscription group, some others the second. A week lapsed, price 1 group is the clear winner, yay! I stop the experiment. The faq says the following: When I end an Experiment, what Offering will be served to the customers who were enrolled in that Experiment? When an Experiment is ended, all customers previously enrolled in it will be served the Default Offering the next time they reach a paywall in your app. Therefore everyone is now presented with the same offering that corresponds to the price 1 subscription group on my paywall. Let’s suppose someone from the retired price
I’m testing my app for which I’ve configured a v1 paywall offering choice of subscriptions and a single lifetime price.The paywall sheet is displaying fine but the offering variable is not translated.I’m seeing offering panels like:First {{ sub_offer_duration }} free, then $7.99/yr ($0.67/mo). I will get around it for now just hard-coding in the values but it looks like a bug.Using SDK via SPM ver 5.19.0cheersAndy
Hey,is there any update for changing the language programmatically especially on Android?Currently everything is only in english using paywalls even when there is different device language.
Hi!I’m experiencing an issue (or possibly a missing feature) in Paywall 2.0. In Paywalls templated (v1), everything works as expected.When I tap anything in the paywall that requires a progress view (e.g., purchase or restore), nothing appears. It just leaves me waiting until the pay sheet pops up (for purchases). For restores, nothing appears and then the paywall dismisses. This could make users think their tap didn’t register, they need a loading indicator to know some stuff is happening. Do I need to adjust how I’m initializing the paywall, or is this a bug/missing feature? iOS version: 18.2.1Purchases SDK version: 5.17.0 Here’s how I’m presenting the paywall:PaywallView(displayCloseButton: true) .onRequestedDismissal { self.showPaywallView.toggle() Task { await self.purchasesManager.processInfo() } }BTW, I tested presenting the paywall in different ways (e.g., using `.presentPaywallIfNeeded`), but I got the same behavior.Would appreciate any guidance on this. Th
I am developing a Flutter app using Revenuecat Paywalls V2, my understanding is that Paywall V2 are only available on iOS for flutter, however I found this comment on a post last month saying it will be available at the end of last month, is there any update on this?
On iPads, the RevenueCat paywall does not always appear correctly when presented but only displayed correctly after the device is rotatedVideo link - https://drive.google.com/file/d/1shYacXNDFWckFQVSv3fDHkMT7buKt4aX/view?usp=sharing And in the paywall v2 editor it looks correctly, but not on iPad
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.