Discussion and help from anything related to RevenueCat.
Recently active
Iām building a paywall that I would like to have a conditional āCloseā button on -Ā in some cases it should be a hard paywall, but in others, I want the user to opt out.Ā Iām showing the paywall with `PaywallView(offering: offering, displayCloseButton: <logic-goes-here>)`, but even if I send in a hardcoded true or false, it makes no difference.Ā Iāve tried this with my Paywall equipped with a āNavigate Backā button, and without, but the ādisplayCloseButtonā parameter never has any effect.
Weāve periodically been seeing a āThere was a problem with the storeā error when Android users try to purchase.Ā Does RevenueCat have any logs that can help diagnose the error? Or how can I diagnose this problem?
Hello,Weāve got a FlutterĀ app that requires user register / login and weāre providing theĀ SDK with an App User ID tied to those credentials to allow our users to share the same subscription among multiple devices.Ā This is working fine and we recover the same Entitlements no mater the device the user Logs In.What weāre having problems is with subscription management since many actions (Upgrade, Downgrade, etc...) will only work from the device that did the original purchase as stated in the docs:Ā Managing SubscriptionsA user can onlyĀ manage their subscriptionĀ on the platform it was purchased from.Having the same App Account logged in in two devices with different Google Play accounts and callingĀ Purchases.purchasePackage() generates the following error:PlatformException(4, One or more of the arguments provided are invalid., {code: 4, message: One or more of the arguments provided are invalid., readableErrorCode: PurchaseInvalidError, readable_error_code: PurchaseInvalidError, underlying
Iām trying to use the new beta paywall builder, but I get this error despite having offerings and products setup.Ā
If my app fails to receive a `NON_RENEWABLE_PURCHASE` webhook for a consumable, is the event completely lost?If so that would mean the purchase is completely lost, is there any recourse to deal with those situations, or is the idea that I should just never miss one of these events?
RevenueCat Paywall Not Displaying Despite Proper Configuration in React Native App.Environment- react-native-purchases: 8.5.4- react-native-purchases-ui: 8.5.4- react-native: 0.74.5IssueI'm encountering an error message stating "offering Default has no configured paywall" despite having already:1. Created a paywall in the RevenueCat dashboard2. Linked it to the Default offering configuration3. Properly integrated react-native-purchases and react-native-purchases-uiWhat I've Done1. Created and configured a paywall in the RevenueCat dashboard2. Linked the paywall to the Default offering3. Installed and configured the latest versions of react-native-purchases and react-native-purchases-ui4. Verified my API keys and configurationCode Implementationimport { View } from "react-native";import RevenueCatUI from "react-native-purchases-ui";export default PaymentSettings = () => { return ( <View style={{ flex: 1 }}> <RevenueCatUI.Paywall /> </View> );}Expected B
Hi everyone,Iāve integrated RevenueCatās React Native package into our Expo-managed app, and Iām running into an issue getting everything working in Testflight. Iāve added the getOfferings() and purchasePackage() functions into our app and everythingĀ is working as expected when running the app locally, but the app is crashing as soon as itās opened in TestFlight.Ā To create our buildĀ for TestFlight, Iām usingeas build --platform iosLet me know if Iām missing anythingĀ or if you need anything from my side to help resolve this issue.Thanks!
Iāve got a react native project that has an auth system. The user must be logged into to purchase our monthly or yearlyĀ premium subscription. He must also be logged in to restore purchases (Not sure if this is allowed by the App Store). I created an account in my Android app, purchased the premium subscription. However, when I logged into the same account in myĀ iOS app and tried restoring purchases, I received an error because the user has no active entitlements whichĀ makes sense, but I do see the play store entitlement under all entitlements - not sure what to do with that information exactly.Ā I was under the impression that the user could buy my premium subscription on one platform (Android), and then not have to pay for the same premium subscription on the other platform (iOS). Maybe I am misunderstanding something? Iāve read most of the docs, including the part under Restoring Purchases which says:Restoring purchases is a mechanism by which your user can restore their in-app purcha
Hi!Any plans on updating the Arrow dependency? I saw in the libs.versions.toml that it is set to 1.2.4 and since my project was relying on 2.0.1 I was getting build errors (iOS Simulator). Downgrading my project dependency to 1.2.4 helped.I am not sure if there is something in my build.gradle I can set to avoid this but the downgrade was not a big issue for me.BestCorey
I am trying to set up my app for iOS to use my subscriptions. All my subscriptions are in āready for reviewā state. I always get this error when trying to fetch my subscriptions. Also my test flight seems to have issues not sure if this may be related but when trying to install it says āapp unavailable or doesnt existāI have uploaded my relevant binary I have added subscription relevant metadata I have completed all the agreements (paid and free apps)My issues areConfiguration error when trying to find offerings (API still works i believe and connects to apple but cannot fetch the offerings) Test flight not working properly (not sure if related)flutter: 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://
Hi,Iām currently trying to figure out how exactly Iām supposed to show promotional offers when using the pre-built paywall created in RevenueCat and displaying it in a iOS app.I can confirm that the promotional offer exists in the .storekit file.Ā
In my mobile application, users can create accounts.When logging into an account, I call logIn() in the RevenueCat SDK to set a custom app_user_id.When logging out, I call logOut().Ā Subscriptions are only available to authenticated users.Ā Users can create groups within the app.When a user purchases a subscription, premium access is granted to all members of their group.Ā To handle this, I have a table in the database that stores data about the active entitlement:Ā PremiumTable:⢠id (autoIncrement primary key)⢠Purchase date⢠Expiration date⢠groupId ā the ID of the group that received premium access⢠ownerUuid ā the ID of the user who made the purchase (Iām unsure whether to store app_user_id or original_app_user_id here).Ā The issue Iām facing:1. A user creates a group.2. He purchase a premium subscription, and a record is created in PremiumTable.3. He log out, which resets the RevenueCat app_user_id.4. He log in with a different account associated with a different group.5. He press Rest
Iām working in React Native and using theĀ RevenueCatUI.Paywall from react-native-purchases-ui. Specifically, Iām using RevenueCat for purchasing subscriptions through Apple.Ā One thing I am seeing is that on my paywallĀ when a purchase is being processed, there is no visual indicator that the payment is processing. So my users are able to continue to press the purchase button and are prompted again through the Apple dialogs to complete the purchase even though it is still processing.Ā Is there a way to disable the purchase button while the payment is processing? Would this need to be done in my code or through the Paywall builder in the RevenueCat portal?
We have encountered an issue where the user alias is created with a delay by using the following API:In java: Purchases.getSharedInstance().logIn( ā¦Ā )Ā Below is the timeline of our user:Ā Because the delay described above, the Webhook notified our backend service with an AnonymuosID, and we do know about the alias happened afterward. Thus our own service cannot link the userās REAL user id with the purchases and subscriptions they made.Ā This happens quite often on our side (more than 2% of our users are impacted!!!!), and it has caused a huge data loss already.Ā Please fix this as soon as possible, orĀ let us know, what can goes wrong with the integration.
I have done everything as requested, but I still get an error, what should I do?
Hello againI was wondering what are peopleās experiences of refunds on the RC dashboards.I havenāt catered for them in any particular way in my sub-based app.If I look at Charts>Refund Rate, All Time, Monthly, I can count 6 refund transactions in the 18 months of life of my app. Considering at least a couple were openly malicious from a user, Iād sign with blood for that to be the actual numberā¦Ā But I guess I can investigate further in App Store Connect and Google Play Dev Console!Secondarily, if a refund is requested in November for say a yearly sub that was bought in September, would this refund retroactively change the stats about September?Thanks!Ā
I am having issues with the RC Web SDK.Ā Ā I followed the instructionsĀ to get setup, and have successfully added products to Stripe & added to my existing mobile app offerings.Ā I can now view my paywall with products:Paywall successfully displays products from Stripe.Ā The product identified is in sync between Stripe & RevenueCatWhen I click ācontinueā for either product it results in an error:error code 16The console shows a 500 error to the RevenueCat API:POST https://api.revenuecat.com/rcbilling/v1/purchase 500 (Internal Server Error)qr @ Purchases.es.js:6824postPurchase @ Purchases.es.js:7015startPurchase @ Purchases.es.js:4850ae @ Purchases.es.js:6398eval @ Purchases.es.js:6383Ei @ Purchases.es.js:100eval @ Purchases.es.js:1782cr @ Purchases.es.js:971eval @ Purchases.es.js:1782to @ Purchases.es.js:766lt @ Purchases.es.js:816ts @ Purchases.es.js:866rs @ Purchases.es.js:852ns @ Purchases.es.js:876When i close the modal this error shows up in the console:Purchases.es.js:4768 U
I am currently trying to implement subscription featureĀ using `"react-native-purchases": "^8.5.0",` but when i enabled billing permission and upload to Google Play, i am getting error message saying i need to use Billing Library that is higher than version 6.0.1.Ā any ideas to resolve the error?
In my Flutter app, I have multiple subscription plans, each with a āSubscribeā button in the UI. After a user subscribes to a plan, that planās button instead shows āActive Planā so they canāt attempt to subscribe to their currently active plan again. Users may upgrade or downgrade, when a user downgrades, their current plan runs through until renewal. During this time I wish to display in my UI a plan is being downgraded to, so they have an accurate understanding of their current status and they canāt attempt to subscribe to a plan they are already downgrading to again, as that will just result in a popup saying it is already their current plan.How can I see if and which plan is being downgraded to in the app? Iāve tried usingĀ isActive andĀ willRenew fields from getCustomerInfo(), however these fields donāt seem to provide useful information for this case, as multiple plans have āwillRenew: trueā despite them not being active or renewing to. The index of items in the entitlements field
Greetings, I am facing this scenario in sandbox:-User A subscribes to SubscriptionĀ Group A, it is a success. User A logs out. User B logs in (Purchases.login(NEW_APP_ID)) (same App Store account) User B subscribes to SubscriptionĀ Group B, it is an error.ERROR:Ā Product purchase for '<SubscriptionĀ Group B>' failed with error: PurchasesError(error: There is already another active subscriber using the same receipt., userInfo: ["NSUnderlyingError": Error Domain=RevenueCat.BackendErrorCode Code=7102 "There is already another active subscriber using the same receipt.Ā User A is now subscribed toĀ SubscriptionĀ Group A andĀ SubscriptionĀ Group B simultaneously (webhook is alternating between the two)How can I stopĀ Group Bās subscriptionĀ being given to User A?Ā If āKeep with Original App User IDā is set, then User Bās subscriptions will be given to User A. If āTransfer with New App User IDā is set, User Aās subscriptions will be set for User B.Ā But I need both to keep their current state and b
Ā Ā Ā The recommended template is used, the default language is English and can be displayed normally;1 However, when I added a new language: Simplified Chinese, and set it as the default, theĀ error occurred in the display.2 If the default language is English and I adjust the test region to mainland China, Chinese UI are not displayed. The interface still shows in English.Ā Ā
Hi RevenueCat Community,I'm having an issue with the RevenueCat paywall integration in my Android app. Iām using the PaywallActivityLauncher to display the paywall, and I set the flag shouldDisplayDismissButton = true in the launch options. However, the close (dismiss) button does not appear on the paywall.My implementation looks like this:paywallActivityLauncher.launchIfNeeded( requiredEntitlementIdentifier = Constants.ENTITLEMENT_ID, shouldDisplayDismissButton = true ) Context:Iām using the latest version of the RevenueCat SDK. My paywall template in the RevenueCat Dashboard is set to the default configuration. Iāve also checked for any possible theme or styling issues (e.g., the button not being visible due to color conflicts), but nothing seems to work.What I've Tried:Verifying my SDK version. Confirming that the paywall is being launched as a new Activity (which should display the close button by default). Checking the dashboard settings for any customization that might hide the d
When trying to crete a paywall using the new paywall beta builder, i canāt get the price to be shown, it always display the variable.Tried it 2 times, with entitlements and offerings from scratch, same issue.Ā Is this a known thing, or Iām doing something wrong?Bonus: gradientsās donāt look like they look live as whiting the builder
I have a simple app which does not require user login (at present). Users can purchase a one-time lifetime āsubscriptionā.Until now I have stored theĀ purchase locally within the app local database.In moving to RevenueCat for purchase handling, I now have the question - should I continue to store the purchase locally, or check each time with RC? Ā Related questions areWhich is the best option regarding the question of risk here (hacking the subscription)? is there an issue with second option if user does not have wifi/connected? Or possibly do both (but possibly overkill!)Thanks for any advice
Hi,so Iām using the multi tier paywall template.However, Iām not satisfied that the currently subscribed tier has no indicator, that the user is already subscribed to that tier.Ā Now I found that there has been a big update for custom paywalls and it looks really nice. But there is no component to build it with for multi tier?Ā Ā Do I have a design error in my app in general? Also thought about displaying the different tiers on a custom screen and then opening a paywall for each tier when pressed on it. But out of conversion and usability view this just is an extra step for the customer.Ā Ā What am I missing?Ā Ā
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.