Missing Domain Renewal Invoices

Problem

You may encounter a problem in which the system does not generate an invoice for a domain renewal.

For troubleshooting steps for service invoices, see Missing Service Invoices.

Cause

This issue may be due to an issue in the domain’s configuration, a previous invoice, or a problem with the system cron.

Troubleshooting

To troubleshoot this issue, check your domain renewal settings, the domain’s status, and the next due date. If none of these are the issue, check to ensure that the domain did not already have an invoice and that the cron ran successfully.

Disable Auto Renew

To check whether the problem is due to your domain renewal settings:

  1. Go to Clients > Domain Registrations and click on the domain that did not generate a renewal invoice.
  2. In the Management Tools section, find Disable Auto Renew.

If Disable Auto Renew is set to YES, automatic renewals are disabled and the system will not automatically generate an invoice.

If Disable Auto Renew is set to NO, this setting is not the issue.

Solution

To resolve this, set the toggle to NO and save the change. The system will generate the renewal invoice the next time that the daily automation cron tasks run.

Domain Status

To check whether the problem is due to your domain renewal settings:

  1. Go to Clients > Domain Registrations and click on the domain that did not generate a renewal invoice.
  2. Find Status.

A domain record will not generate a renewal invoice if Status is anything other than Active.

If Status is set to Active, this setting is not the issue.

Solution

Select Active and save the change. The system will generate the renewal invoice the next time that the daily automation cron tasks run.

Next Due Date Beyond Invoice Generation Days

To check whether the problem is due to your invoice generation settings:

  1. Go to Configuration () > System Settings > Automation Settings.
  2. Find Invoice Generation and note the current settings.
  3. Go to Clients > Domain Registrations and click on the domain that did not generate a renewal invoice.
  4. Find Next Due Date and compare it with the Invoice Generation settings. For example, if today is January 1st, Invoice Generation is 14, and Next Due Date is January 15th, the invoice will generate tomorrow.
    • If the Next Due Date value is further in the future than the Invoice Generation value specifies, the system will not generate the invoice yet.
    • If the Next Due Date value is within the number of days that the Invoice Generation value specifies, this is not the issue.

Solution

If the Next Due Date is too far in the future to have generated an invoice, you can generate the invoice early.

For more information, see Create a Renewal Invoice Early.

Previously Invoiced

A domain record will not automatically generate a renewal invoice if the system has already generated a renewal invoice for the current Next Due Date value and an admin deleted it.

To check for this issue:

  1. Access the WHMCS MySQL® database using your preferred method (for example, phpMyAdmin).

  2. Run the following query:

    SELECT * FROM tblinvoiceitems WHERE relid='x' AND (type='Domain' OR type='DomainRegister' OR type='DomainTransfer') AND invoiceid NOT IN(SELECT id FROM tblinvoices)

    Replace x with the domain ID, which you can find next to the domain in the client’s Summary tab.

The query should return an empty result.

If there are any results, this indicates a deleted renewal invoice.

Solution

Review the Log tab in the client’s profile for any Invoice Deleted or Order Deleted entries. This will identify who deleted it and the time of deletion.

To resolve this issue and generate a new invoice:

  1. Go to Clients > Domain Registrations and click on the domain that did not generate a renewal invoice.
  2. Set the Next Due Date value to one day earlier.
  3. Click Save Changes.

The system will generate the renewal invoice the next time that the daily automation cron tasks run.

Daily Automation Cron Issue

The daily cron job handles invoice generation, payment reminders, and account suspensions and terminations according to your automation settings. If some of these do not occur, the cron job may not be running successfully.

Review Configuration () > System Logs and make sure that you see a number of entries beginning with Cron Job each day. The final entry every day should be Cron Job: Completed.

For more information and troubleshooting steps, see Check the Cron Job Status and Troubleshoot the System Cron.

Last modified: June 11, 2024