Get help with your SDK implementation.
Recently active
Hi there,→ I am purchase subscription with app userId 1 and using sandbox id 1→ Now I am log out from the app and login with app userId 2 and using sandbox id 2 with same deviceIn time of second user purchase I am getting [Error: There is already another active subscriber using the same receipt.]. I understood that If I try with same sandbox id then it happens but with different sandbox ids don’t why it’s happen.
I have followed this guide:https://www.revenuecat.com/docs/apple-server-notificationsto try and setup the store server notifications, but whenever navigating to App Information > App Store Server Notifications, I do not see this - “App Store Server Notifications” per instruction steps 3 and 4. Am I missing something? I do not see anywhere I could enter the URL.
Hello, I wanted to change the paywall display settings from the Paywall editor I wanted to include introductory offer values as well as variable preview values I had previously selected. When I select and save the second box (for introductory offer values ), it shows up on the preview but when refresh the page, the selection is gone and not reflected in the simulator. This behavior is same for both Chrome and Safari.
Love the new paywalls and here are some suggestions for improvements. This is paywall “Bengal” on an iPhone 15 Pro using UIKit.Please hide status bar. Big gap between header image and title. Footer font too big. Can you just say “Terms”, “Privacy”, and optional “Restore”? Please hide thumb bar.HTH
Hi,I have set up my app, with an auto-renewing subscription in a closed test track on Play Store with myself as License tester, and then downloaded the app on my test device. All subscriptions features seems to work fine, I can subscribe, cancel a subscription, restore a subscription and all actions are reflected in RC backend in the sandbox overview. But I am curious about the options one finds in Google Play Store>Configuration>License test page. I choose the ERROR_CONTACTING_SERVER as response and saved, my expectation was to get an error in the app when buying a new subscription. But no the purchase of a new subscription went well. So my question is how are these response options on the License test page linked to the RC SDK? Regards Tomas
Does anyone know if it's possible to get a shadow on the paywall footer like in their web editor? I am not sure if I am missing something? Looking through the paywall source code, it does not look like a shadow is applied anywhere?
What happens to the active subscriber’s entitlement when i remove the product from sale on my appstore connect. ? Scenario : A yearly subscriber having 10months left and i remove the yearly product from sale on appstore connect.
We are trying to show an alert if the user is not eligible for the trial/offer on our paywall. It’s very important we test that for new users this alert does not show, because otherwise we’re going to start blocking valid payments. We tried testing this on Testflight using a sandbox account. Our sandbox user presses Reset Eligibility to clear out any old uses of the trials/offers.When we carry out this test, the status comes back “Unknown”. Is this common when using a sandbox tester? Are there any obvious reasons this could be? Is there a way of testing the new user path (i.e. one that has just signed up and has not taken out any trials) without having to repeatedly create new users or something? We’re using react-native-purchases: 4.5.2
Right now I have a webhook setup to know if a user is going through a downgrade in the near future. But currently revenuecat does not send the PRODUCT_CHANGE notification when the user changes their product instead sends it when the actual downgrade happens and the user is charged but it’s not supposed to be this way according to documentation, where it says the PRODUCT_CHANGE notification will come through whenever the user requests for a change and a INITIAL_PURCHASE event will come through when the actual change takes place
Hi! We are migrating a legacy paid RN app to be subscription-based and need a way to “grandfather” in existing users (who bought the app before adding subscriptions/RevenueCat).These are anonymous users (no login) so can’t link legacy identifiers.RevenueCat provides this (Objective-C based) tutorial - https://www.revenuecat.com/blog/converting-a-paid-ios-app-to-subscriptions but does anyone know of React Native-based example (that will work on both iOS and Android)? Thanks in advance!
We would like to use the new Flutter Paywall in the Form of a footer in our app. Additionally we would like to customize the Paywall’s font and border of the CTA button. When can we expect that to be added? Best regards ✌️
Hello, I’m trying to get App Store Promotions for In-App Purchases working through RevenueCat. I feel like I must be missing a permission or some important setup call somewhere, because I just can’t seem to get the delegate purchases method containing readyForPromotedProduct to ever be called when opening an App Store Promotions link (e.g. itms-services://?action=purchaseIntent&bundleId=<BUNDLE_ID_HERE>&productIdentifier=<PRODUCT_ID_HERE>). I’ve confirmed that the normal purchases method (func purchases(_ purchases: Purchases, receivedUpdated customerInfo: CustomerInfo)) gets called every start, but not the one I want. I’ve tried all the following sources:RevenueCat documentation for readyForPromotedProduct Two different RevenueCat examples (MockPurchasesDelegate.swift, PurchasesDelegateHandler.swift) The following community threads: Here is my Swift code: final class PurchasesDelegateHandler: NSObject, Sendable { static let shared = PurchasesDelegateHandler()} e
If I use the Sphynx template on an iPhone (14) and want to display a close button I’m getting a really nasty layout.The close button is displayed in a black bar at the top. I feel I need a close button as there is no way to get past the paywall on the iPhone without it. By comparison, the iPad allows you to dismiss the paywall by tapping the modal background.The black bar overlays my content and does not allow scrolling to view the copy underneath. If the black bar could be transparent, that would be a start - is that possible?.The ‘restore purchases’ also takes up a lot of vertical space, which is impacting on how much of the actual unlock marketing copy can be seen.I’m displaying the paywall manually from UIKit code, here’s my code: // Need a close button on iPhone screens otherwise there is no way to get past the paywall without subscribing var withCloseButton = false if (traitCollection.verticalSizeClass == .compact) { withCloseButton
I am having trouble getting RevenueCat to work properly in my project when building for visionOS, integrating via CocoaPods. The problem seems to come from lines like this:#if os(iOS) || targetEnvironment(macCatalyst) || VISION_OSwhere VISION_OS is not defined, even when building for visionOS, causing the code to take the wrong path.How is this supposed to work? I can’t quite figure out where VISION_OS is supposed to be defined. Is there a reason this isn’t just using #if os(visionOS)? Any help or workaround you could provide would be much appreciated!Using Xcode 15.1 beta 2.
I am implementing Paywalls on kotlin for my Android app, however whenever the user swipes back or presses the back button, the paywall simply goes away and a white screen shows up. For context, I am implementing a hard paywall (without a back button, or option to say no). I wonder how I can override this behavior. I am using version 7.4.0.
We are using RevenueCat to manage subscriptions for an app we service. However, we had an issue with the subscribed customer's information not being updated.In fact, on the Apple subscription status screen, the trial is active (the user canceled the renewal) and the expiration date is showing, but in RevenueCat, this status is not updated.What do we need to check?Additionally, if the subscription is made outside of the app, would the status not be updated?
Running a Development Build as well as a TestFlight build both return UNKNOWN STATUS for the iOS method `checkTrialOrIntroductoryPriceEligibility`. I have read other posts that state Sandbox users won’t have a receipt on file to validate, but won’t brand new users NOT have a receipt on file to validate as well? Shouldn’t this scenario make them eligible? Also why would a TestFlight build be returning Unknown Status? I am hesitant to use this method if I can’t even get it to return anything but Unknown. "react-native-purchases": "^6.1.0"
I have used the latest version of purchase_flutter (3.9.3) but when I want to use Amazon, the parameter useamazon isn't recognized by Android studio. Any idea how to get it work?
Hello,I have a single activity Andriod app trying to implement Revenue Cat.I experience app crashes when an configuration change, i.e. screen rotation, occur during the call to Purchases.sharedInstance.restorePurchasesWith…. The method is called from a Fragment and work as intended unless an configuration change occur before Purchases.sharedInstance.restorePurchasesWith… returns the call.Do anyone have any suggestions how to handle configuration changes, should I move calls to the Revenenue Cat SDK to a viewmodel? Best Regards, Tomas
Hello,I’ve a Flutter app available on several platforms, iOS/iPadOS/macOS and Android/AndroidTV.Everything works well but I’m facing an issue on Amazon Firestick. I know revenuecat supports Amazon Store IAP but I can’t publish my app on this store and users install it via apk direct link.So on this platform I disable IAP and just want to login user and check CustomerInfo to see if there is any subscription purchased on another platform.I don’t know how to implement this, if I call the configure(configuration) method which Api Key should I use ? Can I use the android api key even if app is running of Amazon FireOS ?I tried to just login user because the dart documentation says :This function will logIn the current user with an appUserID.Typically this would be used after logging in a user to identify them withoutcalling configure But when I call Purchases.login(userId) :kotlin.UninitializedPropertyAccessException: There is no singleton instance. Make sure you configure Purchases before
In the doc “Using RevenueCat with SwiftUI”, https://www.revenuecat.com/docs/swiftui-helpers, they use “import Purchases” all other places in the support documentation “import RevenueCat” is used. Should I shift to “import Purchases”?
I have a problem in handling slow test card , approves after some time in android sandbox testing . if somebody know how to handle this in React native then please help
purchaseProduct is now deprecated. Please don’t remove it.The first reason is that it is the most simple solution to buy a product. You just need one line of code and the identifier string (no object like the other solutions). It could also be the first starting point for beginners, so they don’t have to learn stuff they don’t need. E. g.:Learn purchaseProduct Do you have often changing products or need more data about a product? Now learn getProducts + purchaseStoreProduct You need to switch between product bundles (e. g. A/B Tests)? Use getOfferings+purchasePackage You need even more? Paywalls…The second reason is that any other solution then purchaseProduct requires always to connect to RevenueCat to fetch the products/packages/offerings etc. This is bad for GDPR, because it's most of the time not requested by the user (tracking)
ERROR: 🍎‼️ Error fetching offerings - The operation couldn’t be completed. (RevenueCat.OfferingsManager.Error error 1.)I have this issue and try to recreate RevenueCat project and AppStore Store Kit to solve this issue.I am using Flutterflow for iOS app.I have checked all steps to use in-app purchase(lifetime). Please help me
Hello, I’m using RevenueCat in my Flutter-based application. In my app, there is an authentication (login/register) system. To reference the user, I call Purchases.login('backend_app_user_id') whenever a user logs in or registers, so it updates the user ID.I’m also using Purchases.addCustomerInfoUpdateListener to listen to changes in CustomerInfo. I call this function once at the launch of the application, and later it automatically recalls itself whenever some changes happen in the CustomerInfo. That’s how it is supposed to work, right?However, the problem is that whenever I call the Purchases.login method, which basically updates the user ID and CustomerInfo object, Purchases.addCustomerInfoUpdateListener doesn’t respond to this change. It doesn’t fire the addCustomerInfoUpdateListener whenever I call the login method.
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.