Airbridge
Integrate Purchases SDK with Airbridge for precise revenue tracking
With our Airbridge integration you can:
- Attribute subscription revenue and lifecycle events to the Airbridge campaigns that drove them.
- Stream trial conversions, renewals, cancellations, and more directly from RevenueCat without relying on an app in the foreground.
- Continue measuring long-tail revenue from each campaign as subscriptions renew over time.
Integration at a Glance
| Includes Revenue | Supports Negative Revenue | Sends Sandbox Events | Includes Customer Attributes | Sends Transfer Events | Optional Event Types | 
|---|---|---|---|---|---|
| ✅ | ❌ | ✅ | Standard Reserved Attributes | ❌ | non_subscription_purchase_eventexpiration_eventbilling_issue_eventproduct_change_event | 
1. Install the Airbridge SDK
Set up the latest Airbridge SDK in every platform where you collect purchases before enabling the integration. Refer to the Airbridge developer documentation for the most up-to-date installation instructions.
2. Send device data to RevenueCat
Airbridge matches RevenueCat events to campaign cohorts using device and advertising identifiers. Make sure your app collects and sends the following Customer Attributes to RevenueCat before the first purchase occurs:
| Key | Description | Recommended Platforms | 
|---|---|---|
| $idfa | iOS advertising identifier UUID | iOS | 
| $idfv | iOS vendor identifier UUID | iOS | 
| $gpsAdId | Google advertising identifier | Android | 
| $ip | Device IP address, gathered server-side when enabled | iOS & Android | 
Airbridge also requires its DeviceUUID to associate lifecycle events with campaign cohorts. Use the Purchases SDK helper setAirbridgeDeviceID() to forward this identifier to RevenueCat — the helper will automatically populate the required customer attributes and is available in both the iOS (Swift) and Android (Kotlin) SDKs.
- Swift
- Kotlin
import Purchases
// ...
Purchases.configure(withAPIKey: "public_sdk_key")
// ...
// Retrieve the DeviceUUID from the Airbridge SDK
let deviceUUID = /* Airbridge SDK DeviceUUID */
// Forward it to RevenueCat
Purchases.shared.attribution.setAirbridgeDeviceID(deviceUUID)
// ...
Purchases.configure(this, "public_sdk_key")
// ...
// Retrieve the DeviceUUID from the Airbridge SDK
val deviceUUID = /* Airbridge SDK DeviceUUID */
// Forward it to RevenueCat
Purchases.sharedInstance.setAirbridgeDeviceID(deviceUUID)
These identifiers can be set manually like any other attribute, or by calling collectDeviceIdentifiers() after configuring the Purchases SDK. Call it again if a user later grants Ads Tracking permission so the $idfa value is updated.
3. Configure Airbridge in the RevenueCat dashboard
After your SDK is ready and device data is flowing, finish the setup in RevenueCat:
- Navigate to your project settings in the RevenueCat dashboard and choose Airbridge from the Integrations menu.
- Enter your Airbridge Token. This token authenticates requests from RevenueCat to Airbridge.
- Add the Airbridge Subdomain (app name) exactly as it appears in the Airbridge workspace (for example, testapp). Events will be routed to this app.

- 
Provide event names for each lifecycle event RevenueCat will send, or choose Use default event names to populate the recommended mapping: RevenueCat lifecycle event Default Airbridge event name Required Initial purchase Purchase✅ Trial started Start Trial✅ Trial converted Purchase✅ Trial cancelled Cancelled Trial✅ Renewal Purchase✅ Cancellation Cancellation✅ Non-renewing purchase Non Subscription PurchaseOptional Expiration ExpirationOptional Billing issue Billing IssueOptional Product change Product ChangeOptional Customize any names to match the event definitions you have configured inside Airbridge. 
- 
Select how RevenueCat should report revenue totals using the Revenue reporting mode menu: - Grossreports transaction amounts before app store commission and taxes.
- Netreports revenue after estimated store commission and/or taxes.
 
- 
Click Add integration (or Save) to enable the connection. 
4. Test the Airbridge integration
Before rolling out the integration, run through an end-to-end test:
- Make a sandbox purchase with a new user after confirming the device identifiers from step 2 are present.
- Visit the Customer View for the tester and confirm the Airbridge attributes are listed.
- Open the test transaction in Customer History and ensure an Airbridge event was delivered successfully. You can also review the Last dispatched events panel in the integration settings for a delivery log.
Once configured, you should begin to see RevenueCat lifecycle events appear in Airbridge aligned with the campaigns that sourced those users.


