Get help with anything related to RevenueCat.
Recently active
I’m building an app using Flutterflow, Firebase Authentication and RevenueCat.Authentication is optional and RevenueCat App Store subscriptions are optional with a freemium model.After a user has upgraded to a premium subscription, if they subsequently logout or login from the app (firebase auth) their RevenueCat entitlement is “forgotten”. When the user tries to subscribe again, their entitlement is “re-discovered”.Is this intended behaviour? I swear it wasn’t doing this a few days ago, but perhaps I didn't notice. I’d prefer for the RevenueCat entitlements and Firebase Authentication to be independent.I think this is related to anonymous app user IDs.https://www.revenuecat.com/docs/user-idsIs there anything I could have changed in my flutterflow setup that would trigger Flutterflow to change what kind of ID is used with Revenuecat? i.e. change from always anonymous to a mix of app IDs and anonymous? or vice versa?
Hello,I am using webhooks to store all webhook events that RC sends me in a postgres database. I noticed on the webhook documentation that I should be requesting the `/subscriber` endpoint on every subscription webhook event that comes in in order to “sync” the state of the database to the RC api source of truth. My question is - from a server, should I be using the apple API key or the google API key when requesting subscriber attributes from my server? My working assumption is that I can use this api to ultimately tell if a user is subscribed, so I am going to use that to unlock subscriptions / determine backend authorization for certain endpoints. Is this the correct approach here? If so, which key should I be using or does it not matter from the server (will using the apple and google api keys against the /subscriber endpoint return the same data?)Another question I have is about latency. Will the webhook event come in before the revenue cat api is updated? Also is this a bad appro
Hey, I get an error when I paste the JSON file in the Android app config.. Do you have any ideas where I can read how to troubleshoot? they don’t have anything on their website (or I can’t find it)
Hi there,I have completed the integration to my Flutter project. I published my App and test it using real payment. The end result confuses me. Could anyone understand how it works?This is the record on my iPhone, the subscription is 6 month expired in 23rd Sept 2023The screenshot from my iPhone above is customer with ID 14, the records for customer 14 is shown below. In addition, I have the “Renewal Receipts” checked on my iPhone but I did not see any related purchases in the Purchase History. In the Customer List, I have NO customer in the Active List, 2 customers in the Sandbox List, 0 customer in the Non-subscriber List, and 1 customer in the Expired List as shown above. This is the transaction shown in the Customer Profile This is the continuous section from the previous Customer Profile. The screenshot from iPhone shows the subscription to the product “bacabuku_9540_6_month”, but it did not show the subscription to product “bacabuku_1540_1_m”. Meanwhile, the customer profile fro
Hello, I would like to know if you can help me.I am developing an app in react native, in which my authentication method is through oauth. Next, I register the user in revenueCat using the login method by passing the unique user uuid.Currently, I am experiencing two issues:The first one is regarding virtual cards.I have followed all the steps described in the guide, but from the user account when trying to make a subscription purchase, only my real cards linked to my play store account appear. I have been reading that perhaps this is what is causing the error and I should use the sandbox with a test user without real cards linked, which leads me to the second question. To test the functionality from user “A”, I purchased the monthly subscription. everything worked fine, but from the same device when switching to user account “B”, even changing the play store account, when trying to make a subscription purchase, the error "The product is already active for this user" appears. I have tri
This is very strange and I can’t believe it happened. I am testing a purchase with AppUserID 56 as shown in the log file below (indicated as /v1/subscribers/56/offerings). I made a purchase and got a message indicating that “There is already another active subscriber using the same receipt” (as shown below). When I check RC dashboard, it shows that the purchase is made by AppUserID 14, shown below. I am using purchases_flutter plugin and using the login() function upon user login. I supposed the login() function will set the current user of Revenuecat and thereafter the purchase made should be belonging to the ID passed in to the login() function. How can user 56 turn out to be user 14?I hope someone out there can help me. Thank you.
I am interested in whether I can use RevenueCat in Serbia, since Stripe is not supported in Serbia? I would like to create a React Native application that would have subscriptions and the application would be used only in Serbia.
Hi There,My app has already gone live. One of my iOS customer (first customer) complained that she has successfully make the subscription, money is paid, but the app did not grant her the subscribed service.I check the RevenueCat website but cannot find the customer and the purchase. What should I do?
I tried testing my app before sending to app review and now I cannot cancel the payment for the reviewer account we have createdHow do we go about this so the reviewer has to make payment to test the payment flow
In flutterflow it allows for a revenuecat integration. However it seems its just for apple and android while flutterflow also allows for web. Or will the integration work for all platforms and they just need those 2 api’s?We know revenuecat offers “web payments via stripe” so I was hoping to use that for the flutterflow app web users and the standard app store and play store methods for when the user is using the app on their devices. I also have the firebase revenuecat extension installed which seems like a good idea... So perhaps Im looking at this all wrong and I use the standard stripe apis to add subscriptions etc and that info just gets synced with revenuecat? So basically this way a user will have his entitlements/packages assigned to him across all platforms. Any insight would be appreciated.
How can we create a scenario of refund in sandbox testing environment
I’m hitting a bit of a wall getting the RevenueCat/Stripe integration up and running, mainly because I haven’t found a good path for testing test/sandbox subscriptions. I can do testing against Stripe Live, but that isn’t really a good solution..Stripe seems to only allow installation of the RC App in Live mode. It also appears that RC only allows one Stripe integration per project, meaning that I can only have one webhook config for Stripe with one Stripe webhook secret. I don’t want to (lol), but it seems like I could:Create a second RC project and attach the Stripe Test webhook there. Proxy the Stripe Test web hooks, and forward them onto RC. I haven’t tested this, so I haven’t verified if the checks on RC endpoint would allow these coming from a different source. Test in Stripe Live mode.Do I have any better options? I’m hoping I’ve just missed something that makes this really easy.Thanks in advance.
I’ve successfully managed to make my first sandbox subscription purchase with an iPhone device, in a React Native app. Now I want to cancel this sandbox subscription to try my workflow again. According to App Store Connect:As you can see in the screenshot above, Apple writes: “To repeatedly test common in-app purchase scenarios for a sandbox tester, click Edit to clear their purchase history.”I have cleared their purchase history but the subscription remains in RevenueCat:Aren’t App Store and RevenueCat synced?How can I easily cancel a users subscription everywhere (in sandbox environment)? I’m basically trying to figure out the smoothest testing workflow for purchasing subscriptions, cancelling them and retrying the whole process, many times.
I would like to ask is it possible to purchase for example Item 1 and Item 2 (may or may not be a subscription) at the same time on the checkout?
I have seen this error sometimes:Cannot read property 'productIdentifier' of undefinedWhy would RevenueCat have an incomplete response when: const info = await Purchases.getCustomerInfo();Then I access by:info?.entitlements?.active?.[entitlementName]?.productIdentifier This only seems to be in production, of course.
Hello RC team,We're encountering a problem on Android. When calling getCustomerInfo(), the result shows that the user doesn't have any active subscriptions. However, when attempting to subscribe, the response indicates that we are already subscribed, resulting in rejection.Also, one user is subscribed multiple times on the same product in Dashboard even if we created unique id in configurationFeels like, Dashboard and getCustomerInfo are not in sync.This is the setup.If you need some additional information, please, let me know. const aplleApiKey =REVENUE_CAT_APPLE_API_KEY;const androidApiKey = REVENUE_CAT_ANDROID_API_KEY;const uniqueId = UNIQUE_ID useEffect(() => { const setup = async () => { if (Platform.OS === "ios") { Purchases.configure({ apiKey: aplleApiKey, appUserID: uniqueId, }); } else if (Platform.OS === "android") { Purchases.configure({ apiKey: androidApiKey, appUserID: uniqueId, });}};setup().catch(console.l
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?
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.}
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?
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!
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
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.