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:
- How do we configure levels, as my naive assumption would be that 25GB would be in a higher level than 10GB, independent of duration?
- 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?