Discussion and help from anything related to RevenueCat.
Recently active
Hi! I am wondering how Twitch does a generatic subsciption IAP. Looks like they have only one subscription “1Sub Token”, but when you try to subscribe to individual users, it displays the username next to the checkout flow. E.g., in the screenshot “Subscription - Asmongold”.
I successfully tested subscriptions using my own account on both Android and iOS platforms, encountering no issues. However, when attempting to use different accounts, the subscription is not recognized. My app is currently published on Google Play's internal testing track. I've learned that it should be on the closed testing track, but this requires providing an account for review. Before the review is approved, how can I ensure that accounts on my invite list can successfully subscribe? Or internal testing track should work too, just something wrong from other side?
Hi, I’m using UIKit so I don’t know if this is also a problem with a SwiftUI implementation, but I just noticed a major issue with RevenueCat Paywalls.When you’re using an iPad (or an iPhone Pro Max in Landscape mode) and setting up the paywall with displayCloseButton: true, the paywall is either completely blank or with a split-view menu on the leftI tried a bunch of stuff to try to lock the PaywallViewController to portrait mode but none of it worked. I upload a screenshot took on an iPad Pro 11’’ running iPadOS 17 and the 2 others are from my iPhone 15 Pro Max running iOS 17.(the same bug happens on iOS 15 and 16)
Background:I can issue and test Android refunds via the RC dashboard.I can issue and test Stripe refunds via Stripe dashboard (note the difference between refund and cancellations in Stripe!)How do I issue a refund in iOS Sandbox testing?
I have a subscription in my app that allows the user to “redeem” 6 times each month. I keep track of that in an external database.My app uses anonymous ids only – there’s no login or accounts.How can I reliably get the same App User ID when a user opens the app, creates a subscription, or reinstalls the app? I find that it’s constantly changing.
Hello,Is there a way for an administrator to manually assign an app user ID directly in the dashboard when it cannot be assigned in the app for subscription information? I would like to know if there is a way to assign the app user ID directly without going through the dashboard.Thank you.
I’ve implemented moving from paid → subscription in one of my apps and I’m not seeing the version numbers I would expect in PurchaserInfo. Here are 3 examples from Production users: "original_application_version": "1", "original_purchase_date": "2021-03-01T03:46:37Z",Version 1 of this app was never released, this should be version 2. "original_application_version": "4", "original_purchase_date": "2021-10-25T12:46:48Z",Version 4 of this app went live on 1st Feb 2022, this should also be version 2. "original_application_version": "2", "original_purchase_date": "2022-02-02T04:56:03Z",Version 2 ran from 20th Oct 2020 to 26th Jan 2022, this should be version 4.This is currently causing me to grant free access to users that shouldn’t have it and not grant free access to users that should!!Should I just be using originalPurchaseDate?
I’m using the following API to get the user’s state: `https://api.revenuecat.com/v1/subscribers/:id`Unfortunately, the API is not returning back the upgraded package while the user is in TRIAL period.Here is my typical user flow:User subscribe for 3 days trial period (this package is extremely limited, that way we could push the users to upgrade their subscription) User upgrade the subscription on trial period. (At this point I can not see the upgraded package neither in the “entitlements” nor in the “subscriptions”)When a customer upgrades products during an introductory period (including a free trial), Apple does not cancel the introductory offer but instead keeps the introductory offer active in addition to the upgraded product. So in these cases you can expect two products in the same Subscription Group to be active simultaneously.According to this documentation: https://www.revenuecat.com/docs/managing-subscriptions I assume that the API should return this information
I have one simple entitlement/offer/product (package) definition for a yearly subscription with a 7-day trial period for new users who didn’t have any subscription before.Now, I would like to get the user’s eligibility for the trial period directly from Google Play, but as far as I see it, this is currently not possible. So instead, I’m using CustomerInfo.allPurchasedSkus.isNotEmpty()to check if a user is eligible for the trial period. If this check returns true (it’s not empty), then it means the user has bought a subscription before and therefor is not eligible for the trial period.Unfortunately, this gives me mixed results - sometimes this check works correctly and sometimes not. So my question is, what’s a 100% bulletproof way of checking a user’s eligibility for a defined trial period?
Is a subscription still considered active if the user has cancelled - but the subscription hasn't reached the end of the current period? For example if I cancelled my subscription today, but billing would have restarted on the 25th, am I considered an active subscription still in RevenueCat until the 25th? Or does the churn reflect today since I cancelled today? We have noticed some of the number of subscribers changing like on Jan 1 it was 63 but then changed to 64 randomly later. We are wondering if the above reason is the reason for the RevenueCat subscription numbers varying slightly over time.
The newly created application, which has not yet submitted an App Store, is directly connected to IAP. You can get the test goods, adjust the payment and pay successfully. But Apple returned the payment result to show an error. Specific information: ERROR: Error Domain=RevenueCat.ErrorCode Code=2 "There was a problem with the App Store." UserInfo= {readable_error_code=STORE_PROBLEM, source_file=RevenueCat/SKError+Extensions.swift:64, source_function=asPurchasesError, NSUnderlyingError=0x280892310 {ErrorDomain = SKErrorDomain Code=0 "An unknown error occurred" UserInfo= {NSLocalizedDescription=An unknown error occurred, NSUnderlyingError=0x280893060 {ErrorDomain = ASDServerErrorDomain Code=3539 "does not provide information about purchases within App. Please try again later." UserInfo= {NSLocalizedDescription= does not provide information about purchases within App. Please try again later. }, NSLocalizedDescription=There was a problem with the App Store.}
Hello!We are wondering how hard of a requiremente is the min sdk 24 in the latest version of the Android package. Researching a bit it looks like it’s only used in the new Paywalls UI feature.Would it be safe to not increment the minimum sdk if we are not using the Paywalls UI functionality? Currently our minimum is 21, and we would like to avoid incrementing it if possible. We are using RevenueCat on Flutter, if that makes any difference. Thanks in advance!
Hellowe are hitting a deadend when we try to retrieve offerings when using flutter and amazon our flutter package purchases version is 4.0.0and we are using amazon.alpha4 we tried everything possible to get the offerings but everything failed, I have read the community posts here, and tried github posts on revenuecat repository, and I couldn’t find any information or fixes. We tried using the app with live app testing and with app tester on amazon and both didn’t work. here is the console:D/[Purchases] - DEBUG( 4941): ℹ️ Products request finished with result SUCCESSFULD/[Purchases] - DEBUG( 4941): ℹ️ Retrieved productData: {}D/[Purchases] - DEBUG( 4941): ℹ️ Product data is emptyD/c ( 4941): In App Purchasing SDK - Sandbox Mode: sendGetUserDataRequestD/c ( 4941): In App Purchasing SDK - Sandbox Mode: handleResponseD/[Purchases] - DEBUG( 4941): ℹ️ User data request finished with result SUCCESSFULD/[Purchases] - DEBUG( 4941): ℹ️ Requesting Amazon products with identifiers: cvi
I am taking an app implemented in Flutter from iOS and Android to Amazon Appstore. It seems to work also on Amazon apart from that Revenuecat does not recognize when I offer a free trial in the beginning of a subscription on Amazon. (On Google Play and Apple App Store it works without problem.) And I know that there indeed is a free trial enabled, because when I click the subscription the Amazon window tells me so too.Please make sure that RevenueCat do recognize free trials on subscriptions on Amazon when using Flutter.
I have 4 tiers: NoAds, Pro, Pro+ and Platinum. Each tier has monthly and annual.As I understand, on AppStore I have to create one subscription group. So there will be 4 service levels and 8 products in total which will be put in descending order. Question: If a user uses the introductory offer for NoAds but I want to offer them introductory offer when Pro launches, how do I offer it to them as only one intro offer per group is allowed. I can’t move NoAds and Pro (and others) in separate groups because NoAds is a subset of Pro and hence at one time only 1 tier can be active. This is pretty straight forward in Android as every tier can have its own intro offer but Apple is tricky. How do I manage it?
I think this was posted before and it is one of the most commen issues but I spent about a week but got nowhere with it.What I have done:Terms and condition via AppStore is all accepted Paid and Free agreement are all good to go Tax requirement are all good to go Renewable Subscription is approved by apple The app works fine with Configuration.storekit file for testing purposes But when we want to go live the following occurs all the time DEBUG: ℹ️ GetOfferingsOperation: Finished2022-08-10 17:06:20.809370+0100 [39243:2154986] [Purchases] - DEBUG: ℹ️ No existing products cached, starting store products request for: ["1637274019"]2022-08-10 17:06:20.809459+0100[39243:2154856] [Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A0738ae9570e14463a4044d2762350199/offerings, 0 requests left in the queue2022-08-10 17:06:20.842004+0100[39243:2154986] [Purchases] - DEBUG: 😻 Store products request finished2022-08-10 17:06:20.842004+0100[39243:2154855] [Purchases] - DEBU
Hi,does anyone know how a real (paid) auto-renewable user subscription (e.g. 3 months * 30$ each 3 months) will behave on the users side (App Store / Play Store) when on the backend we give the same user a promotional access via RevenueCat in the middle of the subscription period?Thanks in advance!
Hi all,We are using RC Android SDK.The question is how do we know how many API calls will RC make to our Google API account (using the service credential that we have attached to our RC account).The 4 APIs that we use are:Purchases.restorePurchases()Purchases.getProducts()Purchases.purchase()Purchases.getCustomerInfo()Why is it important?We want to scale our app and without knowing the potential usage for Google API, we are in risk on running into the limit and facing a shutdown time (which is actually happening right now to us).Many thanks!
Hey RevenueCat,im getting ready to launching my subscription plan in my app, however, I do want to give my old users free access forever. Is that possible?
This might be similar to the existing question here, but I am not too sure and seems like that conversation has stopped.So will ask here again: My grace period is set to 3 days and I got the BILLING_ISSUE and CANCELLATION (with BILLING_ERROR) events same time once the paid period ended and grace period started. But I am on day 6 now and still no EXPIRATION event has come and the user is essentially using the paid content for free now.If this is tied to the account hold feature mentioned in the other post, then how can I tell? Google says we need to stop paid content once grace period ends and hold starts. But RC did not send any event tied to this hold so that my servers can remove paid content for this user.Could you help with this situation and how to proceed further? Thanks.
Hello,we have noticed that starting some months ago that our reported revenue in Firebase Analytics is out of whack in such a way that Firebase shows around 3x revenue than real one for iOS app. We have enabled the Firebase integration (https://www.revenuecat.com/docs/firebase-integration) via the appInstanceID to get the revenue data in Firebase. According to Firebase docs, the SDK captures purchase events automatically for StoreKit 1 and there is no way to disable it (https://firebase.google.com/docs/analytics/measure-in-app-purchases, https://github.com/firebase/firebase-ios-sdk/issues/2435). Could this be related to RevenueCat reverting back to StoreKit 1 some time ago from StoreKit 2? Although even if the purchases were logged once by RC and once automatically by Firebase that still wouldn't add up to 3x the revenue. Is anyone else using this setup and run into similar issues? Disabling the RC Firebase integration seems sort of like a solution but then when new version of RC start
I am thinking of implementing Paywall in my flutter project for Android, I have gone through the Documentation already.My question is, how will my paywall behave, when i have multiple offers under a single base plan in play console , and a user is eligible for all offers, which offer they will see, also what happens when there are multiple base plans as well.Is there a way in Paywall to load a particular offer while creating a paywall.
I have everything configured perfectly, the problem is that when I make a call to:https://api.revenuecat.com/v1/subscribers/user_idI do not receive directly if the user has an activated entitlement. For example, if you have never been subscribed, it will not return any entitlement, but if you have already had an entitlement, you will have it in the response, even the current subscription is not active.How are you verifying whether the user is currently subscribed or not via API? Do you compare the expiration date of the entitlement with the current date?Wouldn't it be easier if the API returned directly whether the person has the active subscription or not?
Hi,We want to delete old subscription products on both RC and AppStore Connect to avoid new users being able to switch subscriptions (we created them in the same subscription group).Do you know what is going to happen to users that still use these subscriptions? What is going to happen on the next renewal? Thank you
Hello, I have subscriptions setup for app in AppStoreConnect, not in App Store yet. I have set up entitlements, products and offerings with RevenueCat with these subscriptions. I need to change the price and the reference name in the App Store. Are there any changes that need to be made on the RevenueCat side?
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.