Jump to content

Admin - Handling upgrades of Configurable Options with an unpaid invoice

Recommended Posts

TLDR: Is there a hook that can temporarily push out the Next Due Date of a product when upgrading Configurable Options if the product has an unpaid (but not overdue) invoice.

We often perform upgrades via Admin for products with Configurable Options that have an unpaid invoice (but not overdue) because we issue invoices 14 days before the end of the month. The upgrade is allowed in these circumstances from Admin but the existing Next Due Date for the product is used on the upgrade invoice rather than what the Next Due Date would have been if the product's invoice had been paid. Therefore, we are missing out on billing the customer for the upcoming month's component of the upgrade.

We think that if the upgrade for an unpaid service is allowed then it should include the upgrade for the following month's service on the upgrade invoice (which the base product has been invoiced for already).

Here is the response from WHMCS support:


The current workflow for upgrade invoicing works in a way to keep the next due date the same as before the upgrade. So it is expected that upgrading any component (configurable options) of a service will generate the invoice only till the existing next due date. This is why the system prevents the customers from generating an upgrade order if there is already a pending invoicing existing in the system for that service.

This same restriction does not apply to admins and they can place an upgrade order even if there is a pending invoice. However, the invoice will still be generated as per the current next due date. So it is NOT recommended to place an upgrade order if there is a pending invoice. However, if you still want to proceed with the same work flow, then the admin user will need to update the pending invoice with the new updated price as well once the upgrade invoice is generated/paid.

Currently to handle this scenario we are manually changing the Next Due Date on the product out by 1 month, performing the upgrade and then restoring the previous Next Due Date. It only needs to be done if the product has the next month's invoice created but unpaid. Does a hook exist to handle this scenario?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated