Skip to main content
Solved

Understanding basics. Best practise to upgrade an iOS subscription

  • November 9, 2021
  • 4 replies
  • 670 views

Forum|alt.badge.img+6
  • Helper
  • 7 replies

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 tina

Hey @DEE 

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. 

View original
Did this post help you find an answer to your question?
This post has been closed for comments

4 replies

tina
RevenueCat Staff
Forum|alt.badge.img+10
  • RevenueCat Staff
  • 338 replies
  • November 12, 2021

Hey @DEE 

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_PRORATION mode). 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:


Forum|alt.badge.img+6
  • Author
  • Helper
  • 7 replies
  • November 15, 2021

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…

 

 

and…

 

 

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….


Forum|alt.badge.img+6
  • Author
  • Helper
  • 7 replies
  • November 16, 2021

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.


tina
RevenueCat Staff
Forum|alt.badge.img+10
  • RevenueCat Staff
  • 338 replies
  • Answer
  • November 22, 2021

Hey @DEE 

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. 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings