Get help with webhooks, third-party integrations, and attribution providers.
Recently active
We are running Meta paid ads extensively.Currently, weAble to track number of install accurately. NOT ABLE to track free trial activation accurately.We would like to solve the above issue, by using RevenueCat + Meta Conversion API.Can someone from RevenueCat, confirm which is the correct changes, so that we can track both install and free trial activation accurately?Before using RevenueCat + Meta Conversion API. Info.plist <key>FacebookAutoLogAppEventsEnabled</key> <string>TRUE</string> <!-- In-App Purchase Automatically Logged Events --> <!-- https://developers.facebook.com/docs/app-events/getting-started-app-events-ios/ --> <key>SKIncludeConsumableInAppPurchaseHistory</key> <true/> AppDelegate.swift private func initFacebook(_ launchOptions: [UIApplication.LaunchOptionsKey: Any]?) { // https://developers.facebook.com/docs/app-events/getting-started-app-events-ios
We have a working Adjust integration in RevenueCat, but we noticed a large discrepancy in the amount of “active trials” visible in RevenueCat and the amount of tracked “Trial started“ events in Adjust. Currently, there are more than double active trials in RevenueCat than the corresponding events tracked in Adjust.We think it’s because our marketing is relying heavily on App Store’s “Offer codes”. Currently we recommend the user to redeem the discounts via the App Store, as is also recommended by RevenueCat due to Apple’s buggy implementation of the offer code redeem screen in iOS.We suspect that RevenueCat is not sending “Trial Started” events to Adjust if a user starts a 3 months free trial via an offer code. Can you confirm this? Is this a bug or is this intentional? What alternative do you suggest to have more reliable stats on the total amount of trials started on Adjust’s side?
Hi there, I’ve set up Meta Ads integration and it has been working for some time. In Meta Ads, I’m now looking to create a new campaign with a performance goal rather than an install goal. When trying to select the event to set as the goal, both the standard events ‘Start trial’ and ‘Subscribe’ are disabled with an error Your app can't use Aggregated Event Measurement because conversion data is missing or partial. Usually, the easiest solution is to set up the Facebook SDK for iOS.Do you think I’m missing any steps in the Meta Ads integration set up? I’ve added details about my setup and review I’ve just completed. Appreciate your help with this. Here is my Meta Ads set up In app `collectDeviceIdentifiers()` call `setFBAnonymousId()` call Both of these set up after Purchases SDK is configured When ATT prompt is authorized, set `isAdvertiserIDCollectionEnabled` and call `collectDeviceIdentifiers`.Next, I have integrated with Conversions API. Is the Datasource ID (mentioned in Conversi
The current MCP supports Configuration. Are there plans to support Analytics? I want to ask Claude about active subscriptions, subscribers, churn, etc.
How to setup Datasource IDBased on https://www.revenuecat.com/docs/integrations/attribution/meta-adsAdd your Datasource ID for production events (and optionally an Datasource ID for sandbox events). You can find this ID in the Events Manager, selecting which datasource you'd like to use.This is my Event Manager page. Is Datasets same same Datasource? Is this the right page to get the datasource ID?How to get Conversions API Token Add the Client Token for your app (and for the sandbox Datasource if included). You can find your Client Token in the Events Manager dashboard, under your selected Datasource > Settings > Generate Access Token. I can’t find the “Generate Access Token”. Can you please point me out where I can locate such a feature?Thank you.
I am really confused about why this endpoint is recommended to check for the Webhook.I can’t tell the order of the `items` array being returned from the endpoint response. I can’t tell what entitlement is `active` for example: is it my monthly or annual? The `product_id` field is not helpful - i would need to make a 2nd request to API to search for the product/offering and deduce what it is.Is there a more effective way to find the active subscription on the customer after a webhook?
Hi RevenueCat team,I’m experiencing an issue with the Paddle integration when using Web Purchase Links.I’m trying to set up RevenueCat payments through Paddle for my Flutter Web and Flutter Windows apps.When I use the option “Use autogenerated user IDs”, the purchase completes successfully (checkout opens, payment is processed, user is redirected back to the Web Purchase Link page, and it says “You can close this window”).However, in RevenueCat, the purchase is assigned to a new anonymous user, not to the correct App User ID.The Web Purchase Link includes my user ID in the URL, for example:https://pay.rev.cat/XXXX/{app_user_id} When I switch to “Use a custom field”, the problem is that it’s unclear how to properly pass my App User ID through the Web Purchase Link.If I try using the field name rc_user_id (which seems to be RevenueCat adds automatically), the user mapping works correctly — but then the “transaction complete” event never fires, and the Web Purchase Link page gets stuck on
I am following the Meta Ads integration guide and have successfully implemented the setup. We can confirm that the Facebook Anon ID and IDFV are being recognized for each user. For ATT consent, when denied or not determined, the IDFA correctly shows as 00000000, so everything appears to be functioning as expected on that front.I am using the Conversions API in the RevenueCat → Meta integration and have enabled “Send events when ATT consent is not authorized.”1. I can see Trial Start events in Events Manager attributed to ads (but no App Installs).2. Those trials are linked to the correct ad set (in Events Manager)3. However, in the Campaigns view, neither Trial Starts nor App Installs are appearing.I'm confused why it shows in event manager and not in Campaign views.Separatley the app installs are not showing at all for adverts (in Events Manager / Campaign Results_Screenshot: https://drive.google.com/file/d/1GDrP1JP6dUewYjUOZJOKVmjTybjdLfWr/view?usp=sharingPlatform: React nativeLibrar
Hi RevenueCat team,I'm running into several webhook limitations while trying to set up proper environment separation for my project. I have 6 apps in one project:Dev iOS Dev Android Preview iOS Preview Android Production iOS Production AndroidDev, Prev, and Prod have their own backend and Webhook Url.Problems I'm facing: Can't select multiple specific apps - When creating a webhook, I can only choose "All Apps" or a single app. There's no way to select just "Dev iOS + Dev Android" for a single webhook. Why is this not possible? I don’t understand it... Each webhook URL can only be used once - If I try to create two separate webhooks (one for Dev iOS, one for Dev Android) pointing to the same backend URL (https://my-dev.supabase.co/webhook), I get an error that the URL is already in use. Maximum 5 webhooks per project - Even when I work around the above issues by adding query parameters to make URLs unique (e.g., ?env=dev&platform=ios), I can only create 5 webhooks but I need 6
a
The upper part is cut off. Android. Flutter.This is how it should look (taken from the dashboard). This is what I’m calling in Flutter.RevenueCatUI.presentPaywall(displayCloseButton: true);What could be the issue that cuts off the upper part as seen in the first screenshot?
I was wondering if this is intended or not? I have the AppsFlyer integration enabled and it sends events for Android / iOS subscriptions but NOT for RevenueCat web subscription events for my app.
Hi RevenueCat team,We’re currently using the RevenueCat scheduled data export and receiving the daily transactions table to our BigQuery project.Our goal is to reproduce the Trial Conversion report (with additional refund metrics) in our internal BI tool, so that we can visualize cohort-based trial → conversion performance over time.I’d like to confirm a few points and get your guidance on the best approach: How should we correctly identify Trial Started, Converted, Pending, Abandoned, refunds or cancellations so they align with the dashboard metrics in the RevenueCat UI? Are there any recommended SQL examples for reproducing the Trial Conversion chart logic using only the transactions export (without the customers export)? Our goal is to use RevenueCat data within our internal analytics tool. We want to integrate the data we receive (such as the transactions export) into our existing reporting environment and monitor it from there.Could you please guide us on the best way to do this
The documentation states that the `rc_subscription_status` property should be set as a user property with each RC event that is sent to Posthog. This is not happening in our integration.We do receive RC events, and see the property there as an event property, but the related users do not have the latest subscription status set as a user property.Here’s a link to the relevant docs:https://www.revenuecat.com/docs/integrations/third-party-integrations/posthogFrom this page:Whenever RevenueCat sends an event to PostHog, we'll update the rc_subscription_status user attribute with any applicable changes, using one of the following values: [...]
Hi, everyone,I just implemented RevenueCat to my app with version 9.10.0, but when user renew or trial to paid. not any event in_app_purchase has been recorded. I linked firebase with google play store and revenue cat with GA4Someone can help me about this.Thanks!
This looks like the exact same problem from this thread: Everything I put look very correct.Thanks in advance
Hey - we would like to report trial starts as a `is_revenue_event` in singular so we can use it to tune for Meta ads, but since the event doesn't have an amount associated with it, it's not showing up as a revenue event. Is there a way to map a different property to the amount property? From Singular support: Thanks for sharing the details. Currently, Singular treats events with a revenue value of 0 (such as your rc_trial_started_event) as non-revenue events. To have this event recognized as a revenue event in Singular, and make it available for mapping as a revenue event (like "Purchase") in Meta, you must either: Send the event with a revenue amount greater than 0 OR Set the is_revenue_event flag to true in the event arguments. The RevenueCat integration, by default, sends the trial start event with amt: 0, so it is not classified as a revenue event in Singular. If you want to assign a value to these events, you would need to adjust the integrat
Hello,I am sending purchase and trial start events to Meta using the RevenueCat Meta Ads integration. Currently, I can see the events in Meta, but when I check the event details, Meta reports that no event parameters were detected.In my Flutter app, I am calling Purchases.collectDeviceIdentifiers() after the Purchases SDK is initialized and after the user accepts the App Tracking Transparency permission, in order to collect the advertiser ID.Additionally, after initializing the Purchases SDK, I call a method to get the Facebook Anonymous ID and pass it to the Purchases SDK using Purchases.setFBAnonymousID(fbAnonymousID).I am not sure if there is anything else I need to do. My goal is to see the advertiser ID as an event parameter in Meta.Also I am not sure why I cant see any other parameter for the StartTrialComplete event, what parameters RC sends to META? Thank you for your guidance.
I’ve been staring at the Firebase integration docs page for couple of days and I cannot make any sense of it. To put it simply, I want my SwiftUI app on user’s device to be informed when their subscription changes (renewes, is cancelled etc. etc.). I use the anonymous userId provided by RevenueCat, my users are not authenticated, they don’t login with any method. If at all possible, I’d prefer to not store any customer data. All I want is a simple “Hey, your subscription changed!” notification so I can refresh entitlements and check what subscription level user has. Right at the beggining of https://www.revenuecat.com/docs/integrations/third-party-integrations/firebase-integration it says that FirebaseAuth and FirebaseStore are optional and then 2 senstences later that “The Firebase Extension portion requires this step to be completed.’ with a code snippet that clearly uses FirebaseAuth. So is it, or is it not required for me to use FirebaseStore and FirebaseAuth? Is there any document
Hi everyone,I'm implementing subscription upgrades and downgrades for Android in my React Native app, using react-native-purchases version 9.4.1. I'm currently running into an issue while testing on a physical device using an internal test track.What is happening:When I try to upgrade or downgrade from an active subscription (e.g., "plus") to another plan (e.g., "pro" or "lite"), the purchase flow fails. On Upgrade, I receive the following error from Google Play Billing via adb logcat: [RevenueCat] 🤖‼️ BillingWrapper purchases failed to update: DebugMessage: Requested replacement mode is not supported for this request. ErrorCode: DEVELOPER_ERROR. On Downgrade, I get a more generic Unknown error.. My Implementation:I check if the user already has an active subscription, and if so, I pass a second argument to the purchasePackage call to handle the upgrade/downgrade. Here is a snippet of my code:TypeScript // Using "react-native-purchases": "9.4.1"import Purchases, { PurchasesPackage
Hi RevenueCat Team,I am using the RC sdk in my flutter app and I am using RC META integration to report purchases/start trial ...etc, events to META.I’ve set up the Meta integration in my RevenueCat project to report purchases to Meta and optimize ad campaigns. I noticed that the payload RevenueCat sends to Meta includes the entry:"action_source": "website" However, I need this to be set as "action_source": "app".My question is: is there a way to update or customize the payload sent from RevenueCat to Meta?Currently, because the action source is set as “website,” I have to create a Custom Conversion in Meta and select “Website” as the Action Source. This, however, requires filling out the Rules section with URL keywords, which doesn’t apply in my case.It would be great if there’s a way to adjust the payload so the events are properly recognized as app events on Meta.Or additionaly, can you explain how to use events sent from RC to create and optimize ad campaigns in meta?Thanks for you
I’m evaluating RevenueCat for our in-app subscription integration.We have the following requirements:We currently handle web based subscriptions using Stripe.We want to add the option to purchase subscriptions via in-app purchases.We want to see customers subscribed via the app stores in our Stripe dashboard and their subscription status We already integrate our user account system with Stripe and want to do minimal changes, ideally when an app store customer would be created the existing should be able to connect it with the user account without modificationsMy questions:How can we sync app store subscribers to Stripe? I’ve looked at the RevenueCat Stripe app in the Stripe marketplace, but couldn’t figure out how to use it properly, it talks about sending Stripe tokens to RevenueCat. Not sure I understand it correctly, but this sounds like RevenueCat tries to be the single source of truth for Stripe based web subscriptions. As I understand it this is the opposite to what we want.Any h
I was wondering if there is any chance to add a add an endpoint to get the list of all payments (i.e. activities) of a customer? Currently, it’s shown in the dashboard under Customer History box.Checking on the Network tab of my browser, it seems like the data is coming from api.revenuecat.com/internal/v1/developers/me/projects/:project_id/subscribers/:customer_id/activity which is an internal endpoint. So, the data and the formatting is there–It’s just a matter of exposing it as the external API.Is there any chance that it will happen anytime soon? Is this against the rules and Terms of Service to call that internal endpoint programmatically (and occasionally) to get the data for our own internal dashboard?Thanks,
I am using RevenueCat and Superwall. In Superwall, I open an in-app browser to purchase Stripe products, and then the receipt is submitted to RevenueCat. My question is: if I integrate RevenueCat’s Meta integrations by implementing the Conversions API, will the purchase events be successfully sent to Meta?
I setup the Revenue Cat Stripe SDK about 9 months ago when it was a “testing” environment in Stripe. Now I migrated it to their “sandbox”. None of the products I setup inside Stripe show up, but the production purchases are still valid as `rc_product_identifier` inside the transaction. And now, in my dev environment, when i `Purchases.getSharedInstance().getOfferings();` the offerings are not found...So I added 2 products in my sandbox. My offerings are still empty. What changed in this new Sandbox environment that caused products to not migrate over?Do we still NEED to have a product listed in Stripe?Is the documentation for the Web SDK correct still for Products & Sanbox configuration?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.