Get help with your SDK implementation.
Recently active
Hi, I am facing an issue with the iOS version of my react native app. As the title suggests, when I perform an action in the app which causes the paywall to open (subscription paywall), it closes itself after a second or two of being visible with PAYWALL_RESULT of CANCELLED. It works fine on Android (only tried it in a test environment using open testing) and allows me to step through the process of purchasing a subscription.I created my app with expo but to test on a physical iOS device have used prebuild to create an ios folder which after running pod install has the .xcworkspace file required to run a build in xcode. They physical device I am testing on is signed in to a sandbox account that is linked to my apple developer account.I am using react-native-purchases version 8.2.3 and the same version number for react-native-purchases-ui.I cannot seem to find any other people who have documented experiencing this issue, and there are no warnings or errors thrown in xcode or the metro t
Hi!I'm trying to integrate Revenuecat service for a subscription (work on flutterflow). I've already reviewed all the tutorials several times, changed different options, but it still gives an error. I've been trying to solve the problem for a whole weekI'm running it on an Android smartphone via a cable from a PC.HELP PLEASE!. Here are my screenshots.I used the tutorials:https://docs.flutterflow.io/integrations/payments/revenuecathttps://blog.flutterflow.io/in-app-subscriptions-using-revenue-cat/
Hi Guys,I am having an annoying issue in-app purchase payment with RevenueCat.Purchase modal is properly displayed and I can always proceed with payment (). Problem is : about 4 times out of 10, the following callback is not called.Purchases.shared.purchase(package: package) { [weak self] transaction, info, error, other inWhich means we cannot retrieve the transaction info or properly inform the user.I am pretty confident the purchase worked, as the system displays a purchase confirmation an alert (see attached screenshot).The following logs also suggest that both purchase and receipt were properly handled :2023-01-11 19:08:23.124231+0100 XXX[4003:1210683] [Purchases] - DEBUG: ℹ️ SKReceiptRefreshRequest started2023-01-11 19:08:23.232600+0100 XXX[4003:1206279] [Purchases] - DEBUG: ℹ️ applicationDidBecomeActive2023-01-11 19:08:23.675919+0100 XXX[4003:1206279] <SKReceiptRefreshRequest: 0x28161e3e0>: Finished refreshing receipt with error: Error Domain=ASDErrorDomain Code=603 "Reques
I’m using TestStoreProduct to create Packages for my Previews, but I’d like to filter the packages based on the intro discount eligibility. These TestStoreProduct have their introductoryDiscount set to a TestStoreProductDiscount, but when using Purchases.shared.checkTrialOrIntroDiscountEligibility I get .unknown. What does it take to get it to return .eligible in my Previews?Thanks
I’d love a way to get a callback on the tier toggle in the Paywalls to know which tier was currently selected and when it changed. We use the paywall footer with our own custom content behind it, so a callback would be valuable to be able to display content that reflects the current tier selection. Any idea if this is something the RC team is considering or planning in a future Paywall 2.0 update? Thanks, -O^O-
Hi, I left the StoreKit APIs alone and just signed up for RevenueCat today for my iOS app.However, there was one feature from StoreKit APIs that I really liked. Their StoreViews (specifically the subscription store view) is really nice and intuitive. But I’m confused about one thing. Looking at the RevCat docs, it looks like I should be making all purchase calls through their API. If I use a StoreView, then Apple will be handling the payment and I’m not sure if I’m following best practices here. It kind of feels like I need to choose a side. Either, use RevCat fully, or StoreKit fully, and not try to mix and match. Any thoughts?
I am using Template - 7 Siamese for my paywall setup for my apps in Android and iOS Native.But in both platform paywall showing one different option which is discount badge. That badge showing in Android Paywall but it’s not showing in iOS Paywall.I am using same paywall with both platforms. So how I can remove that badge values from Android Paywall?and Why it’s not showing in iOS Paywall.here i am sharing the screenshot of paywalls and package setting of paywall.Android Paywall Screenshot----https://drive.google.com/file/d/1uTg7Bh4144suZXybWHC6fByfoba_MmEC/view?usp=sharingiOS Paywall Screenshot----https://drive.google.com/file/d/170rBRzk0E6CjrJchRVXYJ2ehVpWLSNHc/view?usp=sharingPackage setup Screenshot for paywall---https://drive.google.com/file/d/1QMtfNYzVLE6AYnT0PQb1jivex0EOMfi0/view?usp=sharingPls let me know how can do same thing in both platforms because it’s necessary for me.Hoping for fast answers!Thanks!
Does RC provide through any of the SDKs type definitions for their Webhook Events? I’m working in NodeJS and want to receive webhooks to keep some state locally. I can see their examples and write my own type definitions, but the Best Practices state,“You should be able to handle webhooks that include additional fields to what's shown here, including new event types. We may add new fields or event types in the future without changing the API version.”It would be preferable to have an officially supported set of these objects and types, similar to what Stripe provides for their events, for folks out there that want to process Webhooks events because the documentation leaves some things ambiguous.For example, in the section on Subscription Lifecycle Event Fields, it says that tax_percentage can be NULL if unknown. Then on the Webhooks Sample Events page, tax_percentage is completely absent in some examples (Renewal), present in some (Uncancellation), and NULL in others (Billing Issue). T
Can you help me out to solve restore purchase.restore purchase demo code not work .
We successfully integrated Flutter’s RevenueCat SDK on Google Play and the App Store for mobile devices, and Stripe on the web. It’s a good approach and RevenueCat made it easier than expected. Thanks for it!Now, our next challenge is to provide our users a way to subscribe to our service via Stripe where Google Play is not available. For example, in China, I think there are devices without Google Play and the ones that have it installed, can’t access Google. Or in Rusia and Belarus, according to this post, they have Google Play but the billing service is disabled.Given the RevenueCat SDK is properly initialized, how can we detect Google Play payments won’t work, so we can show a paywall that uses our Stripe integration instead of the regular Google Play one?
I’m getting “The item you were attempting to purchase could not be found” error when choosing a subscription.Products are listed correctly Product IDs are matching Closed testing - Alpha (active) I’m logging into the app with an email that is in the GPC testers list Testing on physical Android deviceWhat else should I be checking?
Hello!What versions of Unity does RevenueCat support? The RevenueCat SDK installed correctly on a few of my projects running on older versions of Unity. I tried installing the SDK on Unity version 6000.019f1 but the External Dependency Manager does not show under the Edit menu like it does with the projects running on older versions of Unity.I’m following the instructions from here: https://www.revenuecat.com/docs/getting-started/installation/unityI’ve tried to install the SDK with both Option 1 (recommended): Install using OpenUPM and Option 2: Import the Purchases Unity package.As suggested in the documentation, I have tried reinstalling the RevenueCat plugin and manually importing the EDM4U plugin (multiple times) but the External Dependency Manager still does not show under the Edit menu in Unity.Curious if anyone-else has encountered this issue or has any insight. Thanks!
Hi, I’ve been trying to wrap my head around setting up web funnels through stripe and revenue cat and grant entitlements, the flow goes as followsA user purchases a subscription from our web portal using stripe Our backend stores a special code for them to redeem on the native app The user downloads the native app and enters the code (Heres the issue)Our backend then recieve the appUserId from the native app and grants the entitlment to this user We already connect stripe and have place the product under the correct entitlement However, it doesn’t seem like there is a known way to grant entitlements to users on v2, and I see that there is a promotional way for v1 (but that doesn’t seem like the best way)Would love to know the best opinionated way to handle our web funnel flow Thanks!Cody
I didn’t find how to create a sandbox only api key. Is it possible?
We’ve implemented consumables as an add-on along side our subscription. The high-level flow is: user makes purchase in-app —> RC sends webhook —> we increment the user’s balance in our database.How should a consumable purchase be validated locally.After receiving the CustomerInfo object in the purchase completion handler, what do I specifically look for? With subscriptions or non-consumables I just check to see if the entitlement is present. Consumables obviously don’t require permanent entitlements.I can filter the object’s nonSubscriptions array for the correct productIdentifier, and then check if its purchaseDate is less than 30 seconds old.This feels brittle—for example, somebody could easily make a purchase of the consumable and then quickly attempt it again and the code above would consider them having purchased it twice.Thoughts on this? Should I just show a loading animation and query my database here instead? [edited to remove second question because I found the answer h
Apple sent a mail thatWe’re reaching out to let you know that the subscriptionPricePoints endpoint now requires a territory relationship filter. If you use the App Store Connect API to configure your subscriptions, please note that you'll be required to define this filter in an upcoming release.I wonder whether it was already implemented and already have been using territory filter or if it is not implemented, have you got any plan to implement? We’re specifically interested in the Flutter SDK.Thanks in advance for your time.
is it possible to implement a parental gate while using revenuecat paywalls?An example of a parental gate would be after a user clicks ‘purchase’ or ‘start trial’, a simple question is asked to verify the user is of age like “enter your birth year”If the user is verified, the Apple purchase opportunity modal is presented, and if not, the paywall will close.I can’t find a way where the verification question is asked after a user clicks purchase in a paywall. Parental gate functionality is required for every app that aims to participate in the ‘Made For Kids’ category.
Hello, I have 2 questions. 1.In my app I am starting out with only a tip jar(going to add a pro subscription later) In the docs it is not clear how to get products without offerings(or entitlements).Under the tab `Displaying Products` it is only explained how to show products with offerings. But, as of know, I don't have offerings configured as I don't have a paywall (yet). 2.I dont really understand the difference between entitlements and offerings and what they are exactly. Can someone maybe explain it to me(the docs are for those 2 topics a bit confusing to me) Any help here would be appreciated.
I am getting product details from Google play store, but purchase action fails on "None of the products registered in the RevenueCat dashboard could be fetched from the Play Store”Product returned:{"productId":"getbill_299_1m_1m0","type":"subs","title":"Monthly subscription 1m free (App name)","name":"Monthly subscription 1m free","localizedIn":["en-GB"],"skuDetailsToken":"<token>","subscriptionOfferDetails":[{"offerIdToken":"<token>","basePlanId":"basic-1month","offerId":"free-1m","pricingPhases":[{"priceAmountMicros":0,"priceCurrencyCode":"EUR","formattedPrice":"Free","billingPeriod":"P1M","recurrenceMode":2,"billingCycleCount":1},{"priceAmountMicros":3590000,"priceCurrencyCode":"EUR","formattedPrice":"€3.59","billingPeriod":"P1M","recurrenceMode":1}],"offerTags":["basic-1month"]},{"offerIdToken":"<token>","basePlanId":"basic-1month","pricingPhases":[{"priceAmountMicros":3590000,"priceCurrencyCode":"EUR","formattedPrice":"€3.59","billingPeriod":"P1M","recurrenceMode
I have the following use case: A user can choose between using the app without an account or with an account, after which the data is synced to the cloud. In both cases, the user can purchase the Pro version. I display different paywalls depending on whether the user is logged in or not. This is managed through custom attributes and paywall targeting:Without an account → Show paywall without the sync option. With an account → Show paywall with the sync option.Problem: When a user starts without an account but then creates one, the app still displays the paywall meant for users without accounts even though the custom attribute is updated. The updated paywall is only shown after a restart. Is there a way to reinitialize the paywall or clear the cache without restarting the app?I don’t want to hard code the offering for the paywall in the code because I want to stay flexible and run experiments.
Hi there, I have my Flutter App on Production with a subscription of 1 Month.I bught the subscription on a real device on production, and after 5 minutes I cancelled it. Looks like in RevenueCat it is still showing that thee Subscription is still active, why?Also, on my Flutter code I’ve implemented to show a different UI if isPremium, but doesn’t have recurring true. Not sure why is not working, and RevenueCat Dashboard doesn’t get updated…
Hi All,hoping for some help as I’m stuck. We’ve built an app in Flutter using Revenue Cat paywall. Products and subscriptions enables in App store and listed as ready for review.when I submit I get this error. I am only using a revenue cat paywall. App is only available in IOS App Store and Playstore no other option to purchase. no idea how to resolve or where to start.Guideline 3.1.1 - Business - Payments - In-App Purchase 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 subscription can be purchased in the app using payment mechanisms other than in-app purchase. Next Steps The paid digital content, services, or subscriptions included in or accessed by your app must be available for purchase in the app using only in-app purchase. Apps that offer paid digital services and content across multiple platforms may allow customers to access the c
I am trying to publish my react native app on the Play Store but have been rejected multiple times with error Error 23: There is an issue with your configuration when the testers try to open my paywall.I have published in Closed Testing (where it works with no issue, as well as in Dev) and promoted the build to Prod for review, where it gets rejected. I’ve triple-checked that my configuration works and that the app and subscriptions are available in every country.Can anyone advise on how to solve this? I’m pulling my hair out trying to get this approved - even a temporary workaround would be helpful just to get the thing published in some form or another.
I’m planning on doing a soft launch of our web app that includes subscriptions with the Revenuecat web SDK. Are subscriptions from the web SDK treated the same way as iOS and android platforms? Meaning we can see them segmented in the charts?During the soft launch I just want to monitor any purchases coming in w/ web.
Say I have subscription plans A and B (same level).From entitlement.productIdentifier I detect that a user is, say, subscribed to A. With this information, I keep option B available for a crossgrade, and A disabled and marked as active.When they opt to subscribe to B, A is still active (because it will remain so until the renewal date). The purchase succeeds but do I have the information to communicate the current scenario? I would like to disable B as well, because it is already purchased, and mark it somehow as active starting on certain date. Apparently I don’t have the information to figure out this scenario in PurchaserInfo, do I?
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.