Skip to main content

Create subscription group

A subscription group contains multiple subscriptions with different access levels, prices, and durations so users can select the option that best fits their needs.
A user can only buy one subscription within a group at a time.

Configure a subscription group on IAPHUB

In order to configure a subscription group you must first create it on IAPHUB.
Give the group a name (can be edited at any time) and add the products to the group.

Configure a subscription group on Itunes

On itunes each subscription you offer must be assigned to a subscription group.

You should arrange your subscriptions in order from the one that offers the most (level 1) to the one that offers the least.
The order is very important because it'll determine if the subscription replace is an upgrade/downgrade or crossgrade.

For example:

  • If the user change its subscription from level 2 to level 1, it'll be an upgrade.
  • If the user change its subscription from level 1 to level 2, it'll be a downgrade.
  • If the user change its subscription to another one having the same level, it'll be a crossgrade.
info

If the user has an active subscription, the user will be able to change its subscription (to a subscription of the same group) directly from the App Store settings.


Subscription upgrade

The current active subscription is replaced immediately and the user receive a refund of the prorated amount of the previous subscription.

info

The Get user API route will return the new subscription in the activeProducts property and a subscription_replace webhook will be triggered.

Subscription downgrade

The new subscription will be replaced at the next renewal date.

info

The current active subscription available in the activeProducts property of the Get user API route will return the new product in the subscriptionRenewalProduct property.
On the renewal with the new subscription the subscription_replace webhook will be triggered.

Subscription crossgrade

A subscription crossgrade depends on the duration of the new subscription.

  • If the new subscription has a different duration it'll be the same as a subscription downgrade, the new subscription will be replaced at the next renewal date.
  • If the new subscription has the same duration it'll be the same as a subscription upgrade, the new subscription will be replaced immediately.

Configure a subscription group on Google Play

The Google Play Console does't have any "Subscription group" system. No need to create a group on the Google Play Console.
The IAPHUB SDK will handle it automatically based on the groups configured on the IAPHUB dashboard.

There is also no upgrade/downgrade/crossgrade concept, by default the subscription will be replaced immediately and the remaining time will be prorated and credited to the user (but it is possible to change the default behavior by providing a different proration mode to the IAPHUB SDK).