Discussion and help from anything related to RevenueCat.
Recently active
Hello! First off, we were very excited to see the new “transfer” button in the RevenueCat customer view. This allows us to reverse unwanted subscription transfers for accounts.I recently used this button to help an account regain access after an unwanted transfer. I noticed that calling the RevenueCat API after doing this showed that both the “transferred from” account and “transferred to” account returned no entitlements. However, within the RevenueCat UI, everything looked correct.After a few minutes, the API call now shows the proper entitlement access for each account. Is this because the account logged in to their device and the receipt re-synced with RevenueCat?Is there any way to make it so that the RevenueCat API returns the correct entitlements after using the RevenueCat UI to perform a transfer? This would really help us. Thank you!
Hi guys,we are building our app in Flutterflow.i have created 3 different subscriptions in Google Play (and AppstoreConnect), let´s call them “Bronze”, “Silver” and “Gold”.Each subscription gives you access to more movies you can watch each month.Now when a (bronze) user reaches his limit for movies in this month and he wants to upgrade to a higher subscripion (e.g. silver), we have multiple subscriptions running.As i have read in AppStore we can work with subscription groups what means that when the user chooses another subscription, he automatically cancels the current one.Unfortunately this doesn´t work for us in PlayStore and so we have two subscriptions running at the same time.Do you have any solution for this problem?
After i do purchasing using function : final result = await Purchases.purchaseProduct( "skuID", type: PurchaseType.inapp,);after successing do payment, revenueCat will trigger webhook and retrieve data just like : https://www.revenuecat.com/docs/webhooks#events-format what if i want to adding new key-value such as meta-data into webhook responsejust like : {key1: value1. . .meta-data: { recipe_id: id_recipe_1 }}do you have any idea with this case team?
Hi Everyone!I am new to RevenueCat, but I´m struggling with an issue for 3 weeks now. I am trying to create a subscription model for my app and it seems to work fine when I do the purchase, but when I try to restore said purchase the subscription is not found (“free version found” gets printed from the code below). I did try this with a physical device and using various sandbox testers. I also contacted support about two weeks ago, but their answers were not helpful so far (remove and add again the storekit config file, create new sandbox tester, make sure all ID-s are an exact match between XCode and RevenueCat...). When I make a test purchase it does appear in the Overview as New Customer, it has an expiration date date as well (for a monthly purchase I see one month instead of the test setup of 5 minutes), but I do not see an Active Subscription appearing. This is the code I use to manage the purchase: And this is what I used for restoring the purchase:
Hey guys,I would like some help.I implemented RevCat in my project, I did all the necessary steps, I used the StoreKit Configuration File. In addition, I created another scheme and linked this StoreKit Configuration File.Tests worked perfectly.Modifying to the scheme that does not have the storekit configuration file, it does not find the plans when trying to contract.Now comes my question, I would like to test with an APPLE ID account, I am using an iPhone 7 physical device that does not show the Sandbox Tester anywhere, and I already have 3 accounts registered in the apple store connect.I wanted to understand what process to test the purchase without using the store kit configuration file, to simulate a monthly subscription.Thanks
XCode: Version 13.0 (13A233)macOS Deployment Target: 11.0Install via Swift Package ManagerWhen I compile it prompts: No such module 'Purchases'
Hi.Why is the number of “Active Subscriptions" on the "Overview" page different from the number of "Active Subscriptions" on the "Customers" page? I checked, no customer has more than one subscription. How can this be possible?
Hi everyone,I just released a new version of my app on the App Store. When users who are already subscribed download and update to the new version, they’re getting my “Subscribe Now” paywall.If they tap “Restore Purchases”, then it correctly restores the purchase and shows that they are now subscribed. My app doesn’t have user authentication, so I’m relying on RevenueCat to generate a random App User ID. This is how I’m instantiating the RevenueCat SDK:Swift: // *** Configure RevenueCat in-app purchases *** //Purchases.logLevel = .debugPurchases.configure(withAPIKey: API_KEY_HERE, appUserID: nil, observerMode: false, userDefaults: UserDefaults(suiteName: "NAME HERE"))Purchases.shared.delegate = selfI’m guessing what’s happening is when a user updates the app and opens it, the app instantiates the RevenueCat SDK and generates a new anonymous ID, which isn’t aliased back to the original subscription unless they tap “Restore Purchase” first. My question is--- is there any way to do this
I dropped a full day on the “could not get offerings” issue that a lot of other people have experienced. The main cause of this was misleading/lacking documentation in the IOS Product Setup guide here.At the top of the document, it says: Make sure Paid Applications Agreement is signedBefore you set up your products, make sure you have the latest Paid Applications Agreement signed in in the "Agreements, Tax, and Banking" module in App Store Connect. You will not be able to test in-app purchases until the latest version of this agreement is signed with Apple. This is partially correct, which, in many people’s cases, means that it’s incorrect. You must also 1) fill out all the tax documentation, and 2) submit a bank account and have it approved. This was not clear to me, so I spent forever tracking down the error.Later in the guide it says: If you don't see the Subscriptions option, ensure your developer account has accepted all applicable contracts and have provided tax and banking info
Hello, i searched for a similiar bug, but did not encounter anyone else posting. Here’s what happened, my offer code redemption sheet was working as expected for months, but recently, it stopped showing the price. I don’t know if it helps, but my currency is configured in Brazilian reais ( R$ ). The offer code is recognized but the text says: ( translated )“1 year per offerPrice, then R$ 239,90/year. ”offerPrice is in bold because it was supposed to be the final price the user would pay
I have an existing RevenueCat implementation in SwiftUI using the Purchases SDK 3.14.1 in production.I am currently in the process of upgrading to the latest RevenueCat SDK 4.17.8 and am therefore reconsidering my design choices and looking for best practices / guidance on how to implement an ObservableObject for SwiftUI with Swift concurrency (async/await) using the latest RevenueCat SDK.I have a single entitlement (“premium”) in my app for which I want to broadcast its subscription status through a @Published boolean variable in the ObservableObject, similar to the ‘MagicWeatherSwiftUI’ example provided by RevenueCat:@MainActorclass PurchasesManager: NSObject, ObservableObject { static let shared = PurchasesManager() @Published var customerInfo: CustomerInfo? { didSet { subscriptionActive = customerInfo?.entitlements[Constants.RevenueCat.premiumEntitlement]?.isActive == true } } @Published var subscriptionActive = false private override init()
This seems to be a common ask for help, but Purchases.getOfferings() is not working for me with the error `None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect`. It’s a situation like this other thread (among others), but I think I’ve double-checked all the things to watch out for.Specifically, I had RevenueCat working with my app, which right now is in beta so at most some folks are testing it via Testflight - RevenueCat could retrieve the products then. I then decided to create a dev version of my app using a different bundle ID so that I could simultaneously have the Testflight version and the Expo development build on my phone.Now, Purchases.getOfferings() is working fine on the Testflight version (which has my original bundle ID) but not on my development version (with the new bundle ID). Things I’ve checked:The development build of my app has the new bundle ID I have created a new app in App Store Connect using that new bundle ID I h
Hi,I’ve had two crashes from removedTransactions. Any thoughts on what it might be?thanks16.3.1 (20D67)iPhone 11
I just wanted to report an incorrect code snippet in the iOS subscription offers documentation. I spent several hours trying to debug why it wasn’t working for me in React Native, so it would be helpful if this could be fixed so it can benefit others in the future. Here is the documentation page in question The error is only present in the React Native code snippet provided:This function is undefined because it does not exist in any version of react-native-purchases. I uncovered this issue when I checked the other tabs of the code-snippet and searched inside the /src/purchases.ts file of the react-native-purchases package, and found that there is no method called “getPaymentDiscount”. This line is supposed to be:const paymentDiscount = await Purchases.getPromotionalOffer(product, product.discounts[0]);Note: getPaymentDiscount is replaced by getPromotionalOffer. I have tested this code and after providing the product and discount from the package, I was successfully able to call:Purchas
I want to make a subscription similar to this example:I want a person to subscribe to a purchase of 10 monthly apples, but if he eats all 10, the first day the user can pay for a subscription of 20 monthly apples.Do I have to cancel the old subscription and create a new one?In the example above, as I tell the stores and RevenueCat, that the 30-day subscription is no longer valid because its apples have already been consumed and that a new subscription of 20 additional monthly apples will have to be created.
I am trying to implement a monthly subscription as part of an in-app purchase. I am using a combination of xcode/swift and RevenueCat to implement this feature. In implementing the code that runs when the user clicks the purchase button i get the error saying "Fatal error: NSArray element failed to match the Swift Array Element typeExpected Package but found RCPackage". Where the code for the purchase button click is highlighted. Code is "guard let package = offerings.all.first?.value.availablePackages.first ".I am not sure what to do to fix this issue.
My team is currently looking into porting our Android and iOS app to a Windows standalone version (eg. for Steam), and I was wondering what the options are for communication between mobile and standalone. For example, a user would download our app on Android and start a subscription. Later, the user would download our port for Windows (logging back into his original account) and now wants to continue accessing his subscription features.
Hello everyone!I’m facing an issue that everyone has faced, I can’t fetch any of products(subscription) that is registered on app store connect and even in revenue cat. I had checked all my code, no errors, I even read this article but anything has solved my issue.I’m using React native to code the app, and I don’t know if Purchases.configure is working correctly.I want to know where can I read logs to debug, I set this method : “setLogLevel(Purchases.LOG_LEVEL.DEBUG)” because another method(“setLogenabled” something like this) was deprecated but I don’t know where do I could check for every logs with revenuecat and debug the code.Kinds regards.
Hey friends! I have recently released an app on open testing (beta). When my users purchase a subscription, the google play initiates the purchase, the payment gets processed and the money gets deducted. After successful payment, it gets redirected to the app and the subscription is not seen active on the app. When i try to pay again for the subscription the playstore says you already have an active subscription. The transaction is shown on the play console dashboard also. But there is no update in the revenue cat. The customers list remains zero on my revenue cart dashboard. What should I do now?
After receiving an email from Apple about their new ‘Base price’ functionality for In App products I have adopted prices accordingly and set the base prices. However...Now ‘getOfferingsWithCompletion’ no longer delivers those products to my app in Sandbox mode, but it (still) does in Production mode at the moment. I have not changed any IDs, all contracts are signed, I checked that everything is fine, but still no luck.All I have changed in App Store Connect is: enabled Base Price functionality for the products, adopted prices accordingly. Absolutely no other changes, neither in my code, nor on App Store Connect.Anybody else seeing this? Any help is much appreciated.Console output:2023-03-10 14:02:20.935490+0100 my3E[16682:3200389] [Purchases] - DEBUG: ℹ️ No existing products cached, starting store products request for: ["my3e_tip_2", "my3e_hide_nag", "my3e_01months_ar_nfs", "my3e_12months_ar", "my3e_tip_1", "my3e_12months_ar_nfs", "my3e_tip_4", "my3e_tip_3", "my3e_01week_ar_nfs", "my3
Apple limits the data they share with their offer codes, so the customers appear with $0 revenue in RevenueCat.How are people working around this? Wondering if we should set up a webhook for the data, or just rely on Apple’s reports, or something else?
I want to have a system like netflix where I ask users to log in with email and using my custom auth backend, store the user info. So user logs in on iOS device and purchases the subscriptions, and now can login to android device and get access to pro features (or vice versa). Achieving this so far is not the problem. The problem comes with the discrepancy where the source of truth of purchases is linked to the android or iOS account and not my app’s login.So imagine, customer A logins in android device with email - abc@email.com, and is also logged in his android id with the same email id, which is fine. But now if he logs out of my app and then log back in with another email id, say xyz@email.com, technically he should not have pro subscription. and since RC also stores both these users as separate account, the data I get from RC treats the user with xyz@email.com as a non-pro user.But now if the xyz@email.com tries to purchase the subscription, he will get an error saying - You’re a
Hi, I’m getting an error when trying to retrieve offerings from my StoreKit config file when running my unit tests. Current Setup: Tests scheme with a Unit test host app as the executable. RevenueCat Error: [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-emptyUnderlying Storekit Error:[Default] [StoreKit] Failed to get products through appstored in simulator, will try using appstoreagent on host mac: Error Domain=ASDErrorDomain Code=950 "Unhandled exception" UserInfo={NSLocalizedDescription=Unhandled exception, NSLocalizedFailureReason=An unknown error occurred}Please can someone advise what might be going wrong here? Thanks!
If yes do I need to configure it somewhere in Play Store Console ?
Hello! I have published my subscriptions in Google Play store recently.During the testing - the subscriptions appear correctly in RevenueCat sandbox. The subscription also appears in RevenueCat when I use release version of the application that’s downloaded from the Play Store with my test account.On the 31th of Oct there was a first subscription purchase by a real user and the purchase appears in Google Play. But there is no sign of this purchase in RevenueCat and also no sign of this purchase in my analytics where I log the purchase when it is received from RevenueCat callback in Android. I’m afraid that the user has paid for the subscription and didn’t receive its value due to RevenueCat not receiving the info about the purchase.I’d value some suggestions for investigating the issue and understanding what exactly is happening. Thanks in advance.
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.