Invoicing

From WHMCS Documentation

Revision as of 15:22, 18 November 2015 by John (talk | contribs) (Proforma Invoicing)

Automatic Invoice Generation

WHMCS automatically generates invoices for recurring products and services in advance of the due date.

You can configure exactly how far in advance invoices are generated in Setup > Automation Settings > Billing Settings. By default it is 14 days.

Using the "Advanced Settings', it is also possible to configure the number of days in advance to generate invoices on a per billing cycle basis.

The cron performs the generation each day so it is important you have the Cron Tasks configured.

Invoice Reminders & Notices

WHMCS allows you to send:

  • A maxmimum of 1 reminder prior to the invoice reaching the due date
  • Up to 3 overdue reminders once the invoice has passed the due date

You can configure when you would like these notices go out in Setup > Automation Settings > Billing Settings.

Creating Custom Invoices

You can also generate one-off invoices in WHMCS.

To do this, follow the steps below:

  1. Locate the client you wish to generate an invoice for
  2. From the client summary page, click the Create Invoice link in the Actions panel
  3. You will now be presented with a new blank invoice
  4. To add items to the invoice, simply enter a description and amount in the empty boxes at the bottom of the list of Invoice Items
  5. Once you have added all the items to the invoice, select the "Options" tab at the top - from here you can configure the payment method, invoice date and due date - on completion, click Save
  6. Finally, to send an email letting them know about the new invoice, select the email template that you'd like to send from the dropdown menu located on the invoice Summary tab and click Send Email. For remote payment gateways select the 'Invoice Created' email, for all others select 'Credit Card Invoice Created'.

Automatic Grouping of Items

WHMCS automatically groups products, services, addons and domains due on the same date, with the same payment method and by the same person onto a single invoice.

By doing this, it means the customer only receives a single invoice, only needs to make a single payment, and reduces transaction fees for you the merchant.

Should you have a client for which you do not wish this grouping to occur for, it can be disabled either by the Separate Invoices setting within a clients profile, or the same setting offered within client groups.

Creating Mass Pay Invoices

When enabled under Setup > General Settings > Invoices tab clients can pay several invoices in a single transaction, this is quicker and more convenient, plus it reduces your transaction costs. When enabled Pay Selected and Pay All options will be displayed on the client area homepage, they can be used to pay only certain invoices or pay all unpaid invoices respectively.

Staff can also create mass pay invoices under a client's Invoices tab by selecting the relevant invoices and clicking the Mass Pay button beneath.

A new invoice will be generated containing the invoice numbers of the original invoices (one invoice per line). The client should then pay this invoice and the credit will then be used to pay the original invoices.

The invoice will be displayed under the client's Invoices tab in the admin area, but will not be visible to clients. This ensures that a client doesn't see a massively inflated invoices balance, or a large invoice which consists of nothing more than a combination of other invoices. Additionally this prevents a client from creating a mass pay invoice, not paying it, and instead paying one of the original invoices, then going back and paying the mass pay invoice - effectively paying for the same thing twice.

Creating Add Funds Invoices

If enabled under Setup > General Settings > Credit Tab clients can deposit funds into their account, this will be stored in the form of account credit which can be used to pay for future purchases.

Staff can also create add funds invoices by clicking the Create Add Funds Invoice link under the client's Summary tab. This is particularly useful for charging a specific amount to a clients credit card.

Splitting & Merging

There may be occasions where you need to split certain line items that have been grouped into a single invoice out into an invoice of their own, for example if the client doesn't want to renew all the items that a particular invoice contains. To do this, simply follow the steps below:

  1. Begin by locating the invoice containing the line items you want to split
  2. Next, select one or more of the checkboxes on the line items you want to split out into a separate invoice
  3. Now in the dropdown immediately below the invoice items, choose the option Split to New Invoice and the page will reload on the new invoice containing those items
  4. You can then finish by clicking the Send Invoice Created button to notify the client should you wish

Similarly, you may find there are times you want to combine items which have invoiced separately into a single invoice and again WHMCS makes this possible. To merge invoices, follow the steps below:

  1. Merging can only be done from the clients invoice list within the client profile section so begin by searching for and loading the client summary page of the client you want to work with
  2. Once there, you need to select the Invoices tab
  3. Next, tick the checkboxes next to the invoices you want to combine
  4. And finally to complete the process, click the Merge button located at the bottom of the list
Watch Video Tutorial

Continuous Invoice Generation

Continuous Invoice Generation refers to whether invoices are created for items that are unpaid. It is best explained through the use of an example.

