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

Allow clients to upgrade products that are not "Active"

myworksdesign shared this idea 2 years ago
Under Consideration

We're seeing a really frustrating issue with products and upgrading, that has to be very common with other WHMCS issues.

For example, we have a free trial product (for 7 days) that a user orders. During that trial, we work with them to convince them to upgrade to a paid product in WHMCS.

The problem is that, once the trial expires, they can't upgrade. This is very counterintuitive, as with any other SaaS/trial out there...you can upgrade at any time - regardless of if your "status" is expired or not.

We're working on building custom php code/hook to mark the product status as active in the meantime, but we seriously request WHMCS to give US control of what product statuses are eligible for upgrade, instead of just mandating that only active products can be upgraded.

A fantastic example of this is upgrading a product in the admin... It seems that when you upgrade a product in the admin...it doesn't matter if the product status is Cancelled or Terminated...it still lets you upgrade!!

Comments (3)



Thanks for your suggestion.

I'd be interested to learn about the particular workflow you are using which results in the free trial product not to automatically be set to active once it's been provisioned. As soon as the client signs up and their free trial is provisioned, I'd expect it to be active, so that an upgrade order could be placed.

Your observation that staff can place upgrade orders regardless of status is correct. Indeed staff can perform many tasks that clients cannot, as they have a higher duty of care and greater understanding of the consequences of such changes.


Thanks John - appreciate it! We have a lengthy ticket on this internally with you guys - mostly chatting with Lawrence. (HAH-057415)

The core issue here pertains to the trial we're issuing. Say we issue a trial for 7 days that is set to auto-terminate after 7 days. For example, if the customer upgrades to the paid version inside WHMCS on Day 3 - no problem, all good.

However, if they've ignored our messages to upgrade, like many do, and realize it's expired on Day 8, and need to upgrade - it puts us through a horrible workflow. If we want them to be able to upgrade on their end - since they can't upgrade an expired product at the moment, we have to manually reactivate it in the admin - then tell them they can upgrade. However, if they don't upgrade before the next WHMCS cron run - then the WHMCS cron will suspend the product again, as it should - since it's past the 7 day trial window.

All in all - it just doesn't make sense. Customers should be able to upgrade a non-active product, and you can see above the confusion it causes when they can't.

Because of this, we're having to currently build a totally custom WHMCS page to send our users to to upgrade their product via the WHMCS internal API - this is really causing a headache.


+1.. most of my clients sign up for the free trial... but because of their non-profit governance nature it often takes them longer than the trial to get approval for the purchase and payment. Currently, I have to tell them to open a support ticket, so I can do this manually. It would be much better if suspended products could still be upgraded from the client side.