Difference between revisions of "Invoicing"

From WHMCS Documentation

(Options)
 
(86 intermediate revisions by 8 users not shown)
Line 1: Line 1:
==Automatic Invoice Generation==
+
If you are looking for documentation regarding configuration of invoice related settings, visit [[Invoicing Setup]].
 +
 +
==Creating Invoices==
 +
 +
WHMCS automatically generates invoices for recurring products and services. You can also create custom one-time invoices for specific clients.
 +
 +
To create a one-time custom invoice for a specific client:
 +
 +
# Perform one of the following methods to create the draft invoice. The system will create a new invoice in '''Draft''' status.<div class="docs-alert-warning">The due date for manually-created invoices defaults to the same number of days in the future as you allow for automatic invoice generation. You can customize this via the '''Options''' tab when managing an invoice.</div>
 +
#* From the client's profile's  '''[[Clients:Summary_Tab|Summary]]''' tab, click '''Create Invoice'''.
 +
#* From anywhere in the [[Admin Area]], click the '''+''' icon at the top of the interface and choose '''New Invoice'''.
 +
#*# Choose a client.
 +
#*# Enter invoice and due dates.
 +
#*# Select a payment method.
 +
#*# Click '''Create Invoice'''.
 +
# To configure the invoice's details:
 +
## Update the desired settings in the '''Options''' tab.
 +
## Click '''Save Changes'''.
 +
# Under '''Invoice Items''', for each invoice item that you wish to add:
 +
## Enter a description and amount.
 +
## Click '''Save Changes'''. A new row will then appear to allow adding further line items.
 +
# To publish the invoice, choose the '''Summary''' tab and click a publishing option. These options '''only''' display when the invoice is in the '''Draft''' status and you have the ''Manage Invoices'' permission. Clicking them will set the '''Invoice Date''' value to the current date.
 +
#* ''Publish & Send Email'' — Convert the invoice to '''Unpaid''' and send the '''Invoice Creation''' email to the customer.
 +
#* ''Publish'' — Convert the invoice to '''Unpaid''' without notifying the customer.
 +
 +
<div class="docs-alert-info">
 +
In WHMCS 6.2 and later, you can navigate away from the invoice at any time during this process and return to it later. WHMCS will store the invoice as a draft and it will not be visible to the customer until you have marked it as complete and published it.
 +
</div>
 +
 +
==Searching Invoices==
 +
 +
To search for and locate invoices, use either of the following methods:
 +
 +
* Search by invoice number using the [[Admin Area|Intelligent Search]] in the Admin Area.
 +
* Search using advanced search options, including searching by line item descriptions, using the list at '''Billing > [[Invoices]]'''.
 +
 +
==Viewing Invoices==
 +
 +
You can view invoices by going to '''Billing > [[Invoices]]''' or the client's profile's '''[[Clients:Invoices_Tab|Invoices]]''' tab. Click the invoice ID or, in WHMCS 8.9 and later, click '''View''' in the list of invoices to view the desired invoice.
 +
 +
<div class="docs-alert-info">
 +
In WHMCS 8.9 and later, invoices default to view-only mode. This decreases the risk of unintentional edits while viewing or paying client invoices.
 +
 +
* Admins who have the ''Manage Invoices'' permission can:
 +
** Click '''Manage Invoice''' to edit the invoice.
 +
** Click '''Edit''' while viewing a list of invoices to skip view-only mode and go directly to editing the invoice.
 +
* Admins who only have the ''View Invoice'' permission can view invoices, add payments and credit, issue refunds, and view notes if they have the correct permissions for these tasks. They '''cannot''' edit invoice contents.
 +
</div>
 +
 +
===Summary===
 +
 +
The '''Summary''' tab lists the client name, invoice and due dates, invoice items, and associated transactions, and allows you to send client emails.
 +
 +
====Sending Emails====
 +
 +
To send an email for the selected invoice, choose the desired email template from the menu under the invoice status and click '''Send Email'''.
 +
 +
<div class="docs-alert-info">You '''cannot''' send email for invoices that are in the ''Draft'' status. You must first publish the invoice before sending email.</div>
  
WHMCS automatically generates invoices for products and services that are due in advance of the due date. Exactly how far in advance they generate you can configure yourself in Config > Automation Settings but by default it is 14 days.
+
====Cancel an Invoice====
 +
 
 +
To cancel an invoice, click '''Mark Cancelled''' under the invoice status.
 +
 +
<div class="docs-alert-success">
 +
* In WHMCS 8.10 and later, the system cron can automatically cancel invoices after they have been overdue for a specified number of days. You can enable this setting and set the number of days in the '''Billing Settings''' section at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Automation Settings]]'''.
 +
* In WHMCS 8.9 and later, you '''must''' have the ''Manage Invoices'' permission and click '''Manage Invoices''' in the top-right corner while in view-only mode to perform this action.
 +
</div>
  
The cron performs the generation each day so it is important you have this configured for it to work.
+
====Split to New Invoice====
 +
 +
<div class="docs-alert-success">In WHMCS 8.9 and later, you '''must''' have the ''Manage Invoices'' permission and click '''Manage Invoices''' in the top-right corner while in view-only mode to perform this action.</div>
 +
 +
Splitting invoices allows you to separate line items from an invoice into a separate invoice. This is useful if, for example, items appear together on a single invoice that a client wants to renew separately or a merge happened incorrectly.
 +
 +
To split items, select the desired items under '''Invoice Items''' and then choose ''Split to New Invoice'' from '''With Selected'''. The system will immediately move all of the items to a single new invoice.
 +
 +
* This process does '''not''' send an email to the customer. If you want to notify the customer, click '''Send Email'''.
 +
* When splitting an invoice, the system sets the due date of the resulting invoice based on the current date and '''Invoice Generation''' settings in '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Automation Settings]]'''.
  
==Invoice Reminders & Notices==
+
====Delete====
 +
 +
<div class="docs-alert-success">In WHMCS 8.9 and later, you '''must''' have the ''Manage Invoices'' permission and click '''Manage Invoices''' in the top-right corner while in view-only mode to perform this action.</div>
 +
 +
To delete items from an invoice, select the desired items under '''Invoice Items''' and then choose ''Delete''.
 +
 +
<div class="docs-alert-warning">This does '''not''' move the deleted items to a new invoice.</div>
  
WHMCS will send one reminder after generation but before the due date if the invoice has not been paid and then up to 3 overdue notices once the due date has passed. These can be used to warn the user about an upcoming suspension or termination of serviceYou can configure exactly which days these notices go out on again in Config > Automation Settings.
+
===Add Payment===
 +
 +
If you receive a payment that the system hasn't automatically logged in WHMCS, you will need to manually apply it to the invoice.
 +
 +
To do this, enter the details corresponding to the payment, including the date, payment method, transaction ID, and amount. Then, click '''Add Payment'''.
 +
 +
<div class="docs-alert-success">
 +
* If a payment is not for a specific invoice, issue credit to the client instead.
 +
* If a payment applies to multiple invoices, add a transaction at '''Billing > View Transaction List'''. For '''Invoice ID(s)''', enter a comma-separated list of all of the invoice numbers to apply payment to.
 +
** The system will apply payments in the order you enter them until the client has used the full amount.
 +
** The system will automatically add any amount left over as a credit to the user for use on future invoices.
 +
</div>
 +
 +
===Options===
 +
 +
<div class="docs-alert-success">In WHMCS 8.9 and later, you '''must''' have the ''Manage Invoices'' permission and click '''Manage Invoices''' in the top-right corner while in view-only mode to view this tab.</div>
 +
   
 +
In the '''Options''' tab, you can configure the following invoice settings:
 +
 +
* '''Invoice Date''' — The date on which the system generated the invoice or you created it.
 +
* '''Payment Method''' — The payment method that the system will attempt to use to pay the invoice.
 +
* '''Invoice #''' — The invoice number.
 +
* '''Due Date''' — The invoice's due date.
 +
* '''Tax Rate''' — The rate at which the system will tax the items in the invoice.
 +
* '''Status''' — The invoice status.
  
==Creating Custom Invoices==
+
===Credit===
 +
 +
In the '''Credit''' tab, you can add credit to the invoice.
 +
 +
* To add credit from a client's balance to an invoice, enter the desired amount under '''Add Credit to Invoice''' and click '''Go'''.
 +
* To remove credit from an invoice, enter the desired amount under '''Remove Credit from Invoice''' and click '''Go'''.
 +
 +
Automatically-generated invoices always check whether a client has a positive credit balance. If they do, the system automatically applies the credit to the invoice during invoice generation. If applying credit reduces the invoice balance to <tt>0</tt>, the system marks the invoice ''Paid'' automatically.
 +
 +
===Refund===
 +
 +
In the '''Refund''' tab, you can refund transactions for the invoice. Refunding transactions allows you to issue credits and refunds for payments that clients have made.
 +
 +
If the system can't automate a refund for your particular gateway, you can still use this process to enter the refund billing entry in WHMCS. It will update the income totals and reflect the refund on the invoice. Then, you can go to your payment gateway to send the refund.
 +
 +
====Refund a Transaction====
 +
 +
To refund a transaction:
 +
 +
# If there have been multiple transactions for the invoice, select the desired transaction from '''Transactions'''. You can only refund one transaction at a time, and the refund amount cannot exceed the total amount of the transaction.
 +
# For '''Amount''', enter the amount to refund for a partial amount. Otherwise, leave this blank to refund the entire transaction value.
 +
# Select the desired type from '''Refund Type''':
 +
#* ''Refund through Gateway'' — If your payment gateway supports refunds, WHMCS sends the refund to your gateway to process. This returns the money to the payment method that the client used.
 +
#* ''Manual Refund Processed Externally'' — WHMCS records a refund in the system. You must then process the refund separately with your payment gateway. You may also use this if a chargeback or dispute occurs.
 +
#* ''Add to Client's Credit Balance'' — WHMCS records a refund and adds the refunded balance to the client's credit balance. This does '''not''' return any money to the customer.
 +
# Check '''Reverse Payment''' if you want to reverse the effects of the original payment (for example, when you set the invoice status to ''Collections'' and reverse the service's '''Next Due Date'''.
 +
#* When you check this, the system's actions depend on the configuration in '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Automation Settings]]'''.
 +
#* This setting does '''not''' alter the system's treatment of any affiliate commissions (see the steps below).
 +
# If you do not want to send a refund confirmation email, uncheck '''Send Email'''.
 +
# Click '''Refund'''.
  
With WHMCS, you can generate an invoice whenever you wantThis is very useful for many reasons, some examples are:
+
====Reversing Affiliate Commission====
 +
 +
In WHMCS 8.3 and later, if the transaction is associated with an affiliate commission and the payment gateway supports reversals, WHMCS can also reverse the commission.
 +
 +
* When you perform a full refund, WHMCS automatically reverses all of the associated commissions.
 +
* When you perform a partial refund, WHMCS will ask you whether to also reverse the commission. You cannot, however, choose an amount of the commission to reverse. This action reverses the entire amount.
 +
* If you choose not to perform a commission reversal, the commission payment will not be affectedThe page will reload and display the results of the refund attempt if you chose ''Refund through Gateway''. If it fails for any reason, the '''Gateway Log''' can provide more information.
  
*Overusage Charges
+
===Notes===
*Web Design
+
   
*Other Services
+
<div class="docs-alert-success">In WHMCS 8.9 and later, you '''must''' have the ''Manage Invoices'' and click '''Manage Invoices''' in the top-right corner while in view-only mode to enter or edit notes.</div>
*One Off Sales/Custom Pricing
+
 
+
Use the '''Notes''' tab to view and enter notes about the invoice.
The steps to do this are below...
 
 
 
#Locate the client you wish to generate an invoice for
 
#Once on the clients summary page, click the Invoices tab
 
#Next, click the Create Invoice button located at the top of the page
 
#You will now be presented with a new blank invoice
 
#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
 
#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, due date and tax rate for the invoice - on completion, click Save
 
#Finally, to send the client an email letting them know about the new invoice, click the "Send Invoice Created Email" button located on the Summary tab
 
 
 
==Grouping Items into a Single Invoice==
 
 
 
WHMCS will automatically group products & services, addons and domains with the same due date onto a single invoice for the customer.  This means the customer only needs to make one transaction making it easier for them and reducing your transaction fees.
 
 
 
==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 furthur 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.
 
 
 
===Enabling Continous Invoicing===
 
 
 
To enable this feature, go to Configuration > General Configuration > 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===
 
 
 
#To enable this feature, begin by going to Configuration > General Config
 
#Then click on the Invoices tab
 
#Next, tick the box labelled "Sequential Paid Invoice Numbering"
 
#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
 
#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.  If you want to do this, then you need to make a few template changes aswell to reflect the different names - Proforma invoice when unpaid and Invoice once paid.  Instructions can be found in the viewinvoice.tpl and pdfconfig.php files where the changes need to be made - just need to uncomment the commented out code you will find in those files.
 
 
 
==Refunding Payments==
 
 
 
