Discussion and help from anything related to RevenueCat.
Recently active
I've been working on adding Stripe Checkout to my existing app (both Android and iOS) for web checkout. Now I need to add a 'Manage Subscription' button within the app for users to easily navigate to where they can manage their subscription.I tested subscribing a user with Stripe but the managementUrl returns null. Is this the expected behavior?If so, it would be nice to make that clear in the documentation.I have a function which I call to create a Customer Portal Session for the purpose of redirecting users to manage their subscription. I'd be curious to know what is the type of link returned if there is one for the Stripe case because I thought we should be generating a Portal Session through our own backend.
How would one go about structuring entitlements in a scenario where a “Premium subscription” will grant access to 10 cake recipes per week. However, if you’d like to get more cake recipes after hitting the limit, you’ll need to make a one-time payment.
Hello, I’m struggling with the RevenueCat update from 5.x to 6.4.0 on Android. I have currently a method to load the weekly subscription, however product doesn’t have subscriptionPeriod any longer. fun loadWeeklyProduct(onPackageLoaded: (Package?) -> Unit) { Purchases.sharedInstance.getOfferingsWith( { error -> // An error occurred }) { offerings -> val annualProduct = offerings.current?.availablePackages?.firstOrNull { item -> item.product.subscriptionPeriod == "P1W" } onPackageLoaded(annualProduct) }}And with this other method I would check if they still are eligible for Trial. Sadly product also no longer has any freeTrialPeriod. private fun fillTrialOrNormal(it: Package) { val hasFreeTrial = !it.product.freeTrialPeriod.isNullOrEmpty() Utilities().checkTrialUsedUp(it.product.sku, hasFreeTrial) { trialUsedUp -> var title = "" var header = "" if (trialUsedUp) { title = "
It’s pretty clear in the docs that iOS offer codes don’t function very well. I think I can handle the scenario manually in a pretty simple way. I’m thinking I’ll have a “redeem” screen in my app where a user can input a code, and that code & the app user id will get fired off in a request to a cloud function that will validate that all is correct, and then utilize the “Grant Promotional Entitlement” feature through the RevenueCat v1 API. Pros to this approach:• Allows me to have more custom scenarios (I would like to sell bulk licenses to businesses outside of app stores and their employees could redeem this way through the app, flexible free trials like 6 months free, awarding free product to influencers, etc.)• Seems like it would work a lot more reliably than the native sheet. Cons:• Reporting is a little funky since I would have a lot of folks with the ‘rc_promo’ active sku’s, so I may have to keep track of the redeemed codes in a different way as well. (Mostly) indie dev here
Hey,I see that Purchases.purchaseProduct(); is Deprecated and it suggests to use purchaseStoreProduct instead. but purchaseStoreProduct doesn’t accept string like purchaseProduct so what should be instead if I want to purchase a IAP consumable/non-consumable product and not subscription.
I was looking at the transaction overview dashboard in RevenueCat today and it listed a subscription purchase transaction at $69.99 USD, although, in Google Play Console that product sku is marked as being $24.99 USD (customer ID c89e4788/1a4ba4e5-37b3-4f44-bc27-3eed343e5c2f, transaction ID: GPA.3350-3906-4874-72666, product ID: bloomer2_25_mo:p1m). Could there be something wrong with my RevenueCat setup that is affecting the amount being reported?I’m not sure where in the Google Play Console I can view individual subscription transactions, so I haven’t been able to verify it there. But, if the subscription tier is set to $24.99, is there any reason the user would be charged a different amount?
Hey guys,trying to integrate RevenueCat in app purchases(not subscriptions!) and this syntex doesn’t seem to work. it doesn’t even recognize purchaser Info. any help?
Have a flutter app leveraging purchases_flutter-4.10.0 but am getting this error as I attempt to load the .bundle for testing into the Google Play Console: ErrorWe've detected that one or more of the app bundles included in this release are using the following Play Billing Library versions4.1.0These are unsupported versions of Google Play Billing. Upgrade to a supported version to publish this app.Thoughts on how to overcome this error message? Is there an version of the SDK that uses a more current Play Billing Library?
I’ve got RevenueCat and SuperWall integrated into an older app and I can’t seem to get any of the method callbacks to work without setting observerMode to true on RevenueCat. I’m not handling my own purchases and I want RC to do it for me, so I don’t think that is the right setting… but ti does seem to work and unlock the app in sandbox mode when I do it that way. My SuperWall has a paywallDelegate configured for it where we hand the purchases over to RevenueCat. In that delegate I call the following method on Purchases.shared:func purchase(product: StoreProduct, completion: @escaping PurchaseCompletedBlock)For some reason when observerMode is false the PurchaseCompletionBlock just never get’s called. Not even with an error or nil value… When I turn observerMode to true everything works as expected but I’m confused why that should be. Am I reading the documentation wrong? Is there something going on with my SuperWall configuration where it’s somehow making the purchase?I’ve used the sa
Hello,I’m trying to get a breakdown on Last Seen Platform Version for customers so that we can make a well informed call on supporting older platform versions.This data is visible on customer details UI but it’s not in the CSV file when I export. I also could not find an API to retrieve it using the API.Is there a way to get this data?Cheers,Goksel
Hi all, reposting here because, I got no reply in Dashboard & Tools. This is the error I am getting: W/[Purchases] - WARN(24005): There is a problem with your configuration in Play Store Developer Console. More info here: https://errors.rev.cat/configuring-products I am following the guide here: Why are offerings or products empty? Have not had the app published yet. But the interesting thing is in RevenueCat Dashboard, I can IMPORT my iNAPP products. RevenueCat can identify a new product created in my Play console, import it without any issues but can’t fetch ProductDetails! Is this normal? Again, have not published my app in Closed testing yet, waiting for review to finish. But since I’m a license tester on a physical phone, and RevenueCat can fetch the products themselves from the Dashboard, maybe there is something else I am missing?
Hello,So I am trying to get my app approved on App Store. Basically I have a subscription group which contains a single product that is payed monthly. But I also add an offer of free first month for new users for that product. I did all configurations as tutorials show and I am able to test the subscription, the restore purchases and those things.But then Apple rejected my app saying that I am trying to make a full payment attempt when I should offer the first month for free. I don’t know how this is being handled by revenue cat, am I missing something? I just configured the product on revenue cat but I didn’t configured any “first month offer” inside revenue cat, just on Apple side for that product.We found that your in-app purchase products exhibited one or more bugs which create a poor user experience.Specifically, while your subscription offer promises the first month for free, the purchase page does not respect this offer and attempts to complete the full payment at that instant.P
As Xcode 15/iOS 17 deployment is nearing, I have began looking at the new PrivacyInfo.xcprivacy / Privacy manifest stuff that will be mandated next year.Having seen the latest commits in GitHub, I realise that NSPrivacyCollectedDataTypeLinked of PrivacyInfo.xcprivacy for NSPrivacyCollectedDataTypePurchaseHistory is set to true. (https://github.com/RevenueCat/purchases-ios/blob/7087218ed675e828fd1f97b5c25d4e1ef1609392/Sources/PrivacyInfo.xcprivacy#L21-L22)However, if we look at https://www.revenuecat.com/docs/apple-app-privacy#2-purchase-history-linked-to-identity, the previous advice on this topic, when we need to fill the privacy labels for the App Store, Purchase History Linked to Identity does not apply to those using anonymous user ids only. In that case, provided that if a developer only made use of the anonymous user ids, wouldn’t the Privacy Manifest be somewhat inaccurate? (though, I have no idea on how one could avoid this, either.)
I am currently implementing my subscriptions for android and ios using cordova-plugin-purchases (4.2.3).I want to use subscriptions which are non renewing.F.e. user buys “premium access” for 1 year. After 1 year the subscription expires (and does not renew) and the entitlement should be removed.So far so good. In Google Play I can configure this. I link the product in revenuecat, I buy it, I get the entitlement, after the period the entitlement is removed. Fine!I assumed I can do the same in Apples Appstoreconnect. There is the option to create a subscription without auto renew. So I created one, I link it in revenuecat. I create an offer. It is visible in my offers on my iphone.But two things happening:I cannot set a duration for the subscription in App Store Connect (seems pretty odd to me for a subscription product. Isn´t it then just a consumable / one time purchase?) I get an error from RC cordova SDK: “DEBUG: Couldn’t decode ‘PeriodType’ from json. Error: Found unexpected value
Our app has been rejected by Apple because the payment process is very slow. Payment sheet takes about 5 seconds to load and then an additional 4 to 5 seconds to complete payment. We are using sandbox for testing and the package version purchases_flutter: ^4.11.2We simply use the following line to purchase a product. await Purchases.purchaseProduct(‘productid’)The configuration is all correct and payment goes through. It’s just sooo slow.I would expect the payment sheet to show up pretty quickly. IAP products have been defined in the App Store as consumable products and in revenuecat as well.Are we missing something? Is this a known issue with this package?Thank you
I have updated product description on Google play console. But in my code I still get StoreProduct object with old description. What should be done to get updated description? I am using vs code, windows, flutter.
This may be more of a support question, but for some reason I am no longer fetching the title for one of the two subscriptions available in my Flutter app, and only on iOS - Android works fine.I have two subscriptions available for a game - one that allows unlimited play time (energy), and a second that allows unlimited chips (which are used for hints and other things that are not necessary for play). The subscription for Chips retrieves all information correctly, but the info for Energy is missing the title. Immediately after getOfferings:final offerings = await Purchases.getOfferings();return offerings.all;The offerings.all has the following (from the VSCode watch window) running on an iOS Sim:As I understand it, the product titles are taken from the App Store settings for the subscription item, specifically, the “Reference Name” (which is the only place where the “Unlimited Chips - monthly” string is set, and is set similarly for Energy. In fact, it isn’t possible to have a subscr
Hi RevCat Team, I have added some new subscription in Apple connect and added them in RevCat, But sometime I can’t fetch the new subscription when I invoke @objc(getProductsWithIdentifiers:completion:) in your SDK, I have tried to add product ids for new subscription and one old subscription, API is return old subscription successful, It’s don’t return the new subscription, Please help check it.Thanks.This is the log: 2023-09-21 13:25:25.032107+0800 Hobnob-Staging[4554:789536] [offering] DEBUG: ℹ️ Skipping products request for these products because they were already cached: ["staging_sub_premium_2_yearly"]2023-09-21 13:25:25.032209+0800 Hobnob-Staging[4554:789536] [store_kit] DEBUG: ℹ️ No existing products cached, starting store products request for: ["staging_sub_invitation_maker_monthly", "staging_sub_party_host_annual", "staging_sub_party_host_monthly", "staging_sub_invitation_maker_annual"]2023-09-21 13:25:25.138735+0800 Hobnob-Staging[4554:789811] [store_kit] DEBUG: 😻 Sto
Hi, by configurating revenuecat I need to trigger following code: configuration = PurchasesConfiguration(googleApiKey) ..appUserID = userId ..observerMode = false; I have no experience and no idea if this google-api-key is important or should be privacy, should I hardcode this googleApiKey in my flutter app, or I need to get this from google secret manager via cloud function? But if I get this from cloud function, there is no chance for hacker to get this apikey?thanks!
how to show my discount offerings in revenue cat?should I create new products in revenueCat?
Hello, Im am going through the firebase docs for the implementation and I am on the final stage, where I check the entitlements via the firebase claims with the code belowgetAuth().currentUser.getIdTokenResult() .then((idTokenResult) => { // Confirm the user has a premium entitlement. if (!!idTokenResult.claims.activeEntitlements.includes("premium")) { // Show premium UI. showPremiumUI(); } else { // Show regular user UI. showFreeUI(); } }) .catch((error) => { console.log(error); });When I go to check the active entitlements with the code like so console.log(idTokenResult.claims.activeEntitlements) it returns undefined and when I check the returned object of just console.log(idTokenResult.claims) activeEntitlements doesn’t exist. Also I enabled claims in the firebase setupWhat can possibly be the fix for this? Thanks
If you remove an app with an in-app subscription from the App Store, what happens? I assume no new customers can download the app. But can existing downloads still purchase the subscription? Will existing customers be charged for renewals? Does Apple notify the user that the app is no longer available?
Hi,I’m using purchases_flutter(5.4.0). I’ve set up the entitlements, offerings, products as well as packages as guided in https://docs.revenuecat.com/docs/ios-products. I can get the offerrings and display the packages correctly. But when I make a call to `Purchases.purchasePackage()` to purchase a package, the call just hangs and doesn’t return at all. Android works without any problems. I tried it with sandbox and real icloud accounts, the result is still the same..The problem is only on IOS. It has been working flawlessly for about 40 days, with over 300 subscription purchases made, but for the past 3-4 days, I've been encountering this problem. When I check the RevenueCat dashboard, I can see the purchases, but there is no response from the 'purchasePackage' method in the app. I also tried upgrading the Purchases_flutter library to version 5.6.5 with the same result. You can see that the purchase is successfully made in the logs. I have also looked into other topics experiencing th
I’m unable to fetch offerings.The command:Purchases.getOfferings()Returns this 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.I’ve followed the tutorials around, and all was working fine until I’ve upgraded my “react-native-purchases” package to version 5.0.2.I’ve got an app in production with package version 4.5.2, and it works simply fine. The offering shows up, and the purchase gets completed.Although when I run it with the 5.0.2 I’ve got no products.In the upgrade process I’ve changes the authentication process to the new one:Purchases.configure({ apiKey: pubKey, appUserID: null, observerMode: false, useAmazon: false });
Hello Devs, am getting this persistent error “ PlatformException(3, The device or user is not allowed to make the purchase., {code: 3, message: The device or user is not allowed to make the purchase., readableErrorCode: PurchaseNotAllowedError, readable_error_code: PurchaseNotAllowedError, underlyingErrorMessage: Error when fetching products. DebugMessage: Client does not support ProductDetails.. ErrorCode: FEATURE_NOT_SUPPORTED.}, null)” and I have followed the tutorials posted on your youtube channel STEP BY STEP, but am still faced with the same bug on both real devices and emulators alike. please help as this has made me completely dissapointed in Revenue Cat as a company and am seriously considering other options. If the videos on your youtube channel are now obsolete please do well to update them.
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.