Skip to main content
Question

Best practice for managing level upgrade with lowering duration

  • October 12, 2022
  • 1 reply
  • 79 views

Forum|alt.badge.img+3

There is good explanation on how upgrades/downgrades work on the Revenuecat blog here. I however seem to be missing the case where the user upgrades in terms of a level and lowering the duration (at the section Upgrading Service Levels there is a description of moving to a higher level and a longer duration). As an example:

 

Example

> A user has a current subscription with 10GB of storage and with a 1 year duration.

> The user now wants 25GB with 1 month duration.

 

My question here is twofold:

  1. How do we configure levels, as my naive assumption would be that 25GB would be in a higher level than 10GB, independent of duration?
  2. If my assumption is correct how do we get around the situation where the following happens:

Allowing the user to move to a higher level with shorter duration may results in a large refund and subsequently to earlier cancelation of any overall. I assume this is not something we want. 

 

What is the best approach to handling this case?

This post has been closed for comments

1 reply

Forum|alt.badge.img+3
  • Author
  • New Member
  • 2 replies
  • October 12, 2022

My current approach would be to define the following levels:

  1. 50GB Year
  2. 50GB Month
  3. 25GB Year
  4. 25GB Month
  5. 10GB Year
  6. 10GB Month

For upgrades

Only allow the user to pick a higher level with at least the same duration. 

 

For downgrades

Allow any lower level

 

Drawback of such approach is that it requires code logic to make sure a user never upgrades to a shorter duration. 

 

If there are any better suggestions I’d be very happy to hear those.


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