I use the following code to upgrade/downgrade subscriptions. It works fine on Android but iOS is not playing ball. When I upgrade/downgrade a test subscription, nothing happens. What could I be doing wrong?
if (Platform.isAndroid) await Purchases.purchasePackage(myPackage, upgradeInfo: old_SKU);if (Platform.isIOS) await Purchases.purchasePackage(myNewPackage);
As documentation says there is no change to the code for new purchase and upgrade/downgrade scenario in iOS. So why is no change to the subscription happening please?
Best answer by tinaView original
Upgrades/downgrades happen on iOS when the new product is on a different subscription group compared to the current one. Note that Android does not have a concept of subscription groups, so any product changes will happen immediately (if you’re using the
IMMEDIATE_WITH_TIME_PRORATIONmode). Are the products you’re attempting to change into on a different subscription group? This would be handled in App Store Connect.
For additional reading:
Thanks, I get a little clarity now. But I am still facing some confusion. Here is the setup on my appstore connect. I cannot find a way to create another subscription group, currently all 3 subscriptions are under the same group as shown in the pic below…
So if I understand correctly, I need to re-create these 3 subscriptions, under 3 different subscription groups and not just one as in the case above if I want the user to upgrade/downgrade between subscriptions.
Is it correct?
Also by doing this, the system will ONLY allow one subscription to be active at any one time! Hope I get this right….
Please ignore the above. After playing around a bit I managed to create 3 Subscription Groups with subscription each. I may be missing the point here but when upgrading/downgrading I now have 3 subscriptions, all active at the same time.
Sorry for the delay, this got lost in my inbox. I saw that you opened a similar thread and one of my colleagues replied:
If the products are in the same subscription group, this will perform a crossgrade. If the subscriptions are the same duration, the new subscription begins immediately. If the durations are different, the new subscription goes into effect at the next renewal date.
With the issue you’re seeing that all subscriptions are active at once, this bug has been reported to the engineering team to take a look.