Discussion and help from anything related to RevenueCat.
Recently active
Could someone guide me on how to retrieve the total number of unique users who have subscribed to an offering for all time using RevenueCat? I'm looking for a method either through the SDK or the dashboard to accurately obtain this information. Any insights or examples would be greatly appreciated!
Hi All,We have all read the documents on how to delete a sandbox user, but couldn’t find an exact solution. We see 4 active users which are our tests https://prnt.sc/dxie0_1PhtCO , but cannot see or delete these users and cannot test our subscriptions from these devices. And stuck with it. :( Also cannot click and select this sandbox data https://prnt.sc/gMjo7P8ldX5z We also couldn’t find from the dashboard https://www.revenuecat.com/docs/dashboard-and-metrics/customer-history/manage-users where the manage users menu is 😥So if anyone can help it will be really appreciated 🙏
Hi,It has been 6 hours since we received a purchase event from the Google Play Store. Is there any way to access technical support in RevenueCat?
Hello,Your system fully Down since 8 Hours. No WebHook Hits, no Recent Purchase Showing in Overview (Dashboard) , not working.please fix it as soon as possible. I m in big trouble.
There is currently a non-subscription permanent product. Starting from today, after users place an order to purchase, the RC dashboard cannot track the purchase information of the product, and the corresponding user benefits are not unlocked within the app. Google Play backend can see that the user's payment was successful. No effect on subscription-based goods.
I am trying to repurchase IAP item via the paywall. My paywall offers user with subscription as well as non subscription options. However, if the user has already purchased it once, the paywall do not allow user to purchase it again. It logs error message “ Ignoring purchase request for already subscribed package” How can I make this possible?
Hello community 👋 I have my app only in internal testing track in Google Play Console. Is it possible to start integration with RevenueCat at this stage? I.e. when my app at internal testing track at Google Play Console. For some reason FlutterFlow guide mentions closed track for Revenue Cat integration. But to promote my app to closed testing from internal testing Google now asks details about paid part of my app, also Google wants to review my app before promoting to closed track. Best regards,Oleksandr
Is there any way using the v1 (or v2) API to check more directly whether an entitlement is active? The SDK has something like if !customerInfo!.entitlements.active.isEmpty but it seems like the API just returns something like: "entitlements" : { "premium" : { "expires_date" : "2024-04-23T14:43:37Z", "grace_period_expires_date" : null, "product_identifier" : "monthly", "purchase_date" : "2024-04-23T14:38:37Z" } when hitting the GET /subscriber endpoint. This means I have to check the expires_date against Date.now() or something like that which feels clunky rather than having the attribute calculated directly on the API.
Hello, I’m following this https://www.revenuecat.com/docs/integrations/webhooks#syncing-subscription-status however the link for the GET /subscribers documentation is broken (https://www.revenuecat.com/docs/api-v2/overview#subscribers) .Where can I access this information?
I made a paywall with localisations for multiple languages. Now I would like to “experiment” with some changes on this paywall but it is “life” in my app.Is there any way to duplicate a paywall (to use it for another offering) and experiment with changes on it?I dont want to make the second paywall from scratch.
Im using RevenueCat Flutter package to implement subscriptions . When i’ve uploaded a build to the internal testing track on Google Play Console and added myself as a tester everything works perfectly and i can subscribe. However when i’ve uploaded the exact same build to production, the app review team are seeing the attached error message. Anyone got any ideas why this is happening?
Hey,I am trying to access a user’s entitlements via the API (I am using the sandbox environment, i.e. I am using Xcode to simulate purchases).But I always get empty entitlements in the response and I’m not sure why. This is my call:curl --request GET \ --url https://api.revenuecat.com/v1/subscribers/<app_user_id> \ --header 'accept: application/json' \ --header 'authorization: Bearer <my_v1_token>'\ --header 'X-Is-Sandbox: true'And this is the answer{ "request_date": "2024-04-26T13:34:56Z", "request_date_ms": 1714138496699, "subscriber": { "entitlements": {}, "first_seen": "2024-04-26T11:24:56Z", "last_seen": "2024-04-26T11:24:56Z", "management_url": null, "non_subscriptions": {}, "original_app_user_id": "<original_app_user_id>", "original_application_version": null, "original_purchase_date": null, "other_purchases": {}, "subscriptions": {} }} However, the iOS app SDK makes t
I'm implementing subscriptions in my app using RevenueCat; however, I had already implemented consumable products, validating them on my server.When I added RevenueCat to the project, I noticed that when a consumable product was purchased, it was automatically consumed, and when the user visited the purchase verification screen (to consume it and gain the content), an error occurred on my server because the purchase had already been consumed by RevenueCat.I discovered that I can use Purchases.sharedInstance.finishTransactions = false to handle consumable logic as before. However, by doing this, I'll need to manage subscription logic on my server as well, and that's not what I want.After running some tests, I think I found a way to handle this. Let me explain what I did:When I initialize RevenueCat, I call Purchases.sharedInstance.finishTransactions = false. When I open my subscription PayWall, I call Purchases.sharedInstance.finishTransactions = true. This ensures that when purchasing
Hello all!It’s been more than a year since we notice that all the users that had a Profile Location of Ashburn, Virginia, US had a wrong location information. There is something that is changing our users location to Ashburn and is not us.We’ve reviewed this issue with our tech team and none of the events that we send from our server are changing the users location. We have also identified, with the help of MixPanel’s Support team that this location changes when a RevenueCat event is sent to our MixPanel.I’m using this channel because RevenueCat’s Support team takes weeks to answer and I wanted to know if there are more cases like us out there so that we can push together to get this fixed.We use MixPanel as our source of truth and we have many cases of with this issue, specially hurts because we are running a paid marketing campaign and we don’t really know if the new subscribed users are comming from the US or if they are more Ashburn cases. I know we can filter them, but that’s not
Hi,What timezone is used in the data export, I am assuming it is UTC but I just wanted to check.
Hi, We are interested in testing the new RevenueCat Billing feature, it looks super promising!One quick question though, do you plan to support trial and discounts at some point? If yes, do you have an estimated ETA? We are super interested by this feature but we would need to be able to have offers with trial to match what we have inside our apps. Thanks!
Hey guys, I’m getting empty list of products after following all the quick start tutorial and also the thread below: Here is the logs I have:2022-08-30 20:44:24.710 8209-22767/com.crediswap.crediswap D/[Purchases] - DEBUG: ℹ️ Debug logging enabled2022-08-30 20:44:24.711 8209-22767/com.crediswap.crediswap D/[Purchases] - DEBUG: ℹ️ SDK Version - 4.6.12022-08-30 20:44:24.711 8209-22767/com.crediswap.crediswap D/[Purchases] - DEBUG: 👤 Initial App User ID - null2022-08-30 20:44:24.711 8209-22767/com.crediswap.crediswap D/[Purchases] - DEBUG: 👤 Identifying App User ID: $RCAnonymousID:36244bb505c14d0c8f5accb0d5a7f8a02022-08-30 20:44:24.713 8209-22767/com.crediswap.crediswap D/[Purchases] - DEBUG: ℹ️ Deleting old synced subscriber attributes that don't belong to $RCAnonymousID:36244bb505c14d0c8f5accb0d5a7f8a02022-08-30 20:44:24.714 8209-22767/com.crediswap.crediswap D/[Purchases] - DEBUG: ℹ️ Listener set2022-08-30 20:44:24.714 8209-8209/com.crediswap.crediswap D/[Purchases] - DEBUG: ℹ️ App f
Hi, I would like to seek for support regarding to slow test card, approves after a few minutes. I would like to know how to get status success or failure after pending a few minutes. Thank you,
Hello,I have an app with a 3 days trial on android. I just added A single payment offer but I am not able to see it, it should be because I already subscribed with this phone. Is there any way to reset the subscription so I can check the offers again.I just check with an other phone I can not debug and the full price is displayed not the offer one I should have 39.99€ and not 99.99€I am getting the products this way with React Nativeconst offerings = await Purchases.getOfferings();offerings.all.Subscription.availablePackages[0].product.priceString
Hi,We have a back-end protecting routes based on the subscription status of the user. If user has a subscription, middleware allows to access. To ensure it, after purchase or any other transaction, Revenuecat sends webhook to our server and we are comparing the expiration dates and change the subscription status of user on our server by sending Revenuecat rest api.However, in the initial subscription, if user make purchases and tries to see premium routes immediately in which webhook doesn’t recieve to our server; user may not see the premium content. In this case i have two questions:Revenuecat paywall waits webhook to be sent to be closed? If paywall waits for sending webhook to be closed, no problem. If not, should we make a control on our server by sending request to Revenuecat rest api when the paywall result is purchased?What should our approach be? We know that we mention about very small milliseconds but we have to consider each possibility that may affect the user experience.
Hello,I'm curious if it's feasible to incorporate custom logic between the "call to action" button and the purchase action on RevenueCat paywalls. Here's a more detailed explanation of what I have in mind for my implementation: Upon a user selecting a subscription product on the paywall and tapping the "call to action" button, instead of proceeding with the purchase immediately, I aim to present the option for users to "sign in with Apple." Following successful sign-in with Apple, the purchase process would then proceed. Otherwise, if the user chooses not to sign in, the purchase action would not proceed. Is it technically achievable to implement such functionality within RevenueCat?Many thanks in advance!
Hello,I'm interested in incorporating custom variables for each package within RevenueCat paywalls. Is this possible? To clarify, let's consider a scenario with two packages displayed on the RC paywall, namely pkgA and pkgB. For each package, I aim to integrate two custom strings: strA1 and strA2 for pkgA, and strB1 and strB2 for pkgB. In this context, these custom variables (strA1, strA2, strB1, strB2) are distinct from the variables mentioned on your "Displaying Paywalls" page. Essentially, I'm seeking complete flexibility in defining the values of strA1, strA2, strB1, and strB2.Could you provide guidance on how to implement this?Thank you in advance for your assistance.
Hello!We use MixPanel as our source of truth and we have created a cohort with certain filters to get all the active subscribers. We have followed the same filters as RevenueCat but still the numbers doesnt quite match:Active Subscriptions shows the number of unexpired, paid subscriptions at the end of each period charted.For the current period, the number indicated is the current active subscriptions. Subscriptions that have auto-renew disabled are still counted in Active Subscriptions. Refunded subscriptions are counted as active between their start date and their refund date.Active subscriptions is important as a measure of the number of individual, recurring relationships you are currently serving and is a proxy for the size of the business. So I would like to know if there is someone how has made a cohort or report that gives the same results as in RevenueCat that can share it with us.This is the cohort we created:RevenueCat - Active Subscribers CohortJust for you to know, we have
My app retrieve subscription status when the app startsconst customerInfo: CustomerInfo = await Purchases.getCustomerInfo(); console.log('current time', getDateTimeDisplayString(new Date().getTime())); console.log('customer info when loading the app', customerInfo);however, it always loads the last cached data in my ios simulator LOG current time 2024-04-22 19:35:32 LOG customer info when loading the app {"activeSubscriptions": [], "allExpirationDates": {}, "allExpirationDatesMillis": {}, "allPurchaseDates": {}, "allPurchaseDatesMillis": {}, "allPurchasedProductIdentifiers": [], "entitlements": {"active": {}, "all": {}, "verification": "NOT_REQUESTED"}, "firstSeen": "2024-04-22T23:30:56Z", "firstSeenMillis": 1713828656000, "latestExpirationDate": null, "latestExpirationDateMillis": null, "managementURL": null, "nonSubscriptionTransactions": [], "originalAppUserId": "56de1eda-4738-a098-55b8-041900dc5f37", "originalApplicationVersion": null, "originalPurchaseDate": null, "originalPurch
As per subject, I am testing revenue cat integratoin on the ios simulator, but the prices are only showed in USD currency code.Any idea? My app is availble in multiple language or country. It is a limitation of the simulator and then on real device in production will be ok? In such a acase how revenue cat will know the price? Myabe did I miss configuration on Apple side? Thanks for any support.Here a sample if what I get rom the revenue cat api: LOG {"identifier": "$rc_monthly", "offeringIdentifier": "base", "packageType": "MONTHLY", "product": {"currencyCode": "USD", "description": "Remove Ads", "discounts": [], "identifier": "01_month2", "introPrice": null, "price": 2.9899999999999998, "priceString": "$2.99", "productCategory": "SUBSCRIPTION", "productType": "NON_CONSUMABLE", "subscriptionPeriod": "P1M", "title": "1 Month"}} LOG {"identifier": "$rc_three_month", "offeringIdentifier": "base", "packageType": "THREE_MONTH", "product": {"currencyCode": "USD", "description": "Remove Ads
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.