Documentation

Superwall

Forward Superwall webhook events to AppSprint so paywalls, trials, and subscription changes are attributed to the install that triggered them. Setup takes about 10 minutes.

Requirements

  • The AppSprint SDK installed and configured in your app.
  • A Superwall account with admin access to add a webhook.
  • Your AppSprint Superwall signing secret (Dashboard → Integrations → Superwall).
Event mapping
Superwall eventAppSprint event
transaction_completepurchase
subscription_startsubscribe
free_trial_startstart_trial
subscription_renewrenewal
subscription_cancelcancellation
subscription_expireexpiration

Add the webhook to Superwall

In Superwall, go to Settings → Integrations → Webhooks and add a new webhook with this URL:

https://api.appsprint.app/v1/webhooks/superwall

Superwall signs webhooks using Svix. AppSprint verifies the signature using the signing secret stored under Integrations → Superwall in your dashboard. No extra header configuration needed on Superwall's side.

svix-id: msg_xxxxxxxx
svix-timestamp: 1234567890
svix-signature: v1,xxxxxxxx

Set the appsprintId user attribute

For webhooks to be matched to an attribution, set the appsprintId user attribute in Superwall from the SDK. This links the Superwall user to the AppSprint install.

Set the attribute after AppSprint is configured. In React Native and Flutter, await the install ID before calling Superwall:

import { AppSprint } from 'appsprint-react-native';
import Superwall from '@superwall/react-native-superwall';
const appsprintId = await AppSprint.getAppSprintId();
if (appsprintId) {
Superwall.shared.setUserAttributes({ appsprintId });
}