The Superwall integration enables server-to-server (S2S) forwarding of subscription lifecycle events from Superwall to Adjust. Superwall sends App Store subscription events to the Adjust S2S Events API.
The integration consists of two parts:
- Client-side: Pass device identifiers and the Adjust device ID (ADID) to the Superwall SDK so Superwall can include them in S2S requests.
- Server-side: Create event tokens in the Adjust dashboard and map them to Superwall subscription events in the Superwall dashboard.
Before you begin
Before you configure the Superwall integration, complete the following tasks:
Pass the Adjust ADID
The ADID is available after the device completes its first tracked session. Retrieve it in the Adjust session success callback and pass it to the Superwall SDK using setIntegrationAttributes.
Pass additional attributes
Superwall forwards additional attributes on each S2S request. Adjust uses these identifiers for more robust device matching, and for campaign optimization. Collect the following attributes and pass them to Superwall using setUserAttributes:
| Attribute | Description |
|---|---|
idfa | The iOS advertising identifier. |
att_status | The App Tracking Transparency authorization status (integer 0-3). |
idfv | The iOS vendor identifier. |
ip_address | The device’s public IPv4 address. Retrieve from your app server or a suitable API. |
The Superwall SDK automatically collects and forwards device_name and os_version on each S2S request.
Collect attributes
The Adjust SDK provides methods to retrieve IDFA, IDFV, and ATT status. You can use these instead of importing AdSupport and AppTrackingTransparency directly. You can also retrieve these values in the ATT authorization callback if you handle ATT through the Adjust SDK.
Configure the Superwall dashboard
Configure the following settings in the Superwall dashboard to enable event forwarding.
Event mapping
Create your event tokens in the Adjust dashboard, then add them to the Superwall dashboard to map each token to its corresponding Superwall subscription event. You need to create a separate event token for each event you want to forward. Events are only forwarded if a corresponding event token is configured.
For the complete list of supported events and their mapping logic, refer to the Superwall Adjust event mapping docs.
S2S security token
If you have S2S security enabled in Adjust, create an S2S security token and add it to the Superwall dashboard. Superwall includes the token as an Authorization: Bearer header on each S2S request.
Environment
Superwall automatically detects whether each event originates from a sandbox or production environment. Sandbox purchases made through TestFlight or with sandbox Apple IDs are forwarded with environment set to sandbox. Production purchases are forwarded with environment set to production. Adjust uses this field to separate test data from live data.
Revenue
For events that include revenue, Superwall forwards the purchase amount and currency to Adjust. You can configure the revenue reporting mode in the Superwall dashboard as either Revenue or Proceeds.
- Revenue: Gross revenue, which is the full purchase price.
- Proceeds: Net revenue after payment processor fees, such as App Store fees.
Events without revenue are sent without revenue parameters. Revenue is omitted when the calculated amount is below 0.001.
S2S request parameters
The following parameters are included on each event forwarded to the Adjust S2S Events API.
| Parameter | Description |
|---|---|
s2s | Always 1. Indicates a server-to-server request. |
app_token | The Adjust app token configured in the Superwall dashboard. |
event_token | The Adjust event token mapped to the Superwall event. |
os_name | The platform name. Set to ios for App Store events. |
adid | The Adjust device ID. |
idfa | The iOS advertising identifier. |
idfv | The iOS vendor identifier. |
att_status | The ATT authorization status (0-3). |
device_name | The hardware model identifier. Collected automatically by the Superwall SDK. |
os_version | The iOS version. Collected automatically by the Superwall SDK. |
ip_address | The device’s public IPv4 address. |
created_at_unix | The event timestamp in UNIX seconds. |
environment | sandbox or production. Detected automatically from the transaction. |
revenue | The revenue amount, based on the configured revenue reporting mode (Revenue or Proceeds). Omitted for non-revenue events. |
currency | The ISO 4217 currency code. Included when revenue is present. |
callback_params | A JSON object containing product_id, transaction_id, and offer_code (if present). Available in Adjust raw data exports. |