Here's an example scenario that makes this essential:
1. Customer purchases a free plan set for $0 / year
2. Later that day, customer upgrades to a plan that costs $150 every 3 years (and $75 / year)
3. WHMCS will bill the customer for $50 to finish out that first year, then renew it at $150 a year later for the following 3 years
This calculation is accurate. However: if the client changes their mind and, upon renewal in 1 year, decides they want to switch it to annual payments, they've now only paid $50 for 1 year of hosting, even though that should have cost them $75.
This is why we should have the option to 'apply new payment cycle upon upgrade'
If this is done, then upgrades applied to the above example work like this:
1. Customer purchases a free plan set for $0 / year
2. Later that day, customer upgrades to a plan that costs $150 every 3 years (and $75 / year)
3. WHMCS will bill the customer for $150 and set the plan renewal to 3 years later.
Now this is obviously a simplified example because the upgrade is same day. Here's an example where the upgrade is 6 months in to the original plan:
- Customer purchases a plan for $30 / year
- 6 Months later, customer upgrades to a bigger plan that costs $150 every 3 years. This makes for 50% of the old plan/cycle to credit, and 83.33% of the new plan/cycle to pay
- WHMCS upgrade invoice line item 1: $125 [Calc: $150 * 83.333%]
- WHMCS upgrade invoice line item 2: -$15 [Calc: $30 * 50%]
- WHMCS upgrade invoice total: $110
- WHMCS will also set the plan renewal to 3 years after the original plan began: 30 months later.
This way customers can't abuse the upgrade system by selecting a cycle change and then not sticking with their intended cycle, because they're required to pay for the full cycle upon upgrade.
1 Comment
Login to post a comment.
1. Customer purchases a plan set for $65 / year
2. Later that day the customer wants to upgrade to a higher plan, but also change its billing cycle to quarterly. The quarterly price on the plan is $55 / quarter
3. WHMCS will bill the customer $55 * 4 (to complete the remaining year on the new plan) @ $220. This occurs even when the plan is cheaper when paid annually, so they don't get any of the advantages of the annual pricing. Our annual pricing on this plan is $140 so they just paid $80 more than they should have.
As described above, WHMCS should change the upgrade calculation so that it switches to the new cycle immediately. Here's how that would change things for the better with the same scenario:
1. Customer purchases a plan set for $65 / year
2. Later that day the customer wants to upgrade to a higher plan, but also change its billing cycle to quarterly. The quarterly price on the plan is $55 / quarter
3. WHMCS *should* add a credit on account for $10 (if credits during upgrade/downgrade is enabled)
4. WHMCS *should* change the plan renewal to be 3 months later rather than 1 year later.
This makes way more sense than the current calculation, and it resolves both cycle change abuse from customers, and cases where the cycle change can disadvantage the customer.