Get help with anything related to RevenueCat.
Recently active
I’m trying to migrate to the RevenueCat paywall.I’m having an issue where I’m only seeing the “call to action” text on the button and not the “Call to action for an introductory offer”.Here’s my pay wall settings: And here’s what I’m seeing in the app when I test:If I tap the action button, I can see that it presents me with a free trial. Am I doing something wrong?
We are selling Tour descriptions in our App, that are like ebook chapters plus files for the actual track. Currently, we include all ebooks in the app bundle. Now we want to move it to be downloadable content that is downloaded after the purchase and on a restore purchases event. Are there recommendations or best practices on how to handle the downloads? Can we place download URLs into some meta data that are only visible after the purchase?
I have a React Native application using RevenueCat, so there are two apps - 1 for Android and 1 for iOS, and therefore two public API keys. I’m wanting to use the endpoint for creating a new subscriber/customer on my backend server (https://api.revenuecat.com/v1/subscribers/{app_user_id}) rather than doing it on the front end, but the issue I’m having is I don’t know which platform the user is/will be using and so not sure which API key to use with the endpoint. Does this matter or am I able to use whichever endpoint and the subscription be acceptable on either platform? (I’m specifically granting the customer an entitlement after creating them, if that makes any difference.) Thanks so much in advance!
Let’s suppose there is a subscription group with monthly and yearly product. Now a user purchases my monthly plan then should I allow users to view the paywall? Currently my approach is to let users know they already own the “Pro” package which doesn’t let them redirect to a paywall and because of that they can’t also see restore purchases button. So should i still separately show the restore puchases button? or keep following my current approach?
Hello how to add a disclaimer message to the paywall generated remotely?
i want to replace native android apps by flutter android... but i have some confution i have some google pay subscription in my native android apps.. in flutter android apps i have integrate google pay subscription using revenueCat.. So if i replace previous android apps by flutter app, revenueCat can manage previous native subscription
Hello community, we currently have an offering for pro subscription for $9.99. Now we want to create a special offering for the easter holidays for $7.99 (lifetime), that should not effect the users that bought for the normal price.On Apple, I created a new subscription group with the new subscription for $7.99 in it, so users that bought for $9.99 can not switch to the $7.99 subscription in the icloud settings.On google I’m not sure whats the corrent way? Should I create a whole new subscription with a new base plan, or is a new base plan in the existing subscription enough? I want to prevent that users that bought for $9.99 can switch to the $7.99 offering. Kind regards,Marius
Hi everyone, I'm integrating RevenueCat into my FlutterFlow app and have enabled debug logging. I'm seeking your expertise on a few points: Accessing Logs: After enabling debug logging in FlutterFlow, where and how do you recommend accessing and interpreting these logs? Common Issues: Any common pitfalls during this integration process I should watch out for? Appreciate any insights or resources you can share. Thanks!
For our Stripe integration, we are currently sending the token over to RevenueCat (RC) when we receive the customer.subscription.created event, as instructed in the documentation here.However, as far as we can tell, when this event fires, Stripe hasn't necessarily completed processing the transaction/payment and therefore RC immediately receives a BILLING_ISSUE and CANCELLATION event from Stripe, which is what we are seeing in the "Customer History" for users. From a quick test, if we delay the POST to RC with the token by even a couple of seconds, we successfully receive the subscription and do not receive the issues mentioned above because (presumably) Stripe has finished the processing on its side by that point.Example user: My question is, should we instead be listening for the customer.subscription.updated and POSTing to RC at this time? It seems like customer.subscription.updated fires a couple of seconds after .created once Stripe has done a bit more processing, which I believe
Hi everyone,I’m using flutter to develop a feature that grant promotion access to an entitlement.The process is :1 - Client send it’s original_app_user_id to the backend server2 - The backend server perform an API call to "https://api.revenuecat.com/v1/subscribers/#{user_id}/entitlements/#{entitlement_id}/promotional"3 - RevenueCat send status 201 response back4 - The backend send success to the Client5 - The client should refresh the customInfo (through restore purchase)This process works fine on iOS, the subscription to the entitlement is active. But on Android, it does not seems to work. Even after 5 minutes (which should clear the cache) the customInfo does not show the new subscription, even after killing and launching the app.I’m pretty sure it should work as it is, because it works on iOS. Can someone help me out ?
I have created around 5 promo codes for my in app product which is a one time purchase on Google Play console, and I want to redeem it through my app but I am not able to do that, as my app does not provide more options by which I can redeem it through, like the purchase dialogue comes to the screen and it only allows me to select the test card option for the purchases( as of now my app is in development stage), so my questions are :Is I have to create/ put some more code in my app to able to use promo code. Right now I am using react native IAP library to do so. If yes, than is there any specific link/ document which I have to follow to implement the promo codes. Can I redeem code outside my app, by putting it directly on play Store app ( in redeem & gift card section)for in app purchases(subscription and one time purchase) ,if yes ,so what all are the scenarios which I have to follow to validate the purchase, or whom can I give that redeem purchase through play store directly. Th
I am using react-native-purchases-ui. In my code, I have explicitly set displayCloseButton: true when calling the presentPaywallIfNeeded function. The close button is shown successfully on iOS with the teal color. However, on Android, it is not visible at all. I am using: “expo”: “49.0.17”,"react-native": "0.72.6","react-native-purchases": "7.21.0","react-native-purchases-ui": "7.21.0", See examples:ANDROID Android Paywall (no close button)iOS
In my app I pretty much copy & pasted the Paywall code from the revenuecat example. So far no issues were detected during test phase and the restore purchases works as well. However after submitting for review on Apple App Store the app was rejected due to (a violation of Guideline 3.1.1):We noticed that your app includes or accesses paid digital content, services, or functionality by means other than in-app purchase, which is not appropriate for the App Store. Specifically:- The subscriptions can be purchased in the app using payment mechanisms other than in-app purchase. I’m not sure if this is related to using the revenuecat library or not, but I only have one way to buy the subscription and that’s via the button in the paywall. As “proof” of their claim they also included a screenshot which shows the loader overlay that’s shown while waiting for the ios native popup to show. Anyone else that faced this issue before or any suggestions on how to “fix it”?
Hello! I was wondering if somebody knows a trick to check if I am enrolled in the Small Business Program. I would like also to see from an official report which is the take over percentage applied actually to new subscriptions. Any recommended approach? Thank you in advance
When I run the command:Purchases.getOfferings()I get the following error:underlyingErrorMessage: There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from the Play Store.The problem is that my colleague gets the offerings without a problem, so it’s not the configuration issue, we are using the same codebase and the same API key. What might be the problem?The whole error object:{"nativeStackAndroid":[],"userInfo":{"underlyingErrorMessage":"There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from the Play Store.\nMore information: https://rev.cat/why-are-offerings-empty","readableErrorCode":"ConfigurationError","readable_error_code":"ConfigurationError","message":"There is an issue with your configuration. Check the underlying error for more details.","code":23},"message":"There is an issue with your configuration. Check the underlying error for more deta
My paywall has yearly and lifetime subsciption. I can’t find the way to replace the chinese of lifetime to the right word since now the meaning of 寿命 is the actual lifetime. The right translation should be 终身.
Hello, We have a subscription-based, multi-platform product that’s available on Web, Android, and iOS.Last week we set up Google Play and Apple Store integration with RC for our product and it’s finally working. We just started doing Stripe integration for our Web users, and it seems to be a lot more complicated and confusing than we expected. We feel that Strip integration is a 3rd-class citizen of RC, since there are only one vague doc, and a 2 year old sample code and a lot of required manual work. Here are our thoughts and questions. 1) Any use of SDK for Stripe at all?!When we first evaluated RC, we thought the Purchases SDK of RC would give us a hand on all platforms. (See the first paragraph below) However, it seems like the Client Side SDK of RC should be completely discarded on Web/Stripe, as it cannot do basic tasks like getPurchaserInfo (Source) even when we pass the strip_xxx Public API Key and app_user_id to the setup() method of SDK. It throws cordova_not_available err
Hello!I know that by developers locally its possible to clear the Purchase History on the Sandbox Testers section in AppStoreConnect. But how to clear the Purchase History for TestFlight testers that are not necesary connected to the Mac with cable and XCode?Is it posible? Where do I see the purchases I’ve made?Thanks in advance,Paolo.
Hi team,Is there a way to link a specific offering to specific app within a project?I am using a project to allow for shared subscriptions in the future, but to do so, I have to share my offerings between apps. The current system only allows for one default offering for all apps within the bundle and the offerings call from the iOS SDK returns all offerings as there is no way to mark them for a given app.I’d love a way to say that this specific offering or offerings is only for this given app and only to return it for that app API key.Otherwise I end up with errors like There's a problem with your configuration. No packages could be found for offering with identifier default_monthly.
Why are there so many billing error problems?I'm noticing that this error only occurs when the application developer gives the user a 7-day free trial.When immediate payment occurs, this works.So I tested it with 2 friends who had a balance on their credit card to subscribe to my app with a 7-day free trial, it didn't work.I would like to know what step you took to fix this problem?we have more than 85% error rate of this on android (playstore)My friend did the test with his card and it shows that he has a balance, but there was a problem.Is there a problem with the revenucat SDK with Google processing thinking that all payments are fraud? image of my friend's balance:
Hello guys!I'm new using this SKD and integrating payments in my app. I already made a test today using my own credit card to test a purchase of a in app product. Everything is nice, however the name that is appearing in my card. I suppose that the client could see another name in the app purchase, but i getting the following label: IDK why appears YOUTUBE because the purchase wasnt made in that app. Could you help me?I already configure my payments profile in google and the bank statement name says other name…I have to configure anything else in revenuecat?Thanks
I'm currently in the process of integrating RevenueCat with my mobile application built on OutSystems. I'm excited to offer subscription plans to my users and leverage RevenueCat's management features.I've been following the general guidelines for integrating RevenueCat with mobile apps, but I'd appreciate some guidance specific to the OutSystems environment.Here are some specific questions I have:Compatibility: Are there any known compatibility issues or considerations when using RevenueCat with the latest version of OutSystems 11? OutSystems Forge: Have others in the community developed pre-built components or plugins for integrating RevenueCat with OutSystems? If so, could you point me in the right direction? I could not find it. Best Practices: Are there any recommended practices or security considerations specific to integrating RevenueCat within the OutSystems development workflow? Troubleshooting: If I encounter errors during the integration process, are there any resources or c
Hi, I wish to migrate my subscriptions, How can i get receipts and currency data for import from App Store.
Hi RevenueCat team,The question is about trial conversions for our iOS app Customuse.The issue is that many of trials got converted after being cancelled due to billings errors.I’ve attached a couple of examples. We have a 3-days grace period enabled for Paid-to-Paid renewals only, so it's not the case.Moreover, the conversions occurred a few days after the trials expired.Also from the Amplitude logs we see that users have not returned to the app to make a purchase, so the payments were made automatically.Could you explain why the trials were converted, please?And how can we avoid such false conversions.At Customuse, we are really worried about this issue because users can blame us for scam.Looking forward to your response.Customer ids:c98d6c3d-2946-4920-96bd-2919fd81be0f6aacf173-34a3-492c-9f0b-dfa86d1316c8Kind regards,Dmitry, Customuse
Hello,I'm encountering an issue with my Flutter app's in-app purchase (IAP) functionality, particularly with restoring purchases on iOS.My app offers a non-consumable premium version that provides lifetime access to certain features. However, during the App Store review process, I received a rejection due to the following reason:Guideline 3.1.1 - Business - Payments - In-App Purchase"We found that your app includes a feature to restore previously purchased in-app purchase products by entering the user's Apple ID and password. However, in-app purchases cannot be restored in this manner."While the restoration process works smoothly on Android without any sign-in prompts, on iOS, it triggers a sign-in prompt, leading to the rejection.it only happened for app store, everything was fine for google playHere's the relevant code snippet from my app:static Future<void> restorePurchases( PersistenceViewModel persistenceViewModel, BuildContext context) async { try { CustomerInfo cust
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.