How to cancel a service for your clients using WHMCS


Written by Dennis Nind

Last published at: February 8th, 2019

Cancelling a Service

Auto Terminate/Fixed Term

You can setup products to automatically terminated after a set number of days from the date of signup. For more information refer to Configuring Products/Services.

Clients Self Service

WHMCS can completely automate the process of product cancellation or wait for manual confirmation. To do this navigate to Setup > General Settings > Other and enable the Show Cancellation Link option. Clients can then request cancellation of any of their products & services directly from the client area. To fully automate cancellation and have the module terminate command run (for example to remove the hosting account from the server) tick the Setup > Automation Settings > Cancellation Requests option. Now when the cron runs any services with a cancellation request due today will be removed from the server and the status changed in WHMCS to Cancelled. The process runs as follows:

  • Client clicks Request Cancellation button on the product details page in client area
  • They're prompted to provide a cancellation reason and provided 2 choices for the cancellation - either Instant (on next cron run) or at the End of the Current Billing Cycle.
  • If a matching domain exists under the client's account in active status with Auto Renew enabled, the customer is given the option to disable auto renew too - thereby leaving the domain to expire.
  • Any unpaid invoices for the product will be cancelled (if enabled)
  • A notification email is sent to administrators and you will be able to review the reason provided in Clients > Cancellation Requests.

Manual Cancellation

If the Cancellation Request setting is not enabled then at this point you must navigate to the cancellation requests page, click through to the service page and click the Terminate module command button to remove the account from the server. The cancellation request is then moved from the Open Requests page to Completed Requests.

Automated Cancellation

If the Cancellation Request setting is enabled the cancellation request will be actioned when the daily automation cron runs on the appropriate day. For example if the Immediate option was selected it will be terminated on the next cron run, if End of Billing Period was selected it will be terminated when the cron runs on the service's Next Due Date.

Admin Scheduled Cancellations

As an admin user, you can schedule the termination of a product at the end of the currently active period by going to the Products/Services tab, ticking the Auto-Terminate End of Cycle option and optionally entering a reason/note for it. Any unpaid invoices for the product will be cancelled and will suppress any further renewal invoices from generating for this product and terminate it when the next due date is reached. The "Cancellation Requests" setting in Setup > Automation Settings must also be enabled.

Admin Immediate Cancellation

Finally, if you want to cancel or terminate a product or service immediately then you simply need to locate the item you wish to cancel, and from the Products/Services page, click the Terminate button if the product is linked to a module or if not, manually change the dropdown status from Active to Cancelled. Once you've done this, no further invoices will generate for the item.