If you are using a merchant gateway, support may be built into WHMCS to allow you to issue a refund without logging into your gateway.  If this is supported with the gateway, on a paid invoice in the admin area you will see a "Refund Invoice" button.  If clicked, this button will issue a refund for the payment made towards that invoice and set it's status to Cancelled.  This will not reverse the actions that were carried out as a result of the payment - for example changing the next due dates back or cancelling domain renewals/unsuspensions.
 

Latest revision as of 17:59, 3 April 2024

If you are looking for documentation regarding configuration of invoice related settings, visit Invoicing Setup.

Creating Invoices

WHMCS automatically generates invoices for recurring products and services. You can also create custom one-time invoices for specific clients.

To create a one-time custom invoice for a specific client:

  1. Perform one of the following methods to create the draft invoice. The system will create a new invoice in Draft status.
    The due date for manually-created invoices defaults to the same number of days in the future as you allow for automatic invoice generation. You can customize this via the Options tab when managing an invoice.
    • From the client's profile's Summary tab, click Create Invoice.
    • From anywhere in the Admin Area, click the + icon at the top of the interface and choose New Invoice.
      1. Choose a client.
      2. Enter invoice and due dates.
      3. Select a payment method.
      4. Click Create Invoice.
  2. To configure the invoice's details:
    1. Update the desired settings in the Options tab.
    2. Click Save Changes.
  3. Under Invoice Items, for each invoice item that you wish to add:
    1. Enter a description and amount.
    2. Click Save Changes. A new row will then appear to allow adding further line items.
  4. To publish the invoice, choose the Summary tab and click a publishing option. These options only display when the invoice is in the Draft status and you have the Manage Invoices permission. Clicking them will set the Invoice Date value to the current date.
    • Publish & Send Email — Convert the invoice to Unpaid and send the Invoice Creation email to the customer.
    • Publish — Convert the invoice to Unpaid without notifying the customer.

In WHMCS 6.2 and later, you can navigate away from the invoice at any time during this process and return to it later. WHMCS will store the invoice as a draft and it will not be visible to the customer until you have marked it as complete and published it.

Searching Invoices

To search for and locate invoices, use either of the following methods:

  • Search by invoice number using the Intelligent Search in the Admin Area.
  • Search using advanced search options, including searching by line item descriptions, using the list at Billing > Invoices.

Viewing Invoices

You can view invoices by going to Billing > Invoices or the client's profile's Invoices tab. Click the invoice ID or, in WHMCS 8.9 and later, click View in the list of invoices to view the desired invoice.

In WHMCS 8.9 and later, invoices default to view-only mode. This decreases the risk of unintentional edits while viewing or paying client invoices.

  • Admins who have the Manage Invoices permission can:
    • Click Manage Invoice to edit the invoice.
    • Click Edit while viewing a list of invoices to skip view-only mode and go directly to editing the invoice.
  • Admins who only have the View Invoice permission can view invoices, add payments and credit, issue refunds, and view notes if they have the correct permissions for these tasks. They cannot edit invoice contents.

Summary

The Summary tab lists the client name, invoice and due dates, invoice items, and associated transactions, and allows you to send client emails.

Sending Emails

To send an email for the selected invoice, choose the desired email template from the menu under the invoice status and click Send Email.

You cannot send email for invoices that are in the Draft status. You must first publish the invoice before sending email.

Cancel an Invoice

To cancel an invoice, click Mark Cancelled under the invoice status.

  • In WHMCS 8.10 and later, the system cron can automatically cancel invoices after they have been overdue for a specified number of days. You can enable this setting and set the number of days in the Billing Settings section at Configuration () > System Settings > Automation Settings.
  • In WHMCS 8.9 and later, you must have the Manage Invoices permission and click Manage Invoices in the top-right corner while in view-only mode to perform this action.

Split to New Invoice

In WHMCS 8.9 and later, you must have the Manage Invoices permission and click Manage Invoices in the top-right corner while in view-only mode to perform this action.

Splitting invoices allows you to separate line items from an invoice into a separate invoice. This is useful if, for example, items appear together on a single invoice that a client wants to renew separately or a merge happened incorrectly.

To split items, select the desired items under Invoice Items and then choose Split to New Invoice from With Selected. The system will immediately move all of the items to a single new invoice.

  • This process does not send an email to the customer. If you want to notify the customer, click Send Email.
  • When splitting an invoice, the system sets the due date of the resulting invoice based on the current date and Invoice Generation settings in Configuration () > System Settings > Automation Settings.

