Skip to main content

Documentation Index

Fetch the complete documentation index at: https://documentation.qonversion.io/llms.txt

Use this file to discover all available pages before exploring further.

1. View Test Data

You can see the test data in Qonversion by switching the Sandbox mode toggle on the right side at the top in Qonversion Dashboard . While using this mode, you will see the Test Mode label at the top of all the dashboards. Remember to switch it off when you have finished testing.
Make sure to use a device (not a simulator) when testing iOS purchases.
With Qonversion SDK initialization, you can set the environment to distinguish sandbox and production users.
let config = Qonversion.Configuration(projectKey: "projectKey", launchMode: .subscriptionManagement)
config.setEnvironment(.sandbox)
Qonversion.initWithConfig(config)
Do not use the sandbox environment in production. Set the production environment before releasing your app to an app store.
Please note that sandbox subscriptions renew at an accelerated rate and will auto-renew 6-9 times before the user is unsubscribed. This lets you test how your app handles subscription renewal and expiration states.
Subscription DurationApple Test Subscription RenewalGoogle Test Subscription Renewal
1 week3 minutes5 minutes
1 month5 minutes5 minutes
2 months10 minutes
3 months15 minutes10 minutes
6 months30 minutes15 minutes
1 year1 hour30 minutes

2. Send Test Events to the Integrations

You can test an integration by sending test events to it. Navigate to the integration you want to test and switch on the Send sandbox events toggle. Remember to turn it off once you have completed the testing to avoid having mixed sandbox & production data in your integration.

3. How Sandbox and Production Data Are Organized

When you toggle Sandbox mode in the dashboard, only some of the data you see switches with it. Understanding how each object is scoped helps avoid surprises while testing:
ObjectScope
Qonversion ID (identifier)Findable from either environment; the same ID exists in both
Products, Entitlement definitionsProject-wide; configured once and visible in both environments
Entitlement grants, Subscriptions, Purchases, Events, Devices, RevenueEnvironment-scoped; tracked separately in sandbox and production
A single Qonversion ID can therefore have separate sandbox and production records underneath. The user-level identifier is shared, but the per-environment data (entitlement grants, subscriptions, events, devices) is recorded against the environment the user was active in. A few practical consequences:
  • Customers list: Built from transaction events (trials, subscriptions, one-time purchases, renewals). A newly created user with no events does not appear in the list until they trigger their first event. Use the customer search to look up such users directly.
  • Customer search: Finds users by exact Qonversion ID, identity, or email regardless of the Sandbox/Production toggle, because the Qonversion ID is unique per project across environments.
  • Customer Profile: The Qonversion ID and identity stay the same as you toggle, but the subscription widget, customer history, and entitlement grants reload from the environment selected by the Sandbox mode icon in the top bar.

4. Testing Checklist

☑️ Make sure you can see test trials and subscriptions on your Qonversion Dashboard. If you see the test subscriptions, your integration with the subscription provider (App Store, Google Play, Stripe) is correct. Qonversion adds purchases to dashboards after validating them with Apple, Google, or Stripe. If you can’t see any test subscriptions with Sandbox mode turned on after making a purchase, check the App-Specific Shared Secret for the iOS app, Service Account Key for the Android App, or Stripe Sandbox your project settings. ☑️ Check your test events have been delivered to your integrations. Make sure to turn on the Send sandbox events toggle in the integrations you want to test before purchasing. You can see the last events sent to active integration in the Events Dashboard on the left side menu. You can see the status of each event by clicking on it. Make sure that the event was delivered. In case you see an error message, check your integration settings.
Users and Access Troubleshooting