Get help with anything related to RevenueCat.
Recently active
Hello RevenueCat Team,What is the minimum required version of the RevenueCat SDK that supports SHA-256 for receipt validation? Specifically, is version 4.40.1 compatible? Thank you!
Hi everyone!I’ve got a question about server notifications and user IDs. On the iOS client, the user is logged in, and I can see the userId in the RevenueCat dashboard. But when my server receives a server notification (forwarded from revenuecat), the userId isn’t included.From the docs, it seems like this should show up in the appAccountToken field, but that field is missing in the payload. My userIds are Firebase user IDs (not UUIDs), so I’m wondering if that could be the issue?If that’s the case, is there a way to handle this through the Purchases client? I imagine using Firebase user IDs is pretty common, so it’d be awesome if there’s a solution for this!Thanks in advance for any help or advice!
Hi everyone, I’m trying to set up my app in RevenueCat and encountering an issue when adding the App Store Connect API Key. Whenever I enter the required details (Key ID, Issuer ID, and upload the p8 file), I click “Set,” but nothing happens—the fields just reset without any error message or confirmation. Similarly, when I try to upload the p8 file, it doesn’t populate or seem to register. I’ve double-checked that I’m using the correct key from App Store Connect and ensuring all fields are entered accurately. However, it seems like the data isn’t saving or uploading. Is this a known bug, or could I be missing something in the setup process? Thanks in advance for any help!
Hi everyone!I’m planning to change my Google Play developer account from an individual to an organization account, which will require transferring my apps to the new account. I currently use RevenueCat to manage the subscriptions for my apps.My question is: what precautions should I take during this process to ensure RevenueCat continues to function correctly after the transfer?Here are some specific concerns:Do I need to reconfigure anything in the RevenueCat dashboard after the transfer? Will the product IDs (SKU) in RevenueCat continue to work as expected, or is there something I need to adjust? Are there any impacts on Webhooks or the API integration? Are there any best practices to follow to avoid interruptions in subscriptions or billing data?Thanks in advance for your help!
Even though I configure everything correctly, everything as it should, the save changes button is not enabled. This only happens when I try to add an app to the app store, because it works normally in the play store. What happened? How to solve it?
I’m new to RevenueCat and am looking into how I can migrate my existing app’s non-consumable in-app purchases to RevenueCat.I know this type of question has been asked several times, but none of the answers really answered my questionSo far, I’ve looked at using syncPurchases() but as stated in the documentation:Google Play Store does not provide an option to mark IAPs as consumable or non-consumable. RevenueCat's SDK will consume all Android IAPs upon purchase.To replicate the behavior of a non-consumable IAP for Android users, you must ensure your user will not offered the IAP after the initial purchase. Failure to do so will enable the user to re-purchase the IAP. ...and sure enough, in initial testing, as soon as I call syncPurchases() all of the user’s in-app products are consumed and the Google Play Billing client no longer sees the purchases.Regarding the first paragraph, when using the Google Play Billing API, we have the option to consume, or not consume the in-app purchase. A
Hi,as I need the package name / state in my own backend for some calculations I’m using webhooks.For now I’ve just used the entitlement ids property, and the first value of that array. While doing some testing I granted a new entitlement to the user and now he has two. Which does not work with my solution. I wanted to change his entitlement not add another one.And now I’m concerned that this might not be the best way to solve this. What if (for some reason) there are two entitlement ids? So there are two questions:How do I change/overwrite the entitlement of a customer? What is the best practice to reliably check the users entitlement in the own database?Thanks in advance!
Hi I am seeing this message in my App Store Connect, The SHA-1 intermediate certificate used for signing App Store receipts expires on January 24, 2025. If your app performs on-device receipt validation, make sure it supports the SHA-256 algorithm; alternatively, use the AppTransaction and Transaction APIs to verify App Store transactions. Learn More I checked the docs but couldn't find anything regarding that.Is there something we should do?I am using Flutter in my client with version: 8.2.2.
We are currently utilizing the iOS subscription payment system, and we plan to attract new users by offering an initial free week followed by a three-month discounted rate. We would like to know if this promotional combination is supported?
Hi! Is it a error? i have put the app nam, but it appears that.
Hi everyone,I’m facing an issue with my Flutter app using RevenueCat for in-app subscriptions. The paywall works perfectly in previous versions and even in the current TestFlight build (I’ve recorded proof for the App Store review). However, during their review process, the App Store review team reported that the paywall doesn’t load—it just shows a continuous loading screen.I’m wondering:Could this be due to regional access restrictions in RevenueCat? Has anyone else experienced a similar issue? Any tips on how to debug and fix this?Any advice or shared experiences would be greatly appreciated!Thanks in advance,
I added the custom paywall, but when it appears in the application, i can see the native revenue cat paywall underneath in the entrance animation. So, it's as if two paywalls appeared at the same time. How can I disable the native paywall?
I am using React Native CLI to develop my app for the Android Play Store, and everything is working fine. I am making the connection to the public API, but when I try to display the paywall screen, I get the error shown in the image. The error code is 23. There is no issue, and I have done the necessary steps, but why am I getting this error? Android Play Store React Native CLIcom.revenuecat.purchases.PurchasesException:There is an issue with your configuration. check the underlying error for more details.com.revenuecat.purchases.PurchasesException:There is an issue with your configuration. check the underlying error for more details.
Due to a mistaken configuration, we currently have 9 subscriptions for each store. Except for duration, products are similar in terms of benefits offered, while in some cases price can change in a 5% of the overall regions. We would like to disable all the useless subscriptions we are offering and maintain only one annual plan and one monthly plan. I know that current iOS subscribers of the disabled plans won’t have the possibility to renew anymore, while for Android users it depends from a renewal setting. Is there any suggested (and legal) process to follow in order to migrate these customers to one of the existing plans we want to maintain? I am thinking of a communication that their plan will convert in legacy and that they can subscribe to one of the available options. I read about price changes that can work for the 5% mentioned above, but in many cases the price will be maintained so this is not our case. I am interested in both App Store and Play Console approaches, thanks!
Hi,I would like to test different pricing for various locations on both Android and iOS. What is the best way to approach this, especially on Android?Thank you in advance for your guidance!Best regards,Wojtek
I am getting the following error when trying to test my app integration with Amazon. I have already implemented purchases with RevenueCat on this same app for Google Play and Apple, and it works fine on those stores. Now I am getting this error when I try to start selling subscriptions on this app on the Amazon Appstore. D/[Purchases] - DEBUG(15726): ℹ️ Offerings cache is stale, updating from network in foregroundD/[Purchases] - DEBUG(15726): 😻 Start Offerings update from network.D/[Purchases] - DEBUG(15726): Request already scheduled with jitter delay, adding existing callbacks to unjittered request with key: BackgroundAwareCallbackCacheKey(cacheKey=[/subscribers/xxx/offerings], appInBackground=false)D/[Purchases] - DEBUG(15726): ℹ️ Updating pending purchase queueD/[Purchases] - DEBUG(15726): ℹ️ No subscriber attributes to synchronize.D/[Purchases] - DEBUG(15726): Getting storefront from cache was null.D/[Purchases] - DEBUG(15726): ℹ️ Listener setD/[Purchases] - DEBUG(15726): API req
Hi Everyone,HAppy New Year!II had a customer register recently and his son attempted to register too, but his dad had used his iTunes account, therefore the son couldn’t start another subscription for his account.How can we get around that problem? Technically speaking each user should have their own subscription associated to their email address. In this case I had to let the son submit his request using his Dads subscription.Hope that makes sense. Not a real technical issue, but one I hope the community can help with. Thanks in advanceNick CockinosRedhot Internet Solutions Pty Ltd
I am trying to get my brain around how custom offer codes are supposed to work and I just had a friend test one in my production app and everything worked (I think) but Revenuecat shows the offer used as a 1 week trial when the offer code was a 1 year trial. Here’s the scenario: I’m using paywalls and I have a $29.99 annual subscription with a 1 week free trial Everything about the paywall has been tested in prod and works great I created a custom offer code in App Store Connect for my early users to get a free year of the app. I am only using this code via the App Store link. User gets a link and goes through the App Store redemption process. A friend of mine tested this process and it seemed to work for him. His subscription in settings shows that he has the 1 year free trial.The problem is, when he signed up, Revenuecat shows his subscription as the standard 1 week trial not a 1 year trial. I maybe be misunderstanding how this should work on the Revenuecat side but is this expected?
In the revenue cat system, we first calculate monthly revenue and then annual revenue. However, on the dashboard, the monthly revenue appears as $0, while only the annual revenue is displayed correctly. In reality, both monthly and annual revenues were calculated without any refunds for the monthly revenue. Why does the dashboard show $0 for the monthly revenue?
Hi, I am using revenuecat in my Apple and android apps for in app purchases. These are often very small IAP starting from €0,29. Now I want to add this feature to my website as well so I have to integrate Stripe. Now I see that they have a standard fee of 1.5% + €0,25 per payment. And a minimum purchase of €0,50. Is this also the case with the revenuecat + stripe intergration?grts
I have a problem with creating paywalls. I've already tried it in the following browsers: Chrome, Firefox, Opera and Edge. The problem always in the selected language, no matter which:English (United States) has an error.and the Create Paywall button doesn't work. See the image
How best to handle this? I have 2 paywall offerings both unlock the same entitlement. However one is at a reduced cost. Prior to moving to a subscription model the App offered a one time purchase. If user had purchased the one time they are now shown the 33% discounted paywall. If they are new customer or had no previous purchases they see the full price paywall. The issue is a user who qualifies for the discounted option takes it but them successfully applies to Apple for a refund of the original in-app purchase. A full 11 months later. Now that I don’t mind because it’s Apples way. What I do mind is the user getting the discounted rate and then refunding their transaction of 11 months previous and now should not be entitled to the discounted rate. Finally my questionsCan I force user to, at renewal of the subscription onto the standard price?detect either in code or via the revenuecat dashboard customers who have taken the discounted option and subsequently cancelled (claimed refund
I’m building a subscription-based app where users can choose between two base plans (Basic and Premium), and I want to offer several recurring add-ons (e.g., Read Receipt, Priority Message, etc.), each priced at for eg : AUD 2.00/month. The goal is to allow users to dynamically add or remove these features, with their subscription price updating accordingly or maybe even multiple subscription . Is this possible through in-app purchases and revenuecat ? If so could you please provide me the best approach . Thanks in advance
Initially, I created two apps in one project (Project A).However, I didn't feel comfortable splitting the data exactly how I wanted it in the dashboard, so I created a new project (Project B) to split it up, try await Purchases.shared.syncPurchases()to migrate them.Initially, this seemed to work well, but Project A still had the customer's information. How can we fix this?
Should I be able to fetch products that are in the “Waiting for Review” state in Apple App Store Connect?I’m getting this error when testing locally on a physical device which is also logged in in a sandbox account:(RevenueCat.OfferingsManager.Error-Fehler 1.) 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 informhttps://rev.cat/why-are-offerings-empty I verified everything with the article, but I’m not sure if I’m able to fetch products in the waiting state. Would make sense tho because it’s one step further than the “Ready To Submit”
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.