This article applies to Contextual Commerce. (Looking for Classic Commerce documentation?)
After performing an upgrade, downgrade or other changes to a subscription plan via the Dashboard, you will have the option to charge or credit the customer for the prorated difference between their current subscription plan and the new plan, via the PRORATE command.
- If you want the changes to wait until the next billing period to take effect, do not click the PRORATE command.
- If you want the changes to take effect immediately and you want to charge or credit the customer for the prorated difference, click PRORATE. The calculations for the prorated adjustments will be shown on the next page, and you can click CONFIRM to confirm you want to make the adjustments, or click CANCEL to cancel the proration (not the subscription).
Note about upgrades and downgrades via the FastSpring API
Proration handles the increase or decrease to the subscription price when a price changes during any period of a subscription. FastSpring refunds what your customer did not use from their original subscription plan (based on the number of days remaining before renewal) and then immediately charges your customer for the remaining days of the new plan. For example, changing from a $50 yearly plan to a $100 yearly plan on month 6 of the current year, results in a significant difference that will not be captured for another 6 months. By using the PRORATE option, FastSpring refunds $25 to the customer (for the six months out of the twelve months that were unused) and charges $50 afterwards (for the six remaining months of the $100 yearly plan).
The screenshot image below illustrates another (separate) example of proration, where the subscription plan has been changed from $14.95 per month to $79.99 for six months.
While the prorating functionality is not usually necessary or recommended for subscriptions that are one month long or less, it can be important for subscriptions that have either different periods or frequencies, or subscriptions that are longer than one month.
The Prorating Process for Subscriptions
The process of creating prorated adjustments happens automatically when you click PRORATE. The process consists of the following steps:
- Refunding the Unused Portion of the Old Subscription
- Determining the Next Renewal Date for the Subscription
- Creating a Charge for the Remaining Portion of the New Subscription
Refunding the Unused Portion of the Old Subscription
FastSpring will refund a portion of the old subscription plan by multiplying the old subscription plan price by the ratio of unused days left on the subscription plan to the total days in the period of the subscription. For example, if the old subscription was purchased on January 1 for $10 per month and a change was made on January 16 to a new yearly subscription, then we will refund $10 * (16 /31). Additionally, the shipping price will also be prorated.
Although proration does not work automatically for managed / ad hoc subscriptions because you can only prorate if the subscription has a renewal date, you can still create prorated adjustments prorate by giving a refund manually. Automatic proration, however, can only happen when changing from a normal subscription to a managed subscription, and not the reverse.
Determining the Next Renewal Date for the Subscription
The next renewal date for the subscription depends on whether the new subscription is the same length, longer, or shorter than the old subscription plan.
Same Length Subscriptions
If the period length for the old subscription and the new subscription plans are the same, the renewal date will not change. Additionally, if the subscription was altered by changing the quantity, etc., the renewal date will not change.
New Subscription Period is Longer than Old Subscription Period
If the new subscription period length is longer than the old subscription period length, the renewal date gets extended by the difference in plan. For example, if the old subscription was weekly and began on January 1 with a renew date of January 8, and the new subscription is monthly, the renewal date will be extended to February 1, which is one month from the initial date of the original subscription plan. Future renewal dates will remain based off of the purchase or previous renewal date, but will continue to extend by the new time period length.
New Subscription Period is Shorter than Old Subscription Period
If the new subscription period length is shorter than the old subscription period length, and it is longer into the current subscription than the new subscription length, then the renewal date becomes the date the change is made and the next renewal date will be based off of the length of the new subscription plan. For example, if the old subscription was monthly and began on January 1 with a renewal date of February 1, and a new weekly subscription was put in place on January 15 (two weeks into the period), the renewal date will become the date the subscription plan changes (in this case January 15), and the next renewal date will be one week later, or January 22.
If the new subscription period length is shorter than the old subscription period length, and it is not longer into the current subscription than the new subscription length, then the subscription is made shorter. For example, if the old subscription was monthly and began on January 1, with a renewal date of February 1, and a two week subscription was put in place on January 7 (after one week), then one week will remain in the new subscription period, and the renewal date will be at the end of that week, or January 15.
For pricing and discounts, the period will be considered the First Period if the second period of the old subscription has not yet occurred at the time of the change.
Creating a Charge for the Remaining Portion of the New Subscription
If the old and new subscription plans have the same period length or if the new subscription period is longer than the old subscription period, then the charge for the new subscription plan is calculated by multiplying the new price by the ratio of unused days left on the new subscription to total days in the period of the new subscription. For example, if the old subscription was created on January 1 as a monthly subscription plan, and a change was made on January 16 to a new $100 per year subscription, then the new charge would be $100 * (365-16)/365.
If the new subscription period is shorter than the old subscription period, then the charge will be the full price plan for the new subscription.
Note about declined charges
Understanding Period Start and End Dates with Proration
Subscriptions are based completely on three dates: Entry, Period Start and Period End.
- Entry: This is when the entry was made, and it is from this date that we calculate the amount.
- Period Start: The original start date. This will be the same as the Entry date, except if prorations were made throughout the period.
- Period End: The date the period ends. It is to this date that we calculate the amount. The Period End date + 1 will be the Period Start date for the next entry.