How can we improve WHMCS?

Share, discuss and vote for what you would like to see added to WHMCS

Change how upgrade/downgrade amount works when changing billing cycle

  • Dennis Skov Hermannsen shared this idea 3 years ago
  • Payments/Billing

If you've configured your WHMCS products with monthly, semi-annually and annually billing periods where semi-annually and annually is priced with a discount, WHMCS will not take this into account when clients up- or downgrade.

User has a product that costs 100 monthly, 500 semi-annually and 900 annually. Client has paid for annual renewal of this product today (costs 900).
User wants to upgrade to a higher tier that costs 200 monthly, 1100 semi-annually and 1900 annually.
Having paid 900 already, the upgrade to the higher tier would cost them 1000 if they don't change the billing cycle.
If they change the billing cycle to monthly, they are charged 1454.84.

This makes no sense to me as the client has already renewed their hosting product for a year.

The upgrade/downgrade price should show the price for the current billing period. Only once the product is renewed, it should be charged whatever the monthly price is (in this case, 200).

This works the other way around as well - upgrading from monthly to annually will show the customer a lower price than it's supposed to.


Login to post a comment.

To address the issue of incorrect upgrade/downgrade amounts when changing the billing cycle in WHMCS, you need to customize the calculation logic. This ensures that clients are charged appropriately based on the billing cycle they are upgrading or downgrading to.
upgrade/downgrade is useless. My customer got credited funds to their account for an upgrade that is 9 months out from renewal. They got credited for a more expensive service. They get an upgrade and pay less for the year than what they upgraded from. This is crazy.
this is one of the reasons i don't use the upgrade features in whmcs. I'd preferred client to open ticket with the billing department for this upgrade invoice

its unfortunately that whmcs are not taking this bug serious