Skip to main content
The Qonversion SDK manages in-app purchases across platforms so you do not store App Store or Google Play product IDs and prices on the client. To promote products from the Qonversion dashboard, first configure Products and Entitlements in Qonversion. Qonversion gives you two ways to decide which products to show:

Local cache

The Qonversion SDK caches product and entitlement data, so the list stays available when the internet connection is lost or the server is delayed. On every app launch the SDK also requests the current SKProduct / storeDetails from the App Store or Google Play to keep prices and product data up to date.

Get the list of available products

Call the products method to fetch every product configured for your project. The method returns a dictionary keyed by Qonversion Product ID; each value is a Qonversion.Product object.
The callback (or return value) provides:
  • productsList — a dictionary of available products, keyed by Qonversion Product ID (for example, main). Values are Qonversion.Product objects.
  • error — the error, if the request failed. On callback-based platforms the products dictionary is empty when error is set.
The products method returns only products you configured in the Qonversion dashboard. It does not create products in the stores, and it does not return App Store or Google Play products that are not linked to a Qonversion Product.

The Product object

Qonversion.Product exposes the fields below. Fields marked iOS only or Android only are nil/null on the other platform.
These fields are deprecated. Use the replacement field listed for each — new integrations should not read these.

How to check trial and introductory offer eligibility

You can check whether a user is eligible for an introductory offer, including a free trial, before showing a price. Eligibility is computed differently per platform:
  • iOS — a user is eligible if they have not previously used an introductory offer for any product in the same subscription group.
  • Android — eligibility is computed from the store details. If the Google Play Billing Library returns any trial or intro offer as a possible purchase option for a product, the user is eligible for it.
Show only the regular price to users who are not eligible for an introductory offer. Use checkTrialIntroEligibility to determine eligibility: