Get help with your SDK implementation.
Recently active
Hello Revenuecat Team,I have successfully integrated and tested the iOS version, and it works perfectly. Now, I am testing with a real Android device and have made a test purchase for a subscription package. It was successful, but when my server calls the API to check customer info, I receive the following data:{"request_date": "2024-03-12T09:15:30Z","request_date_ms": 1710234930863,"subscriber": {"entitlements": {},"original_application_version": null,"original_purchase_date": null,"other_purchases": {},"subscriptions": {"xxx12monthsub": {"expires_date": "2024-03-12T09:34:17Z"},"xxxx.6monthsub": {"expires_date": "2024-03-12T09:02:55Z"}}}}*xxx represents the accurate subscription package code, which I have removed for security reasons.My question is, if it is an Android device, do I need to check the "subscriptions" instead of "entitlements" as in iOS?Here is my flow:1: User clicks on the subscription button on the device -> sends a request to my server.2: My server calls Revenuecat
When a new user registers in my app, I also set the email attribute in RC.However, Firebase for Unity doesn’t support the ability to verify an email address before updating it.This creates a situation where a user can update their email address to a wrong one (mistype). At this point I also fire an update to the $email attribute in RC with their new email. Meanwhile, they receive an email stating that someone updated their account’s email address (which they can see is mistyped). The email gives them the option to click a link and revert to their old email address. If they click the link, Firebase will revert to the old email address, while RC will reference the new one in the attributes.I can’t use the email verification flow in my app and ensure that the RC attribute updates only when an email is verified, because the verification flow opens only if the account is not verified. Verification happens outside the app.I thought I can read the RC attributes in-app and compare to the lates
Any tips or advices on how to make Revenuecat work on TvOS using the react native implementation?
Hi revenucat Team,I want to achieve this kind of payment:1 month free trial, after that 3 $ for each month ( for 3 months ) and after that 6 $ per monthHow can I achieve this?for free trial I’m using Introductory offer, and for rest of them should I use promotional offer?but promotional will not support new users and depend on doc its just for subscribed users…any way to achive this goal?
I made a promo code purchase using the app store url method below, but the webhook did not pick up that purchase even though i have uploaded my App Store Connect API Key and my In-App Purchase Config Key in the settings. Any guidance on how to get the webhook to trigger if they go through this route? Thanks!https://apps.apple.com/redeem?ctx=offercodes&id={apple_app_id}&code={code}
I am not finding the “IMMEDIATE_AND_CHARGE_FULL_PRICE” Proraion-mode option on the Flutter SDK. Is this available on the latest package? We are using the version ^3.10.0 now. We need this Prorationmode but the SDK enum does not have this method. Anyone found a work around?
I’m using the RevenueCat Paywall UI component in React-Native, however there seems to be no way for a customer to input a discount code to get a percentage decrease on the product. We have setup a discount code in Apple Subscription and it’s linked to a product we are showing the customers in the paywall but there seems to be no way of the customer redeeming a code like you can see in the Apple Documentation belowhttps://developer.apple.com/design/human-interface-guidelines/in-app-purchase#Supporting-offer-codesThe only way I could get this to work is to engage the presentCodeRedemptionSheet function. <RevenueCatUI.PaywallonDismiss={() => router.replace("/(app)/(tabs)/")}/><TouchableOpacity style={{marginBottom: 24}} onPress={() => Purchases.presentCodeRedemptionSheet()}>Redeem Offer</TouchableOpacity>
Hi All,I am integrating IAP into my React Native APP using react-native-purchases. I am creating a development build using EAS for Android and getting the below error: I am using react-native-purchases version 7.22.0 and expo ~47.0.14. As per my understanding, expo ~47.0.14 already supports Android SDK Version 34. Do you think I need to upgrade my Expo SDK version to the latest to make it work?“Execution failed for task ':app:checkDebugAarMetadata'.A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 3 issues were found when checking AAR metadata: 1. Dependency 'androidx.core:core-ktx:1.12.0' requires libraries and applications that depend on it to compile against version 34 or later of the Android APIs. :app is currently compiled against android-31. Also, the maximum recommended compile SDK version for Android Gradle plugin 7.2.1 is 32. Recommended action: Update this project's
I am using real device for test and I am getting these errors:🍎‼️ Error fetching offerings - The operation couldn’t be completed. (RevenueCat.OfferingsManager.Error error 1.)2022-10-27 13:47:15.436381+0300 Runner[12975:595117] [Purchases] - ERROR: 😿‼️ 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-empty2022-10-27 13:47:15.445840+0300 Runner[12975:595300] 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). But I have conjectures:I
So,I am trying to log the offerings I have for my App.. However, I am getting this message > [Error: 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] General Information on the App This is the App Store View of the subscription General Information Revenue Cat This is how I set it up in Revenue Cat And here the offerings I have signed all the contracts Apple needs to be signed. We are thinking about migrating to Revenue Cat. Before, we tested buying a subscription with a StoreKit file and a local certificate. I deleted the Sorekit file and the certificate and set the configuration of StoreKit to None I am testing on a simulator.Any ideas what is causing this problem?
I recently made the migration from SwiftyStoreKit to handle consumable purchases. It was working well, didn’t see any problems. Days later, while testing in sandbox, I am now getting the error “There is already another active subscriber using the same receipt.” There were no changes on my part that could have broken something. How can I fix this?
I am trying to purchase a product in React native.my env:"react-native": "0.68.2","react-native-purchases": "^6.6.5", in iOS, after configure with iOS public key, I try to purchase a product by using a function purchaseStoreProductconst { customerInfo, productIdentifier } = await Purchases.purchaseStoreProduct(product);But I could not get any response as well as any errors.In my test, I could get the Apple login modal prompt at the first function call.But after some times, when trying to call this function, I could not get any response.
I feel stupid, but I don’t understand how to implement the Paywall in fragment in Kotlin.Is there any tutorial or sample available ?Thanks in advance
How to disable or translate this alert? I'm using the react-native-purchases-ui.
Can anyone advise where to place the following code suggested by RC in the app? Currently, the sample code I’ve seen so far only places the logLevel and configure in the init() of the App struct. Not sure where to put the shared.delegate and AppDelegate extension. Thank you for sharing! // Option 1: using PurchasesDelegate:Purchases.logLevel = .debugPurchases.configure(withAPIKey: <public_sdk_key>)Purchases.shared.delegate = self // make sure to set this after calling configureextension AppDelegate: PurchasesDelegate {func purchases(_ purchases: Purchases, receivedUpdated customerInfo: Purchases.CustomerInfo) {// handle any changes to customerInfo}}
So I followed the official revenue cat website set up process.I’m using RN and I plan to publish my app to android first then to the app store (So right now I’m only focusing on Google Play).So after following this sample example : https://github.com/RevenueCat/react-native-purchases/tree/main/examples/MagicWeather. I got stuck on the Purchases.getOfferings that was returning : `Error: There is an issue with your configuration. Check the underlying error for more details.`Here is a screen shot : I’m pretty sure I did everything correctly so why isn’t it working ?Also I’m using a developement build (maybe I can’t test RC with it, I don’t know), and my app isn’t published on the google Play I have created a closed Track especialy for it but I still didn’t send it to get reviewed Moreover the app bundle that I uploaded is a dummy app (the app only have a Text saying “Hello world !”) with the sole purpose of enabling Google Billing so that I can creat IAP products (I’m only using IAP I don
When I try to buy with Expo, I get this log [Error: One or more of the arguments provided are invalid.] but I can view the product product information and package information. what is the reason for this ridiculous error? I will add images of my codes. logs Phone Error How can i fix that ?
Hi,Here are the packages I have in my pubspec.yaml file.cloud_firestore: ^2.5.3firebase_core_web: ^1.1.0cloud_firestore_web: ^2.4.3firebase_core: ^1.7.0firebase_auth: ^3.1.2provider: ^6.0.1firebase_messaging: ^10.0.8firebase_crashlytics: ^2.2.2firebase_analytics: ^8.3.3purchases_flutter: ^3.0.0 I run everything in Flutter stable channel version 2.5.2.I tried using flutter channel beta version 2.6.0-5.2.pre as well. The iOS version of the phone is 15.0.1. And I run tests on Iphone 7 (physical device, not a simulator). The app works perfectly fine on Android but it hangs at the start of the app when I call the following function:Offerings rcOfferings;rcOfferings = await Purchases.getOfferings(); And the getOfferings() function never returns.. It was working perfectly fine before.. During the update procedure, the only change I made is the following:Remove the following: Purchases.identify(rcAppUserId);And instead use: Purchases.logIn(rcAppUserId); Is this a known issue? What can be pot
The following code published at https://www.revenuecat.com/docs/subscription-guidance/subscription-offers#checking-eligibility is unable to detect the trial offer eligibility correctly in the sandbox environment. Is there any solution to this? Thank you! Purchases.shared.getOfferings { offerings, error inif let product = offerings?.current?.availablePackages.first?.storeProduct {Purchases.shared.checkTrialOrIntroDiscountEligibility(product: product) { eligibility inif eligibility == .eligible {// show trial/introductory terms} else {// user is not eligible, show non-trial/introductory terms}}}}
Hi - I’m new to RevenueCat, and currently looking at use it to replace a direct BillingClient implementation for an Android app. For the app in question we offer two in-app-purchases - both are lifetime (i.e. non-consumable).From what I can see after integrating the SDK, it appears to be attempting to consume the purchase. Indeed looking at the SDK code on GitHub, it appears to attempt to consume any INAPP product’s, and only acknowledges SUBS.So - am I doing/understanding something wrong here? Can I support non-consumable INAPP purchases on Android using RevenueCat?
Installed SDK a couple of weeks ago. Now trying to use a paywall and saw the demo of the “supplied” paywall, but doesn’t seem to have installed RevenueCatUI (or fails when I try and import RevenueCatUI like in their video...) Total newbie I’m afraid...is there something I need to install in addition to the SDK and in addition to AppStore connect setup? Or do I need to forget it and code a basic paywall myself?
Hello,Although I have been using RC for a few years I am trying the Paywall feature for the first time, on a new app.I added a product on AppStore Connect, imported it into RC and added the RC SDK to my SwiftUI app.I initialized RC as per the docs, and it is working because I can output my product name after calling getOfferings: the logs also show that RC initialization has been successful.However, PaywalView displays a red badge with “Purchases has not been configured” Extra info:I am trying to embed the paywall view into a Carousel, that is why you see the three dotsDo you have any suggestions?Thanks,Davide
Hi AllI want to enable users to tip other users and wondering how the money gets to the user. For example user 1 will tip user 2 for their content using IAP, how does user 2 receive the money, is this handled by Apple, or do we collect IAP tip payment and distribute it ourselves. Thanks!
I’m intergrating RevenueCat Paywalls. There are two main ways to present a paywall in SwiftUI using View modifier `presentPaywallIfNeeded(...)` or manually allocating `PaywallView(displayCloseButton: true)`. And there is not callback events for manual allocation, how to handle events in this case?
I wrap my app with BugSnag to capture errors. It’s not entirely uncommon to have errors with the `Purchases` API from RevenueCat. For example, just today: You can see the error is `Error performing Request` which comes from my code block: useEffect( function offerings() { async function getOfferings() { try { if (!paywallEligible) return; const offerings = await Purchases.getOfferings(); if (offerings.current?.availablePackages.length) { setOfferings(offerings); setActivePkg(offerings.current?.availablePackages[0]); } } catch (e) { setMessage(['error', 'Error retrieving products.']); Bugsnag.notify({ name: 'getOfferings Error in Paywall', message: (e as Error).message, }); console.error(e); } finally { setIsLoading(false); } } if (!isReady) return; getOfferings(); }, [setMessage, isReady] );Because thi
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.