Module Customers Invoices

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
Numero/ID of module 30
User doc. of module This page
Developer doc. of module Module Customers Invoices (developer)


The customer invoices module can be used to manage customer invoices (create, update, delete, list). Each invoice contains several invoice lines. This module is also used to create payments on invoices and has features to generate documents for each invoice in a format like PDF.

Suppliers invoices are managed by Module Suppliers Invoices.


This module is included with the Dolibarr distribution, so there is no need to install it.


To use this module, you must first enable it using an administrator account, via the menu option "Home - Setup - Modules".

Choose the tab where the module is listed. Then click on "Activate".

The module is now activated.

If a cog icon appears Cog circle.svg on module thumb or at end of the line of the module, click on it to access the setup page specific to the module.

The page Invoice configuration explains you how to setup the invoice module.

Create invoice

There is no complete accountancy in Dolibarr, at present. So, you must still use a third-party accounting software package of your choice or use the services of an accountant.

However, Dolibar can create customer invoices for all the customers you have created before (see Module Third Parties).

You can create an invoice directly from a customer record, from a command enclosed in the state "accepted", or from a service contract.

Types of bills

If you create an invoice from a customer record, you can choose 4 types of invoices:

  • The "standard invoice"

This is a standard bill. There are no prerequisites.

  • The "replacement invoice"

A replacement bill can redo an invoice on which there are mistakes and where nothing has have been done before any payment. Only one replacement invoice can be created for each invoice. When you create a replacement invoice R, you choose the invoice F that you want to replace. Once R is created, it is no longer possible to do actions on F even if the invoice status of F has not changed. If the replacement invoice R is deleted, the bill F will resume its original state and continue its life cycle. If the replacement invoice R is validated, the bill status of F automatically goes to abandoned. The life cycle continues on the invoice R.

  • The "credit note"

You can create several credit notes for an invoice. A credit note is an invoice used to correct (reduce) a standard invoice. The amount of a credit note can be payed back, or you can convert it into a discount to reduce the amount owed by a customer.

  • The "invoice deposit"

You can create as many invoice deposits as you need. They will be then used to reduce the amount of other invoices.


Once an invoice is created (in draft mode), you must include, in the bill, products or services already defined in Dolibarr or you can directly enter the title, the rate of VAT, the unit price. For each line of the invoice, you can also set an amount and possibly a relative discount (percentage).

Once the invoice is ready you need to confirm it. Note this operation is irreversible.

When you post the invoice, an invoice number is assigned according to the numbering scheme you have chosen in the configuration of Invoices module.

If an error is detected after validating the invoice, it will either make a replacement invoice or make a credit note.

Rules for VAT calculation

Revenue stamp

  • Some countries (like Tunisia) must include a revenue stamp (a fixed amount for each invoice produced). A list of countries and amounts concerned are defined in the dictionary table Table_llx_c_revenuestamp. If the country of your company is included in this list, a new field "Revenue stamp" appears on screens and documents of invoices.

Reduce total amount/remain amount to pay

It is possible to reduce the total and / or the balance amount to pay on a bill, but it should make a distinction between discount and a reduction, although the two terms are somewhat amalgamated in places.