Take for example a hosting account paid monthly. The user places their order in January. They receive an invoice and they pay their invoice. In the following month, the user gets their next invoice and they pay that. Then in March, the user receives their invoice but they don't pay it because they no longer wish to use the account or simply because they miss the emails about it. With continuous invoice generation disabled, the user would not receive any further invoices until the March invoice has been paid. However, with continuous invoicing enabled, the user would receive invoices every month until the account is set to terminated, regardless of whether the item has been paid for or not.

With Continuous Invoice Generation enabled, any product that is Active, or Suspended will continue to invoice regardless of the status of its previous invoice(s). Pending, Cancelled or Terminated services will not generate invoices.

Enabling Continous Invoicing

To enable this feature, go to Setup > General Settings > Invoicing and tick the checkbox next to this setting. After enabling this option, if there are then users who are due invoices for months which have not yet been invoiced, there will be one invoice generated on each cron run for the user for the following days after enabling this.

Proforma Invoicing/Sequential Invoice Numbering

This feature is primarily aimed at EU based companies where for accounting reasons, it is sometimes necessary to ensure paid invoice numbers are sequential. This feature in WHMCS can of course be used by all though.

Enabling Sequential Invoice Numbering

  1. To enable this feature, begin by going to Setup > General Settings
  2. Then click on the Invoices tab
  3. Next, tick the box labelled "Sequential Paid Invoice Numbering"
  4. In the field below, you can then specify the format you want to use for the numbering - it doesn't just have to be a number - you could for example include your companies initials and the year to differentiate invoices for each year - eg. WHMCS2007-{NUMBER} - {NUMBER} placeholder gets replaced with that invoices number
  5. The final field allows you to set the next number to be assigned to an invoice. Each time an invoice is paid, the number increases by 1. You can alter the number here, such as when removing an invoice or at the beginning of a new year if you want to start at 1 again.

That's all there is to it! Sequential invoice numbering is now enabled and each time an invoice is paid, the next number in the sequence will be applied.

Proforma Invoicing

The sequential numbering is most often used in conjunction with proforma invoicing. Invoices will display the term "Proforma invoice" whilst in unpaid status unpaid and "Invoice" once paid. This can be enabled under Setup > General Settings > Invoices tab > Enable Proforma Invoicing'

Refunding Payments

If you are using a gateway in WHMCS that has automated refunds implemented (which includes PayPal, Authorize.net, Quantum Gateway, 2Checkout etc...), then WHMCS allows you to issue a refund without ever logging into your gateway. A real time saver!

Even if the refund can't be automated, you can still use this process to enter the refund billing entry into WHMCS which will update the income totals and reflect the refund on the invoice. Then you would go to your gateway and actually send the refund from there.

And as a final alternative you can issue a refund to the clients credit balance with you which instead of losing the money entirely allows you to just give the user a credit against future purchases or renewals from you.

So to perform a refund, simply follow these steps below:

  1. Locate the invoice you wish to issue a refund for either by searching or from Billing > List Paid Invoices and click the invoice ID to view it
  2. Select the Refund tab
  3. Choose the transaction you want to refund if more than one has been applied towards the invoice
  4. Enter the amount you want to refund if only giving a partial refund or leave blank for full
  5. Then select the Refund Type from the options "Refund through Gateway", "Add to Client's Credit Balance" or "Record Only"
  6. Tick the Send Email checkbox if you wish to send a refund confirmation email to the client, it contains useful information on the refund including the amount and refund type.
  7. Click the Refund button to submit

Notes

If "Refund through Gateway" is chosen, the results of the refund will then be displayed. If successful the relevant transaction entry will also be added. If it fails, you can check in Transactions > Gateway Log for the detailed response from that gateway as to why.

If refunding a payment that has been added to a clients credit then you must first check that the credit hasn't been used and manually remove the credit. This is because the system does not known that the amount you refunded was (a) linked to a credit and (b) not yet used as a credit.

Setting the Starting Number

WHMCS allows you to set the next invoice number that is generated. This is useful for if you want to start invoicing at a number other than 1 or start invoices for a new year from a new number. You do this as follows:

  • Go to Setup > General Settings > Invoices tab
  • Enter the next number to assing in the "Invoice Starting #" field
  • Click Save

The value will then disappear from the field but the next invoice will be assigned that number.

Group Similar Line Items

By enabling this option in Setup > General Settings > Invoices tab any identical line items will automatically be combined into one summarised quantity format. For example:

 Monthly Lease $15.95
 Monthly Lease $15.95
 Monthly Lease $15.95

becomes

 3 x Monthly Lease @ $15.95  $47.85

This format is only used in the client (printable) invoice, the admin area invoice will still display each item on an individual line.


Common Problems

There may be occasions where invoices are not generated as expected by the system. The problem is usually a misconfiguration or human error, please refer to the Invoicing Issues page for an explanation of the symptoms, causes and fixes.