adjust-icon

Superwall SDK integration

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:

  1. Integrate the Adjust iOS SDK.
  2. Integrate the Superwall iOS SDK.

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:

AttributeDescription
idfaThe iOS advertising identifier.
att_statusThe App Tracking Transparency authorization status (integer 0-3).
idfvThe iOS vendor identifier.
ip_addressThe 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.

ParameterDescription
s2sAlways 1. Indicates a server-to-server request.
app_tokenThe Adjust app token configured in the Superwall dashboard.
event_tokenThe Adjust event token mapped to the Superwall event.
os_nameThe platform name. Set to ios for App Store events.
adidThe Adjust device ID.
idfaThe iOS advertising identifier.
idfvThe iOS vendor identifier.
att_statusThe ATT authorization status (0-3).
device_nameThe hardware model identifier. Collected automatically by the Superwall SDK.
os_versionThe iOS version. Collected automatically by the Superwall SDK.
ip_addressThe device’s public IPv4 address.
created_at_unixThe event timestamp in UNIX seconds.
environmentsandbox or production. Detected automatically from the transaction.
revenueThe revenue amount, based on the configured revenue reporting mode (Revenue or Proceeds). Omitted for non-revenue events.
currencyThe ISO 4217 currency code. Included when revenue is present.
callback_paramsA JSON object containing product_id, transaction_id, and offer_code (if present). Available in Adjust raw data exports.