Scenario:
On the 1st of May, the user begins his subscription at 25€/month. On the 15th of May, he switches to an upgraded subscription at 50€/month. He is immediately invoiced 12.5€ (25€ difference - 12.5€ unused time) I believe.
I would like the user to pay the full 25€ difference while keeping the billing period the same.
How could I remove the "Unused time" from the equation? Is there a simple way?
Additionally, if the user downgrades, it would be optimal if the user receives no credit to his account.