Feature Requests
Share ideas, discuss and vote on requests from other users in community
This object is in archive! 

Charge Full Amount on Upgrade

Kevin Troendle shared this idea 6 years ago
Under Consideration

When a user upgrades it should charge (or at least admin option) the Full Amount of the new Product/Tier minus the current product unused amount.

This forum topic talks about this as well:


For example:

Product A

- $10

- 100mb

Product B

- $100 - 100mb

If user upgrades to product B on the last day of monthly cycle.

They "amount due today" would only be $3.61

We need the "amount due today" to be $98.30

We don't want to allow access to the new tier without paying for

the full amount of the new tier.

In more detail:

1. An an option so that if a user upgrades it can charge a full cycle amount on the new package and set next due date to 1 cycle from today

2. And oppositely if a user downgrades, then just credit the difference back and keep the next due date the same.

Comments (8)


Yeah agreed 100%.

Please can you relook at the Upgrade process WHMCS, because it is a little outdated now. It was ok in the early days for hosting only products, but with other products now and hosting as well, it needs a rethink please.

Kevin explains it well in his one line "We don't want to allow access to the new tier without paying for the full amount of the new tier."

New service - Old service = difference

It doesn't matter when during the month the upgrade occurs, if they upgrade it means they started the month on the wrong plan.

We requested this 2 years ago when you had the "Charge Full CycleTick this box to charge a full cycle on upgrades/downgrades of this product".

Which means you considered it already.

Please relook at the entire upgrade process and revise it.

This was our previous request, the feature request we submitted has gone missing:


Hi there,

Please can you check your upgrade calculation for products. Before dismissing this query, please carefully consider what I am getting at.

I understand that technically your calculations are correct, but you are missing a major factor of how the hosting business model works.

If we go to "Setup" > "Products/Services" > "Edit Product" > "Upgrades" and then select "Charge Full CycleTick this box to charge a full cycle on upgrades/downgrades of this product"

(We understand this was added there by WHMCS in error and has been removed, but please reconsider and add it again).

The explanation of "charge a full cycle on upgrades/downgrades of this product" seems to be correct, however the calculation seems wrong.

Our understanding is this: It should charge the difference of the old product "full cycle" and new product "full cycle". Eg. New Products is $9 and old product was $5, it should charge $4 (upgrade) regardless of when during the month the upgrade occurs.


We also understand without the "Charge Full Cycle" option ticked that is works like this (which is not what we want either):

Old Product/Service: Price Per Day * Number of days until next due date = Amount Credited

New Product/Service: Price Per Day * Number of days until next due date = Amount Debited

Total Payable Today = Amount Debited - Amount Credited


The pro-rata amount is correct for certain models and good for new signups, however not for upgrades. It may be in some cases. So good to have the option to enable or disable.

Because, if a client exceeds their monthly product quota (or they are about to) they need to upgrade, meaning the plan they were on for that month was in fact the wrong one, and they should have been on the next plan from the very beginning of the month.

Please consider what I have written above carefully, as we have put a lot of thought into it, and it is correct.

We simply need the "Charge Full Cycle" option to calculate exactly that, the "Full Cycle" and no pro-rata amounts.

This is simply achieved by charging The "Full" Difference during an upgrade.



Also we requested another feature also to do with upgrades a long time ago, as follows:



Under "Setup" > "Products/Services" > "Products/Services" > "Upgrades" > "Packages Upgrades" please can you include the package that has been selected in the Upgrade list.

If a client is on a monthly billing cycle for example, and they want to change it to annual billing, they need to ask us to change it. If the above suggestion was implemented it would solve this. Unless we're missing something and there is another way of doing this.



All these topics relate to it:




I need it.


I need too !


Then entire upgrade and downgrade process and prorata billing versus full cycle billing versus upgrading between monthly and annual cycles all make too many assumptions "for all business models" and need to all be re-looked completely please.


Either, me too


Any update on this one please?

Just to clarify:

Package Upgrade calculation (full price option in addition to existing pro-rata calculation).

It needs to be New service - Old service = Difference regardless at what time of the month it is upgraded on.

For Annual Billing Cycle it should refund unused months (which "INCLUDES" the current month) and then start the new upgrade fee from the "BEGINNING of the current month" (not a pro-rata of that month).


The new version of whmcs is realease but this feature not added ! :-(