Get help with webhooks, third-party integrations, and attribution providers.
Recently active
Do both `rc_trial_converted_event` and `rc_initial_purchase_event` fire at the same time when a user completes their free trial and pays for the first time?The definitions are:Initial purchase: A new subscription has been purchased.Trial converted: When an auto-renewing subscription product converts from a free trial to normal paid period.In another post you replied:Are both rc_trial_started_event and rc_initial_purchase_event sent, when Trial is started? Or is it only the trial one?You’re probably sensing a theme here, but just the rc_trial_started_event will fire here. Not clear from your Flow charts as rc_trial_converted_event is not there, you’re showing initial_purchase and renewal.
Hello,I seems that sometimes RC doesn’t seem to send the data for events to Adjust, even if the AdjustId is set.We discovered some discrepancies between our analytics and some of our users don’t have the AdjustId set (might be on our side), but then we have this case where it is set and still RC didn’t send it.Could somebody from the team help and have a deeper look at it? Thank you.
Five days ago, we noticed a significant issue within our system where a considerable number of purchase events were missing. This discrepancy was brought to our attention by our users, who reported purchasing packages but not receiving the corresponding coins.Upon investigation, we found that despite users successfully completing purchases via Google Play, the associated events were not being captured by our system through RevenueCat's webhook integration. Furthermore, the purchases were not reflected in our RevenueCat dashboard.Despite reaching out to the RevenueCat support team through a support ticket, we have yet to receive a response or resolution to the issue. This delay in communication and resolution has led to frustration among our users and uncertainty about the reliability of our in-app purchasing system.We are actively exploring alternative solutions and have begun implementing a native solution to address this issue. However, we understand the importance of timely and effe
I'm trying to integrate revenuecat with the stripe checkout on my squarespace website - so that when a customer subscribes the subscription will be automatically applied. Following this document up untill point 5 "Send Stripe Token to RevenueCat" https://www.revenuecat.com/docs/stripe#:~:text=Connect with Stripe,in the RevenueCat Stripe App. Does anyone know where the cURL code is meant to be added on the Squarespace platform?
Hello RevenueCat Team,I am currently utilizing RevenueCat's webhooks to synchronize purchase events with our backend system, and for the most part, this integration has been successful. However, we've encountered a specific issue with the "TRANSFER" event webhook, which does not seem to trigger as expected.Despite our efforts, the "TRANSFER" event webhook never gets called automatically in our setup. Oddly enough, when I manually initiate a transfer through the RevenueCat dashboard, the webhook does trigger and operates as intended. This discrepancy leads me to wonder if the problem might be related to our reliance on the legacy transfer behavior, specifically the "Share between App User IDs (legacy)" feature.Could this legacy approach be the reason why the "TRANSFER" event is not automatically triggering the webhook? If so, do you have any recommendations on how to resolve this issue or any alternative approaches we should consider to ensure seamless synchronization for transfer event
Hi guysI using Revunuecat to integrate subscription purchasing and daily payment functions.It works on iphone but not on android.Please look at my code section.Which product_id should be the same as the one currently in the rectangular region?Please let me know what I should set the product_id to in my code.Thanks
hello!I am wondering if both events are sent in parallel to Mixpanel in following use cases:User cancels the trial period: rc_trial_cancelled_event and rc_cancellation_event both, or just the trial one? User keeps the subscription after the trial period: rc_trial_converted_event and rc_renewal_event both, or just the trial one?I am asking because of the Trial flow descriptions in the webhook section of the documentation, where trial events are not present: https://www.revenuecat.com/docs/event-flows#initial-purchase-flowI am wondering how this translates into the events sent towards the Mixpanel.
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 think RC should really support Payment Intents.Stripe have created the perfect payment UI for Mobile Apps to use, which gives the user a seamless experience when making a payments, and it reduces development time and errors.The sad thing is that this process works with Payment Intents which are not supported by RC. RC only supports Subscription or Checkout Sessions.My request is that RC supports Payment Intents as I think this will help increase revenue for everyone.CheersChris
Hello,When I purchase an android subscription (renewing 1mo) it seems that in the response webhook I am getting the product_id: product_identifier:base_plan_id. Before I was just getting the product_id which corresponded to whatever product_identifier I set on the google play store. How can I fix this so that the product_id coming from the webhooks does not append the base_plan_id? Thanks,Carl
We have setup Stripe integration and as indicated, we are hosting our own server to handle web payments and send over Stripe tokens to the POST receipt endpoint after checkout. Everything works but we wonder if the solution could be simpler.Since we have the webhook integration between Stripe and RevenueCat, why do we need to maintain our own server and manually call the POST receipt endpoint? Can't RevenueCat just get the Stripe tokens from the webhook call?
Hi I have a custom paywall in swiftUI with .paywallFooter() modifier. every screen check if the user is premium by a task: .task { do { let customerInfo = try await Purchases.shared.customerInfo() isPremium = customerInfo.entitlements["Premium"]?.isActive == true } catch { print(error.localizedDescription) } }everything works fine, boughts, restore… but after you buy the paywall didn't disappear… if I change of tab and come back yes, paywallFooter is not there…My footer paywall is implemented something like this: VStack{ if isPremium{ } else { // more Code Rectangle() // ... Code... .paywallFooter() }}maybe it is not correct...thanks!
Hello Team,So getting straight to the point, I was managing (storing, updating) entitlements manually, i.e when user makes a purchase from my app, I retrieve all the entitlement ids and store it in firestore -> users collection in unlocked_entitlement field. Now I realised that client (my app) should not be used to update purchase details. I learnt about webhooks recently and thought of integrating it with firebase and use it as SSOT to detect purchases. How do I store all the customers data that have already made a purchase?
Hi, We are using RevenueCat to centralize all payment-related events for our app and our website. For web, we connected Stripe, and it’s working well. We can see the web events activity in RevenueCat Dashboard and Amplitude but we would like to track them in Google Analytics and we can’t find a proper way to do it. We have tested the Segment integration but Google Analytics is not attributing the events to users. It is just sending all the events from RevenueCat (app+web) without the right parameters (i.e: browser = segment.io instead of the right browser, no source attribution,...). Are we missing something or is it just not possible to send web RevenueCat events to Google Analytics? Thanks for your help
They all seem pretty similar. Is there one or two that stand out above the rest?Adjust AppsFlyer Branch Singular SplitMetrics Acquire
I’ve successfully, it seems, integrate revenue cat with my firebase auth backend. Now I’m wondering what is the recommended customer journey in terms of what they do first? Should I ensure that my users first authenticate with firebase, before allowing them to purchase an in-app subscription?What would happen if they first purchased the subscription and then authenticated on firebase after?Thanks for any help or suggestions.
Hello,I’m currently working on the ability to retrieve the data from RevenueCat via the API v2. Is there a way to have historical data, especially for the count of active subs and trials? Moreover, lots of different information are missing such as the renewal rate or the refund rate. Can we have access to it via the API? Finally, is there a way to split the data on the country or at least create filters to retrieve specific data?
Hello RevenueCat community,I am a new user of RevenueCat and am having issues with processing subscription purchases. Here is the relevant information.- App designed no-code in FlutterFlow- App connected and products connected in RevenueCat- App uses Firebase for Users and Authentication information- Google Analytics functions properly and shows user events- Licensing is set up for purchases in Google Developer Console with the test account I am using- RevenueCat extension is set up in Firebase- Firebase integration is set up in RevenueCat- RevenueCat service account is active. I have for now given Admin permissions for everything, so there should be no restrictions because I was encountering some access errors earlier that seem to have been fixed. - The service account JSON was generated and uploaded in RevenueCat and RevenueCat shows connected to Google. - Firebase, RevenueCat, and Google analytics are enabled and seem to be functioning with FlutterFlow- Sandbox Data is checked on th
Hi there,I was testing webhooks for an endpoint, which I created on my server. But when I am testing the Webhooks. I get this message - "It wasn't possible to connect, are you sure the URL is correct?"also my function return timeout Please, advice what should I do to diagnose this error. Thanks
Good day!I'm trying to test the webhook, but I get the error "It wasn't possible to connect, are you sure the URL is correct?", everything is configured according to the documentation.Please help to solve the problemThanks
Hello people I am having the following problem, I can import my products created in the apple store, but when I go to search the offers I get the second errorThere is a problem 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).If I try to list the products I get an empty array.by my research I found a lot of genre talking about filling the us tax form of apple store connect, but there is no consistent information or at least I did not find about how to fill or even where and how to send send, and even worse when in item 7.7. U.S. Taxpayer Identification Number (required - see instructions)You can help me with that, just like I do to get that US TAX ID.I even got information to add it to those who live in the United States but my company and from Portugal, so I didn
I just finished setting up revenuecat with firebase as per documentation. I got a firebase function that is supposed to check if a user is premium via claims. I also setup the emulators accordingly, i think. I imported the extension as well and if needed i can give the firebase.json.No trace of claims show up in either of these results called in the function after the user successfully subscribed: ```ts const tokenResult = await admin.auth().verifyIdToken(idToken); if (idToken) { functions.logger.info("tokenResult: ", tokenResult); admin.auth().getUser(tokenResult.uid).then((user) => { functions.logger.info("user: ", user); });```All i get is the usual firebase auth data. It’s also not writing anything to the firestore emulator. Can anybody help me figure out what am i doing wrong?
Problem: About 50% of the in-app events are missing in SKAN reports on Appsflyer We’re using the Appsflyer Integration to measure conversion events. I’ve noticed that for in-app events from Facebook Ads for iOS about half of the events are missing. The privacy thresholds from SKAN are not the issue. Installs are tracked correctly but conversion events aren’t. We are relatively sure about that a large share of events are missing because otherwise the data for organic installs is implausible.I checked a bunch of event logs on RevenueCat and they seem to be all send correctly to Appsflyer with the correct meta data attached.My hunch is that it has to do with wrongly identified re-installs. The numbers seem to match the 50% missing events. Question:I wonder if anyone else had a similar problem or if the RevenueCat team has heard about similar cases? I haven’t received a helpful answer from Appsflyer yet, so i’m trying my luck here.
Hey guys, I can’t see to retrieve subscription-based products, however consumables work. Here is my code:import 'cordova-plugin-purchase';const { store, LogLevel, Platform, ProductType } = CdvPurchase;await store.register([ { id: 'monthly', platform: Platform.GOOGLE_PLAY, type: ProductType.PAID_SUBSCRIPTION }, { id: 'trimonthly', platform: Platform.GOOGLE_PLAY, type: ProductType.PAID_SUBSCRIPTION }, { id: 'semiannually', platform: Platform.GOOGLE_PLAY, type: ProductType.PAID_SUBSCRIPTION }]);console.log(store.products); // [] Screenshot: Help is much appreciated 🙏
How can I get raw data about my receipts?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.