Delete

In WHMCS 8.9 and later, you must have the Manage Invoices permission and click Manage Invoices in the top-right corner while in view-only mode to perform this action.

To delete items from an invoice, select the desired items under Invoice Items and then choose Delete.

This does not move the deleted items to a new invoice.

Add Payment

If you receive a payment that the system hasn't automatically logged in WHMCS, you will need to manually apply it to the invoice.

To do this, enter the details corresponding to the payment, including the date, payment method, transaction ID, and amount. Then, click Add Payment.

  • If a payment is not for a specific invoice, issue credit to the client instead.
  • If a payment applies to multiple invoices, add a transaction at Billing > View Transaction List. For Invoice ID(s), enter a comma-separated list of all of the invoice numbers to apply payment to.
    • The system will apply payments in the order you enter them until the client has used the full amount.
    • The system will automatically add any amount left over as a credit to the user for use on future invoices.

Options

In WHMCS 8.9 and later, you must have the Manage Invoices permission and click Manage Invoices in the top-right corner while in view-only mode to view this tab.

In the Options tab, you can configure the following invoice settings:

  • Invoice Date — The date on which the system generated the invoice or you created it.
  • Payment Method — The payment method that the system will attempt to use to pay the invoice.
  • Invoice # — The invoice number.
  • Due Date — The invoice's due date.
  • Tax Rate — The rate at which the system will tax the items in the invoice.
  • Status — The invoice status.

Credit

In the Credit tab, you can add credit to the invoice.

  • To add credit from a client's balance to an invoice, enter the desired amount under Add Credit to Invoice and click Go.
  • To remove credit from an invoice, enter the desired amount under Remove Credit from Invoice and click Go.

Automatically-generated invoices always check whether a client has a positive credit balance. If they do, the system automatically applies the credit to the invoice during invoice generation. If applying credit reduces the invoice balance to 0, the system marks the invoice Paid automatically.

Refund

In the Refund tab, you can refund transactions for the invoice. Refunding transactions allows you to issue credits and refunds for payments that clients have made.

If the system can't automate a refund for your particular gateway, you can still use this process to enter the refund billing entry in WHMCS. It will update the income totals and reflect the refund on the invoice. Then, you can go to your payment gateway to send the refund.

Refund a Transaction

To refund a transaction:

  1. If there have been multiple transactions for the invoice, select the desired transaction from Transactions. You can only refund one transaction at a time, and the refund amount cannot exceed the total amount of the transaction.
  2. For Amount, enter the amount to refund for a partial amount. Otherwise, leave this blank to refund the entire transaction value.
  3. Select the desired type from Refund Type:
    • Refund through Gateway — If your payment gateway supports refunds, WHMCS sends the refund to your gateway to process. This returns the money to the payment method that the client used.
    • Manual Refund Processed Externally — WHMCS records a refund in the system. You must then process the refund separately with your payment gateway. You may also use this if a chargeback or dispute occurs.
    • Add to Client's Credit Balance — WHMCS records a refund and adds the refunded balance to the client's credit balance. This does not return any money to the customer.
  4. Check Reverse Payment if you want to reverse the effects of the original payment (for example, when you set the invoice status to Collections and reverse the service's Next Due Date.
    • When you check this, the system's actions depend on the configuration in Configuration () > System Settings > Automation Settings.
    • This setting does not alter the system's treatment of any affiliate commissions (see the steps below).
  5. If you do not want to send a refund confirmation email, uncheck Send Email.
  6. Click Refund.

Reversing Affiliate Commission

In WHMCS 8.3 and later, if the transaction is associated with an affiliate commission and the payment gateway supports reversals, WHMCS can also reverse the commission.

  • When you perform a full refund, WHMCS automatically reverses all of the associated commissions.
  • When you perform a partial refund, WHMCS will ask you whether to also reverse the commission. You cannot, however, choose an amount of the commission to reverse. This action reverses the entire amount.
  • If you choose not to perform a commission reversal, the commission payment will not be affected. The page will reload and display the results of the refund attempt if you chose Refund through Gateway. If it fails for any reason, the Gateway Log can provide more information.

Notes

In WHMCS 8.9 and later, you must have the Manage Invoices and click Manage Invoices in the top-right corner while in view-only mode to enter or edit notes.

Use the Notes tab to view and enter notes about the invoice.