- Use Qonversion subscription events to run enhanced app campaigns.
- See trials, subscriptions, renewals and refunds next to the install and the campaign that drove them.
Requirements
| Platform | Appstack SDK | Qonversion call |
|---|---|---|
| iOS | 4.3.1 or later | setCustomUserProperty |
| Android | 1.0.0 or later | setCustomUserProperty |
| React Native | react-native-appstack-sdk 0.0.19 or later | setCustomUserProperty |
| Flutter | appstack_plugin 0.0.13 or later | setCustomUserProperty |
| Unity | Any version | SetCustomUserProperty |
getAppstackId() returns a stable ID even before the Appstack SDK is configured from version 4.3.1.
Connect to Qonversion
1
SDK configuration
Set the Appstack ID as a Qonversion custom user property named
appstack_id. Do it on every app start, right after Qonversion is configured, with the value from getAppstackId(). Appstack uses it to link each Qonversion event to the install, and the campaign, that produced it.2
Copy the credentials
In the Appstack console, open the Integrations page of your project and select Qonversion. In the Credentials section, copy the Webhook URL and the Authorization token.
3
Paste the credentials
In Qonversion, create a webhook. Paste the Webhook URL into the Webhook URL field and the Authorization token into the Header Authorization-Token Value field.
Test with sandbox events
After the integration is connected, Qonversion sends sandbox events to Appstack automatically. You do not need any extra configuration. Sandbox events show only on the SDK page in the Development environment, so they never mix with your production data.- Make a sandbox purchase. Install a build of your app that includes the integration, then start a trial or make a purchase with a sandbox account, such as an App Store sandbox tester or a Google Play license tester.
- Open the Development environment. In Appstack, select SDK from the side menu, make sure the correct application is selected, then select the Development environment.
- Check the event. Find the Qonversion event in the list, for example
qo_trial_started. This confirms that events reach Appstack. Open View parameters and confirm that the event contains theappstack_id.
List of events
Below is a list of events you can forward to ad networks and analytics tools to optimize your campaigns.| Name | Definition |
|---|---|
qo_trial_started | Fired when a user begins a free trial. |
qo_trial_qualified | Fired when a free trial is still active two hours after it started, meaning the user did not cancel within the qualification window. |
qo_trial_converted | Fired when a free trial converts to a paid subscription, on the first renewal after the trial ends. |
qo_intro_started | Fired when a user begins an intro offer: a paid trial at a discounted price. Triggered when a subscription starts with the intro period type. |
qo_trial_intro_started | Fired when either a free trial (qo_trial_started) or an intro offer (qo_intro_started) starts. The event triggers as soon as one of these conditions is met. |
qo_trial_intro_qualified | Fired when a free trial or an intro offer is still active two hours after it started. |
qo_initial_purchase | Fired when a free trial, an intro offer or a full-price subscription starts. The event triggers as soon as one of these conditions is met. |
qo_initial_purchase_qualified | Fired when a free trial qualifies (qo_trial_qualified) or a paid subscription starts, intro offers included. The event triggers as soon as one of these conditions is met. |
qo_subscription_started | Fired when a user starts a paid subscription at full price, with no trial or intro offer involved. |
qo_subscription_renewed | Fired on each successful renewal of an active subscription. Indicates the user was billed again and remains subscribed for another period. |