A 'reduction' is a relative reduction (percentage) of the selling price of one or more products or services detailed on the invoice. This reduction should be set line by line while editing the invoice and be between 0% and 100% (the discount percentage is then replaced by the words available.


A 'discount' is a reduction of the total invoice price. It can be defined in two ways depending on whether or not it is combined with another bill, that is to say, a payment already received or not.

Discount associated with payment already received

Bills and have bills payment, awarded payments already received, can be converted into future reduction (incidentally we note the blurring of discount and reduced ). In this case the reduction, once assigned to the current invoice via the section Rebates, is mentioned at the bottom of the document as a reference to the advance payments in question, which are so obviously the amount total bill to specify the balance due. This discount is NOT mentioned as a line in the invoice detail.

Not associated with a payment already received delivery

It is also possible to define a discount that is not related to a payment already received. In this case, go to the customer record, customer tab, and define or fixed discounts (amount) or relative (percentage) attributed to that customer, and why (commercial gesture compensation due to late delivery, etc.). Once the rebates granted to the customer, they will be available when editing any bill the customer, under the heading discounts to the top. Unlike consecutive discounts for payments already received, they will be referred to as negative lines in the detail of the bill, and thus reduce the total amount thereof, before deducting payments may already collected. But these discounts are NOT associated with an invoice or have a deposit.


So there are three possibilities to reduce the price of an invoice:

  • assign a reduction percentage on certain products / services detailed in the invoice, which will effectively define a total amount lower than normally expected.
  • assign the customer overall discount, is not associated with or have an invoice payment, which will be added as a line of negative amount will reduce the ' total amount ' of the invoice.
  • Use a 'credit note or deposit' transformed into future reductions that advance payments have been received, thereby reducing the 'balance payable' but not the total amount of bill.

PDF generation, printing

When a document is generated, it is generated according to the design chosen from a list selected in the Home Screen - Configuration - Modules - Invoice.

If you want the PDF to include bank account number or address for check payment (or both), this is what to do:

  1. Activate module Bank/Cash.
  2. Create the bank account for your company.
  3. Setup up Module Customers Invoices by going into menu Setup - Modules - Customers invoices then select into area "Payment modes", the account created at step 2, or address to use for check payments, and validate by clicking on "Modify" button..

You can now regenerate your invoice, you will see the bank number or address to use for check payment.

Enter payments

Payments can be done only on validated invoices.

If a credit note is available, you can use it to reduce the remain to pay.

Close invoice

An invoice can be validated definitively classified in the state:

  • Paid (If the sum of payments is greater than or equal to the amount claimed).
  • Partially paid (If the sum of payments is greater than 0 but strictly less than the amount claimed).
  • Abandoned (If no payment has occurred).

Export invoice

Dolibarr provide a generic tool to export your invoices data. For this, you must use the Export assistant you can find in menu Tools - New export (if Module Exports has been enabled).

See page Module Exports for more informations.

Pre-defined invoices

In Dolibarr a bill designated as pre-defined is simply an invoice which we will reuse most of the data to issue additional invoices based on this information, thereby saving time to create a new invoice.

In the case of the implementation of contracts, invoices can be predefined set, corresponding to the recurring elements of the contract. This is very interesting. The only downside, the period specified for each element of the resulting bill covers the entire period of contract. It should relate to the billing month.

Related videos

Video on Billing and payments of customer invoice

Recuring invoices

Invoices: (vocal in french but subtitles are available and review in this language)

Payments: (vocal in french but subtitles are available and review in this language)

Use case examples


UCIN01: Reception of a deposit then final invoice
Situation Reception of a deposit then final invoice
Actions I entered a deposit invoice for the amount received (and not for total amount to pay). I input payment received. Then I convert this invoice into a future reduction.

Later, I create the complete invoice (but i can also do it before the deposit). I add into complete invoice the reduction. This reduce the remain to pay. I send or resend the entire invoice generated indicating that a deposit has been received.


Billing and payments

UCIN02: Billing and payment in full
Situation I created an invoice. I receive full payment.
Actions I take all the payment on the invoice. The balance goes to 0. I can sort the invoices paid.
UCIN03: Billing and higher payment received
Situation I created an invoice. I get a payment exceeds the amount claimed.
Actions I enter the amount received. I closed the bill to the state pays. I have created one of the overpayment.
UCIN04: Billing and payment in full and returned product
Situation I created an invoice. I receive full payment. I entered and the balance becomes 0. I closed the bill to the state pays. Later, I received a return of product due to legal withdrawal.
Actions I create a invoice with type "credit note" to correct original invoice.

This credit can be converted to reduce the next bill or refunded money.

UCIN05: Billing and payment in full and on product error detected
Situation I created an invoice. I receive full payment. I entered and the balance becomes 0. I closed the bill to the state pays. Later, I discovered an error in product.
Actions I create a invoice with type "credit note" to correct original invoice.

I convert this credit note into discount. I create a new invoice with the correct product. I'm joining in to have this new bill. Eventually if I use the stock, I corrected the stock in hand.

UCIN06: Billing and payment for partial advance (discount)
Situation I created an invoice. I receive a payment of the invoice amount less a discount granted for early payment.
Actions I received before the payment of the value received. I file the bills paid and partly because the information "Lack is a discount.
UCIN07: billing and payment, partial or no return and then wait and product defect or error correction tolerable
Situation I created an invoice. If I get a partial payment, I know. I get a return of some products (Revocation of client) or not getting more pennies missing. Optionally, the client waits for a credit pay the late bill.
Actions I submitted a credit on the bill. I send the credit. Then I have to convert this reduction to the customer. I know eventually the result of payments received. Eventually I include having the list of payments invoice (otherwise it will be included in another bill). I fill the bill in the state Paid.
UCIN08: Billing and partial payment for deadbeat
Situation I created an invoice. I get a partial payment, I know. After a long wait, after payment is received and abandon all hope.
Actions I fill the bill in the state Paid partial information and the reason bad payer.
UCIN09: Billing and received no payment for deadbeat
Situation I created an invoice. After a long wait, after payment is received and not abandon all hope.
Actions I file the bill in the state Abandoned and informs the reason bad payer.


Solving billing errors

UCIN00 Error on the content of an invoice detected after validation.
Situation I created an invoice. I valid. I realize the error on the contents (amount, description) after validation (see use case UCIN10 on error on client).
Actions I close the invoice to abandoned with comment 'Other' (not necessary as this will be done automatically by next step). I create a new invoice by choosing replacement invoice and by selecting the invoice to replace.
UCIN10a: Error detected on the client after validation but before payment
Situation I created an invoice. I valid. I realized that the invoice has been created on the wrong client.
Actions I fill the bill dropped to the ground 'Other' and I fill the ground "before failure on bad customer". I created a new bill on the right customer.
UCIN10b: Error on the client (or invoice before 2 times) detected after sending invoice but before payment
Situation I created an invoice. I validate and send the client. I realized that the invoice has been created on the wrong customer or invoice in duplicate with another already sent.
Actions I create a credit invoice that has not yet paid the amount exact opposite. I have to convert the discount. The invoice is found to have "treated", I can send it to the customer if I wish. I returned on the card bill in error and I apply the discount after having. On the becomes zero and I Paid in full Class (payoff of 0). That the client has not received or the original invoice, the latter was canceled and closed by the credit. I reprocessed the invoice to the right customer.
UCIN10c: Error on the client spelling detected after payment
Situation I created an invoice to the client X. I validated it. I add payments and set the bills paid. I realized that the invoice has been created with the wrong spelling and the client asks me about the credit note (for old name X and an invoice for new name Y).
Actions I create a credit note with all the lines in reverse. I transform it into reduction. The credit note is now "used" for customer X. I edit the customer record to correct X into Y. I create the new bill on the new client Y including all lines. I valid. I include the credit note. The balance then goes to 0 (none of). I can classify the new invoice paid without recourse to other regulations (the customer has already paid).


Predefined invoices

UCRIN01: Creating a predefined invoice
Situation I want to create a predefined invoice
Actions It is not possible to create a recurring invoice directly. It must be a draft standard invoice that is subsequently converted. So take a look at next use case.

UCRIN02: Transformation of an invoice into a recurring invoice'
Situation Transformation of an invoice into a recurring invoice
Actions I open or create a draft invoice. I click on the "Convert to predefined". I enter a title (eg "Last Updated quarterly") and possibly a note, which might be an explanation of the reason for the repetition of this bill. My bill is now a recurring invoice. This will be visible only if I request the display of recurring bills or I create a new invoice.
UCRIN03: Using a predefined bill to create a new invoice
Situation Using a predefined bill to create a new invoice
Actions I create a new invoice ( "Create invoice"), and I'm using the selection box at bottom of page to select the Recurring Billing I want to use as a template (template).My new invoice is pre-filled, the modifications are minor.