Discussion and help from anything related to RevenueCat.
Recently active
OK, so I am using expo react native and implementing RevenueCat for rendering paywall, now the issue is that I used one of your already-made templates, and then I configured it to suit my taste. in doing that I inserted my own custom image to the paywall it showed perfectly on RevenueCat, but now that I am testing it on my andriod phone, the Image is not appearing at all. In hindsight, it is showing some sort of blur which is really annoying, I checked the file size and it is less than 2 mb see the details of the image (921 x 921, 953 KB). what should I do?The Image above is what is displaying on my phone.The Image below is what I created in revenuecat.
Hey folks, I ran into this scenario:Enabled Server 2 Server notifications for App Store. Received RC Anonymous in INITIAL_PURCHASE (sandbox) webhook event Received my custom ID for RENEWAL events following INITIAL_PURCHASE. Never received a TRANSFER event.I followed this RC Doc and I can confirm the first 2. For 3, I use the firebase user ID as the RC user ID. #4 is not applicable for app store. Doc mentions:“If not, it may happen that we first track a purchase for App User ID A from a server-to-server notification and later we receive the same purchase from the SDK or the REST API under a different App User ID B. In this case, no transfer will occur, and App User ID B will never get access to the entitlement.”Could you please help why a TRANSFER event was not sent even though the conditions were met?Followup -As I need S2S notifications for handling REFUND events only, would it be safe to turn off S2S for new purchases?Thank you!
Hi everyone, After upgrading my project to SDK 53 (React Native 0.79.5, React 19), I’m seeing this error when opening the RevenueCat Paywall or triggering the Google Sign-In flow in iOS:[UIKitCore] View doesn't recognize its superview as a UIView. This can happen through use of CALayer API on the view layers instead of UIView API on the views.view: <UITextField ... >superview: <UIWindow ...>Issue:When I close the RevenueCat Paywall, the app’s screen becomes frozen — the UI is visible but completely unresponsive to taps or gestures. I have to kill and relaunch the app to continue. The same freeze can happen after closing the Google Sign-In sheet.What I’ve tried so far: Set "newArchEnabled": false in app.config.js → issue persists. Clean rebuild (npx expo prebuild --clean, pod install). Updated @react-native-google-signin/google-signin to latest v15. Using react-native-purchases and react-native-purchases-ui v9.2.0. Environment: Expo SDK 53 (expo@~53.0.0) React Native
Hello team, I recently added a localisation to my Paywall (greek) and immediately broke my Paywall, reverting it to the default one. I checked the logs on Android and I can see:Missing string localization for property with id: 'PTDmqcpjN9', for locale: 'en_US'.Displaying default template due to validation errors.I have checked similar issues - I exported the localisations as CSV and checked: PTDmqcpjN9 is not present in the list of strings.How can I locate which string is missing?
While integrating App Store Connect with RevenueCat, I receive the error: “The key is not valid or is not compatible with the bundle ID of your app.” Please advise on what could cause this mismatch.The app-store connect api is connected properly.
I'm using revenuecat's built in paywalls - when testing the payments on my device via a sandbox account, when trying to purchase products with an introductory offer (1st week free), I'm getting an error (sharing screenshots for reference).This is not happening for products without any intro offers or non-renewal subs. Thanks in advance!App error alert after trying to purchase sub product with intro offerXCode console log error
Hi RevenueCat team & community,Our app integrates the RevenueCat SDK, and our normal flow is: User purchases successfully via the app. RevenueCat sends a webhook to our backend. Our backend upgrades the user to Pro access. However, recently this stopped working — even when the purchase is successful, NO webhook is sent to our server. We have verified: No changes to the app’s SDK version. No changes to the webhook URL or backend configuration. Purchases are going through (confirmed in RevenueCat dashboard and App Store/Google Play console). This issue is critical because users are paying but not getting Pro access, which makes our app look like a scam to them.We urgently need help to: Understand why the webhook is no longer firing. Identify if there’s an outage, delay, or known bug affecting webhook delivery. Learn if there are recent changes in RevenueCat SDK or webhook infrastructure that might cause this. Has anyone else experienced the same issue recently? Any immedi
Hello,We are experiencing an issue where Android subscriptions are not showing up in RevenueCat, while iOS works perfectly. On iOS, getOfferings() returns the products correctly. However, on Android, even though the subscription is published in Google Play Console and added to the Offering in RevenueCat, the availablePackages list comes back empty.Current situation:Subscription and base plan are Published in Google Play Console.In RevenueCat, the product android.pro.plan:androidproplan is added to both the Offering and the related Entitlement.Our device is added to the license testing list, and the app is installed via the Play Store.Purchases.configure() is called correctly with the right API keys.The exact same setup works fine on iOS.In this case, what could cause getOfferings() to return empty on Android?Thanks.
I currently have the meta ads integration with revenue cat setup, but from my understanding, it’s only responsible for sending the events through the conversion API and that the events needed to be reported to SKAN need to be done separately on the deviceGiven this, I’ve tried looking around for what is the best practice on how to implement this, but have run into solutions such as disabling the conversions API in favor of using the app events API in the device or creating separate naming conventions when sending events directly to SKANSo just trying to figure out what is the best way forward with this
This is a follow up question or problem to this one: After investigating further, I came to the conclusion that something is not right with the connected Stripe accounts in RevenueCat dashboard (or I am missing something).So I am trying to connect both the Sandbox and the Live Stripe accounts to RC, in order to be able to test subscriptions first. In the RevenueCat “Account Settings” under General there is only the sandbox account being shown. If I then under “Apps & providers” try adding a Stripe web config, I can only choose the live Stripe account (so I have this set up for the live account), but there is no sandbox account so I could make two web configs. In Stripe dashboard, it seems like both are connected.This is probably why there is a “The receipt is not valid” error when trying to send the RC token.Could you point me in the right direction, what am I doing wrong here?Thank you.
Hey! I saw two discussion posts about Web Billing support of upgrades/downgrades from a few months ago (here and here), and I just figured I’d check to see if there’s any update. Thank you so much!
I’m using the RevenueCat KMP SDK and have a weekly subscription that includes an introductory offer.I want to display both the regular price and the introductory offer price in my UI.How can I retrieve both prices using the SDK?
I'm experiencing an issue where some users are able to make repeated purchases without actually being charged. The problem is that multiple purchases are being reported with the same transaction_id as the original purchase. From the user's perspective, it looks like a new purchase was made, but no new transaction or payment actually occurred in the App Store.This leads to users getting access multiple times without paying again.
Hello, [Flutter App - PayWall]I’ve checked different topics related to mine and i can’t fix my issue.I wanted to show the close button on my paywall. But unfortunally even if i’m using :await RevenueCatUI.presentPaywallIfNeeded(paywallKey, displayCloseButton: true); As described in the doc, it’s not working. Some people said the button is only black for them but in my case, i can’t find any it at all, so i need help. Here’s what it looks like and i’m using this recent version :purchases_flutter: 8.10.4purchases_ui_flutter: 8.10.4
Hi, i have been facing `there was a problem with the store` for over 2 weeks and don’t have a clue how to solve this issue. subscriptions have been working on my app in production but suddenly emitting errors when users are trying to subscribe. Weird thing is, it succeeds in sandbox mode with test cards but only fails in production with real payment methods. On official doc revenuecat suggests the following solutions:Google server is down → unlikely. it has been failing for ever 2weeks by 100% chance. Google Play Developer API Quota exceeded → Checked and only has 1 or 2 usages only Invalid Android package name in the RevenueCat dashboard → unlikely because it used to work before and still working in sandbox mode. Google Billing Client SERVICE_TIMEOUT error → Not sure if this is the case but what can i do if this is the issue?I have also went through the integration guide again and checked if my products and paywalls are valid. I have been receiving customer complaints and unable to re
I have two paywalls and two offerings. However my app is only showing my standard paywall when it should be showing the free trial one. On App Connect I only have two subscriptions: monthly and yearly with the free trails included in each. Is this the correct way or should i create 2 new subscriptions for the trials?
I’m using /receipts endpoint from API v1 to migrate my old purchases. The response is successful, but the purchase is not in the dashboard. How long does it take to be visible?
Hi RevenueCat Support TeamWe were unable to find any public REST API endpoint that allows fetching existing Targeting Rules. Our use case involves: Retrieving the applied Targeting Rules via API Verifying their presence and correctness in our automated testing pipeline Ensuring that recent changes to Targeting Rules are reflected in the testing environment Would it be possible to expose a GET endpoint for Targeting Rules, or is there a recommended method to retrieve these configurations via API?
After a user purchases a plan in-app, it shows up as purchased in the Apple Store (on their end), but doesn’t appear on their RevenueCat Customer Profile. UserIDs have been checked so it’s not being sent elsewhere.We recently made an update to our app which broke something and can’t seem to locate the exact cause/fix. It was working normally before, and still works on an older app version.Any guidance would be appreciated.
Hey!Found issue with footer background color on iOS SDK version 5.34.0(latest at the moment). it should be black but now it's grey. Black or white system iOS appearance - the same result. My Main Section setting for paywall at the screenshot (also black). I using .originalTemplatePaywallFooter() modifier for presenting footer in the iOS SwiftUI app.
I’m currently attempting to upload my In App Purchase key for an app that I’ve had on RevenueCat for over a year but every time I try I get an error: “Credentials Validation: There was a problem validating your credentials.”This has been occuring for multple days. It’s the first time i’ve ever seen this error. There is no documentation on this error so i’m currently blocked from releasing this new version of my app. The actual app itself works and purchasing works -- the issue is that the webhook is not trigged post purchase and I assume not having the In App Purchase key is the issue. All my other apps use the same keys without issue. The credential_validations endpoint returns with the response: {code: 7233, message: "The requested resource was not found"} so i have no details to go on
Hi, I’d like to use Paddle and RevenueCat to offer subscriptions for my SaaS startup :)As far as I understand, the essential bit of information that connects Paddle webhooks to the right RevenueCat customer is sending the user_id in the metadata. So the flow is:get user_id from authentication provider user wants to access a paid service? Check if user_id has the right entitlements via the RevenueCat web sdk user wants to make a purchase? Start the Paddle checkout flow, attach user_id in the right field of the metadataHow do I test this? I’m thinking the correct way is probably to connect a Paddle Sandbox account to RevenueCat and then run various simulations against a little sandbox website (which has authentication and a handful of mock routes). But I haven’t found documentation on this scenario.Does RevenueCat realize that products are purchased via a sandbox account? I’d like to test this thoroughly, but not have to pay for sandbox purchases.What’s the correct way to test Paddle+Rev
Hi there, I’m trying to integrate customer center because we’ve been getting a lot of customers on our stripe subscriptions having issues. I built a version with it integrated and I’m getting it to pop up but I only see the follow options. I would expect to see something around helping users cancel subscription. Is that supported? or is it only once the trial has started. Note that this is on testflight so maybe that’s the issue? Best, Jake
See also closed topic I would add my solution to that post but it is now closed for comments.Experience an issue on build where audioservice no longer worked if main activity became a fragmented activity.The solutions in the end was on the audioservice page itself: https://pub.dev/packages/audio_service , see ‘Integration as a FragmentActivity‘In the end this MainActivity.kt worked to resolve the issue for me:package com.something.appimport com.ryanheise.audioservice.AudioServiceFragmentActivityclass MainActivity: AudioServiceFragmentActivity() {}No changes were required in the AndroidManifest, the activity name still is android:name=".MainActivity"Hope this helps, I busted my skull on this one (and Claude’s, and Grok’s, ...)
unable to build android with on a flutter project enabled for paywalls. was working fine with previous purchases package but looking at below error. notes: tried updating java version to 17 and respective changes in gradle files etc..,increased minSdkVersion, separate note was able to build on iOS and paywall works as expected logs hereCaused by: java.lang.RuntimeException: Failed to transform '/Users/CC/.gradle/caches/modules-2/files-2.1/androidx.compose.material3/material3/1.1.0/dfa0976101de9daf0c4676fb7227fd540d4d1a08/material3-1.1.0.aar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 61. (Run with --stacktrace for more details.)
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.