If you use RevenueCat for subscription management and Stripe for web payments, you already have a strong payment stack. What you are likely missing is a way to connect both systems to a single affiliate tracking layer. Insert Affiliate bridges that gap, giving you unified affiliate attribution across in-app purchases, RevenueCat Web Billing, and Stripe transactions without requiring you to rebuild any payment logic.
Why Do Mobile Apps Need Affiliate Tracking Across Multiple Payment Systems?
Mobile subscription apps rarely rely on a single payment channel. RevenueCat handles in-app purchases and subscription entitlements across the App Store and Google Play. Stripe processes web-based payments, one-time purchases, and increasingly web billing for subscriptions. Many apps use both simultaneously.
The problem is attribution. When an affiliate sends a user to your app, that user might subscribe through Apple's in-app purchase flow on day one or through your Stripe-powered web checkout later that week. Without a system that tracks conversions across both payment processors, you cannot accurately credit the affiliate who drove that sale.
Any affiliate program that covers only one payment channel is leaving attribution data on the table.
How Attribution Actually Works Across Payment Systems
Understanding the mechanics makes the integration easier to implement, debug, and trust.
Insert Affiliate captures affiliate attribution at the point of install through the SDK. When a referred user downloads your app via an Insert Link, the SDK stores the affiliate's short code and your company ID on-device. These two identifiers are the attribution record.
For a purchase to be attributed to an affiliate, those identifiers must be passed as metadata on the purchase event itself — in RevenueCat's case as subscriber attributes, and in Stripe's case as metadata fields on the payment intent or subscription object.
What this looks like in practice:
- In-app purchases via RevenueCat: the SDK sets the affiliate short code and company ID as RevenueCat subscriber attributes before the purchase is completed. When Insert Affiliate receives the RevenueCat webhook, it matches the transaction to the correct affiliate using those attributes.
- Web purchases via Stripe: your web checkout reads the Insert Affiliate identifiers (typically persisted from the referring link via a cookie or local storage) and passes them as metadata on the Stripe charge or subscription object. Insert Affiliate reads that metadata via Stripe Connect and credits the correct affiliate.
There is no automatic cross-surface journey-stitching between app and web sessions. Attribution depends on the metadata being present on each transaction in each channel. If a user converts on a channel where the shortcode metadata was not passed, that transaction will not be attributed to an affiliate — which is why both integrations need to be set up.
How Insert Affiliate Connects RevenueCat and Stripe
Insert Affiliate is purpose-built for mobile app affiliate tracking. It works by sitting on top of your existing payment infrastructure rather than replacing it. Here is how the integration works with each payment system.
For RevenueCat in-app purchases, Insert Affiliate receives webhook events whenever a subscription is created, renewed, or cancelled. The SDK attributes each transaction back to the affiliate who referred the user, using Insert Links — deep links that carry attribution data through the install flow. No third-party MMP is required.
For RevenueCat Web Billing, Insert Affiliate tracks web subscriptions by passing the attribution identifiers as subscriber metadata at checkout. When a user subscribes through your RevenueCat-powered web checkout, the attribution data flows directly into your Insert Affiliate dashboard.
For Stripe payments, Insert Affiliate uses Stripe Connect to track web transactions independently. If you sell one-time purchases, merchandise, or run a web-based subscription option alongside your app, those conversions are attributed to the correct affiliate and displayed in the same dashboard as your in-app purchase data.
The result is a single view of affiliate performance across every payment channel your app uses.
What Gets Tracked Automatically vs. What Needs Event Tagging
| Transaction type | Tracked automatically? | Notes |
|---|---|---|
| In-app subscription (RevenueCat) | ✅ Yes | SDK + webhook handles this |
| Subscription renewal | ✅ Yes | RevenueCat webhook fires on each renewal; affiliate is credited up to your configured renewal limit |
| RevenueCat Web Billing subscription | ✅ Yes | When attribution metadata is passed at checkout |
| Stripe one-time purchase | ✅ Yes | When shortcode metadata is on the Charge object |
| Stripe subscription | ✅ Yes | When shortcode metadata is on the Subscription object |
| Newsletter signup | Needs event tag | Use Insert Affiliate's event tagging for non-purchase conversions |
| Free trial started | Needs event tag | Tag this if you want to credit affiliates for trial starts |
Subscription renewals are credited to the originating affiliate automatically, up to the renewal limit you configure. Affiliates do not need to re-refer the user for each renewal cycle.
Setting Up the Integration
Connecting your payment stack to Insert Affiliate follows a straightforward process.
First, integrate the Insert Affiliate SDK into your iOS or Android app. The SDK is lightweight and handles affiliate attribution at the point of install. It works with native apps, React Native, and Flutter.
Second, connect RevenueCat. Configure your RevenueCat webhooks to send subscription events to Insert Affiliate. This covers all in-app purchase transactions and RevenueCat Web Billing events. The setup takes minutes and does not require changes to your RevenueCat configuration.
Third, connect Stripe. Link your Stripe account through Stripe Connect in the Insert Affiliate dashboard. This enables tracking for any web-based payments processed through Stripe, including one-time purchases and subscriptions that bypass the app stores.
Fourth, create your affiliate links. Insert Affiliate provides Insert Links at no extra cost. These are deep links that attribute users to the correct affiliate, route them to the App Store or Google Play, and carry attribution data through the entire install and purchase flow.
Once configured, your affiliates see their earnings in a branded portal, and you see all affiliate-driven revenue in one place regardless of which payment processor handled the transaction.
What About Commission Structures?
Insert Affiliate supports flexible commission configurations. You can set percentage-based or flat-rate commissions, define attribution windows that control how long after a click an affiliate can earn credit, and set renewal limits that determine how many subscription renewals generate a commission.
These settings apply uniformly across RevenueCat and Stripe transactions. An affiliate who drives a subscriber does not need to care whether that user converted through the App Store or your website. The commission structure is the same either way.
How Does This Compare to Building It Yourself?
Some teams attempt to stitch together affiliate tracking manually using RevenueCat webhooks, Stripe event listeners, and custom attribution logic. This approach is technically possible but creates significant maintenance overhead. You need to handle edge cases like subscription transfers, refunds, billing retries, and cross-platform upgrades. You also need to build an affiliate portal, commission calculation logic, and reporting dashboards.
Insert Affiliate handles all of this out of the box. The platform manages the entire affiliate lifecycle from link creation through commission tracking and payout processing.
Alternative Integration Partners
Insert Affiliate integrates with several subscription management platforms beyond RevenueCat. The platform also supports integrations with Adapty, which provides subscription management with paywall A/B testing and no-code paywall builders, and Iaptic, which offers cross-platform in-app purchase validation and has been processing transactions since 2016. Whichever subscription infrastructure you use, Insert Affiliate can layer affiliate tracking on top of it.
The Case for Full-Stack Affiliate Attribution
Affiliate marketing is a performance-based acquisition channel — you pay for actual conversions. By connecting RevenueCat and Stripe to Insert Affiliate, you get complete visibility into which affiliates are driving revenue and through which payment channels. That data lets you optimize your affiliate program, identify top performers, and scale what works.
For mobile app developers running subscription businesses, connecting your entire payment stack to a unified affiliate tracking layer is a measurable growth lever. Insert Affiliate makes the connection between RevenueCat, Stripe, and your affiliate program simple, accurate, and maintainable.
👉 Explore our docs for step-by-step integration guides, or get in touch to walk through your specific setup.
Frequently Asked Questions
Can Insert Affiliate track both RevenueCat and Stripe in the same dashboard? Yes. Once both are connected, all affiliate-attributed transactions appear in a single Insert Affiliate dashboard regardless of which payment processor handled them.
Do I need Branch.io or AppsFlyer alongside Insert Affiliate? No. Insert Links provides first-party deep linking that handles attribution through the install flow. Branch.io and AppsFlyer are alternatives some teams already use and Insert Affiliate can work alongside them, but they are not required.
What happens when a subscriber renews — does the affiliate earn commission again? Yes, up to the renewal limit you configure. Subscription renewals are tracked automatically and credited to the originating affiliate.
How does Insert Affiliate receive Stripe payment data? Through Stripe Connect. You authorize the connection in the Insert Affiliate dashboard, and Insert Affiliate reads transaction metadata from your Stripe account to identify and credit the correct affiliate.
Does this work if a user downloads the app on mobile but later purchases on the web? Attribution depends on the affiliate shortcode and company ID being passed as metadata on each purchase event. There is no automatic cross-surface journey-stitching, so both your mobile and web purchase flows need to pass the attribution identifiers independently for each transaction to be credited.
What if a user's subscription is transferred or upgraded? Insert Affiliate follows the RevenueCat or Stripe event that fires for the new transaction. How upgrades are attributed depends on whether the original attribution metadata is still attached to the subscriber.
