3.10. Working with invoices

3.10.1. About invoices

Invoices allow you to bill goods and services to your clients. You can create both regular invoices that bill a client directly and project invoices that bill your projects (tasks, expenses, trips, products).

An invoice has the following properties:

  • Client: The client for whom the invoice is created.

  • Attention [optional]: Overrides the client attention field if you need to send the invoice to a different person.

  • Number: A number that identifies the invoice. Invoice numbers can be generated automatically.

  • Date: The date when the invoice was issued.

  • Terms: Specifies the date when the invoice is due in days relatively to the invoice date.

  • Reference [optional]: A reference number like the purchase order number.

  • Period [optional]: A free text field that contains the invoicing period. It can be a date range June 1 - June 30, a month June 2000 or something else like Q1/2000. This field is filled-in automatically when an actual period is selected in the Add Project Items window.

  • Currency: The currency used for the invoice. If the invoice has items with different currencies than this one, they are converted to the invoice currency based on the invoice exchange rates.

    This field is visible only if the application uses two or more currencies.

  • Taxes: Specifies taxes applied to taxable items of the invoice by default. These taxes are applied to taxable items whose taxes were set to Default.

    This field is visible if taxes are enabled at business level and the client is not exempt from taxes.

  • Notes: Additional notes.

3.10.2. Configuring optional fields

Because not all invoice fields are relevant to all users, you can hide optional fields that you don't use. Optional invoice fields are fields that can be hidden in the invoice windows (New Invoice or Edit Invoice). Here's how you can configure them:

  1. Create a new invoice (New Invoice) or edit an existing one (Edit Invoice).

  2. Click the Configure button from the bottom-left corner.

  3. Check the fields that you want to be visible and uncheck the ones that you want to hide.

  4. Click Done. Fanurio will update the invoice window to show only the selected fields.

For instance, one of the optional fields is Reference. This field only makes sense if you need to record a purchase order reference number.

3.10.3. Creating a regular invoice

A regular invoice is the most simple invoice you can create in Fanurio. In order to create an invoice, you need to:

  • Go to Business » New Invoice or

  • Click the New Invoice button from the toolbar or

  • Right-click a billable client and select New Invoice from the contextual menu.

Once the New Invoice window is displayed, you can start adding regular items to the invoice by clicking the New button.

If your business sells some items more frequently, you can add them to the business catalog that can be found under Business » My Business Details+Billing+Catalog. Catalog items make it easier to create regular invoice items.

For instance, as a web-designer you could define an item called Hosting that is charged $10/month. Then, every time you need to bill this item to a client, you just create a new regular item based on this catalog item. This will save you time from filling-in the item fields each time.

3.10.4. Creating a project invoice

Regular invoices (see above) can help you bill your clients but they are not helpful if you need to bill your clients by project. A project invoice is a regular invoice that bills one or more projects, it's not a different type of invoice.

You can create a project invoice for a client if it has at least one billable project with one or more billable elements (tasks, expenses, trips or products). In order to create an invoice, you need to:

  • Go to Business » New Invoice or

  • Click the New Invoice button from the toolbar or

  • Right-click a billable client and select New Invoice from the contextual menu (this will select all its projects by default) or

  • Right-click a billable project and select New Invoice from the contextual menu.

Once the New Invoice window is displayed, Fanurio will display the Add Project Items window to let you choose the project elements (tasks, expenses, trips and products) that you want to add to the invoice. Click the Add button and Fanurio will add a project item to the invoice for each selected element.

  • Tasks are billed as service items,

  • Expenses are billed as expense items,

  • Trips are billed as mileage items and

  • Products are billed as product items.

If you add a project item to an invoice but then change your mind, you can always delete it. When you delete a project item, the project element that it bills can be billed again. For instance, when you delete an expense item, the expense can be billed again.

3.10.5. Rounding tax totals

When calculating tax totals for invoices, Fanurio will round amounts that have more than three decimals using one of the following rules. The default rounding rule for new invoices can be specified in Business » My Business Details+Billing+Invoice.

  • round half even: Rounding mode to round towards the "nearest neighbor" unless both neighbors are equidistant, in which case, round towards the even neighbor. This method is also called unbiased rounding, convergent rounding, statistician's rounding, Dutch rounding, Gaussian rounding, odd–even rounding, or bankers' rounding.

    This is the default rounding rule used by Fanurio.

    • 100.454 is rounded to 100.45

    • 100.455 is rounded to 100.46

    • 100.456 is rounded to 100.46

    • 100.465 is rounded to 100.46

    • 100.475 is rounded to 100.48

  • round half up: Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round up. This method is also called round half away from zero or commercial rounding and it is often used for currency conversions and price roundings.

    • 100.454 is rounded to 100.45

    • 100.455 is rounded to 100.46

    • 100.456 is rounded to 100.46

  • round half down: Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round down.

    • 100.454 is rounded to 100.45

    • 100.455 is rounded to 100.45

    • 100.456 is rounded to 100.46

Please note that Fanurio will use the default rule only when creating a new invoice. If you change it at business level, existing invoices will not be changed. Before deciding which rounding rule you should be using, please consult an accountant.

3.10.6. Adding taxes to invoices

The easiest way to charge taxes to your clients is to create an invoice, set its taxes and then add items with default taxes. By default, all items are charged with default taxes (specified by their invoice). However, if some items need to be taxed differently, you can change their taxes.

Tasks, expenses, products and items have a field called Taxes that specifies which taxes apply to them. Here's how it works.

Example 1: Invoice with same tax for all items

Let's assume you need to charge the same tax (VAT 21%) for all your services.

  1. Create the tasks and leave their Taxes field set to Default.

    Default means you want to charge whatever taxes are specified by the invoice.

  2. Create the invoice and add the tasks to the invoice.

  3. Set the invoice tax (VAT 21%).

All service items will be charged the invoice tax (VAT 21%). Please note that the actual tax (VAT 21%) is set only once for the invoice instead of being set explicitly for every single task.

Example 2: Invoice with non-taxable items

Let's extend the first example and assume you also have to bill expenses but not charge taxes for them.

  1. Create the tasks and leave their Taxes field set to Default.

  2. Create the expenses and uncheck their Taxes field to mark them as non-taxable.

  3. Create the invoice and add the tasks and the expenses to the invoice.

  4. Set the invoice tax (VAT 21%).

All service items will be charged the invoice tax (VAT 21%) while expense items will not be charged any tax.

Example 3: Invoice with multiple taxes

Let's assume you need to charge a standard tax (VAT 21%) for some services and a reduced tax (VAT 6%) for others.

  1. Create the tasks that need to be charged the standard tax and leave their Taxes field set to Default. The standard tax (VAT 21%) will be set at invoice level later.

  2. Create the tasks that need to be charged the reduced tax and set their Taxes field to the reduced tax (VAT 6%) instead of Default.

  3. Create the invoice and add the tasks to the invoice.

  4. Set the (standard) invoice tax (VAT 21%).

Service items with taxes set to Default will be charged the invoice tax (VAT 21%) while the others will be charged the reduced tax (VAT 6%).

3.10.7. Numbering invoices automatically

Automatic invoice numbering is disabled by default but can be enabled from Business » My Business Details+Billing+Invoice numbering.

To generate an invoice number automatically, Fanurio needs a counter and a number format. The number format can be something simple like counter on three or more digits (eg 001, 0001, 00001) or something more complex that involves prefixes, sufixes and dates.

Invoices can be numbered sequentially for all clients or separately for each client. If you need to number invoices separately for each client, Fanurio will use the invoice counter defined at client level. The invoice counter of a client is incremented only when an invoice is created for that client. Edit a client and go to the Billing tab to access its invoice counter.

Fanurio uses the Freemarker syntax for the number format, the same syntax used for the templates. Here are a few number formats that assume the counter is 1 (one) and the year is 2020.

Table 3.6. Invoice number formats

Name Number Format Sample Number

Four-digit numbers

To use more digits in your format, just add more zeros.

${counter?string("0000")} 0001

Fixed prefix format

This format builds on the previous one by adding the ABC- prefix. Please note that it's important to put the prefix outside ${...}.

ABC-${counter?string("0000")} ABC-0001

Client code prefix format

The invoice number format can use two placeholders that access the code and name client fields. Include ${client.code} or ${client.name} if you need to build a more complex format.

This format uses the ${client.code} placeholder and assumes the client code is set to ACME.

${client.code}-${counter?string("0000")} ACME-0001

Date prefix format

This format uses a variable prefix that changes with the year. The date prefix is generated by the expression ${.now?string("yy")}. If you need to display the whole year use ${.now?string("yyyy")} instead. The text "yyyy" represents the date pattern used to format the date which uses the Java date format syntax.

${.now?string("yy")}-${counter?string("0000")} 20-0001

3.10.8. Billing in multiple currencies

Every invoice has a base currency that is specified when the invoice created. If the invoice items use a different currency, you have to enter exchange rates for each currency different from the base currency. Exchange rates can only be entered manually.

Let's consider the following example to understand when this can be helpful. You have a business based in Germany that does business with clients from across the EU and the USA. European clients are billed in Euros while American clients are billed in US dollars. When working with US clients, you still record expenses in Euros but in the end you have to bill them in US dollars.

3.10.9. Discounting an invoice

With Fanurio you can discount service items or you can discount the total invoice value. In either case, invoices can show both the discounted values and the regular ones. Discounts can be specified as a percentage or as a fixed value. Below we'll show you how discounts can be used to create more accurate invoices.

Note: If you want to customize the invoice template to display discount information, take a look at the placeholders available for items and invoices.

Making a discount for the entire invoice is easy. When you create an invoice, just specify a discount for the total invoice value as a percentage or as a fixed sum.

Let's say that the total invoice value (before taxes) is $1,330.00 and you want to round it to $1,300.00. In this case, you apply a fixed discount of $30.00 and the invoiced value will be $1,300.00. The discount is not taxed if taxes apply to the invoice.

3.10.10. Discounting individual items

The total invoice discount makes sense when you need to discount the entire invoice but not if you want to discount only certain items. You may want to lower your rate or you may want to bill less work (hours or units). Let's see a few discount examples and how they can help you.

Example 3.3. Bill using a lower rate

You may want to offer introductory rates to first time clients. Let's say that you charge $100 for a service but this time you want to charge $80. When you create an item to record work for that service, just discount its rate using a fixed discount of $20. You could also use a percentage discount of 20% to get the same result.


Example 3.4. Bill less work

If you agreed to 10 hours for a service but it took you 12.5 hours then you can discount them to match the initial agreement. Just apply a fixed discount of 2.5 hours and you'll only bill 10 hours. On the invoice, you can show that it took you 12.5 hours but you only billed 10 hours.


Example 3.5. Don't bill work

Another situation is when you are offering a service that should be included on the invoice but should not be charged. In this case, create an item and discount its units (hours) by 100%. The total invoiced value for such an item will be zero.


Once you have one or more discounted items, you can easily see which ones are discounted. Discounted items have a red corner in the items table. Just move the mouse over them (don't click, just keep it over) to see more details.

3.10.11. Cancelling an invoice

Sometimes an invoice will never be paid because the client refuses to do so or because it goes out of business. To handle cases like these when you know an invoice will never be paid by the client, you can just cancel it. Please note that only unpaid invoices can be cancelled. You can also cancel partially paid invoices.

Once cancelled, you can used the filters above the invoices table to show or hide them. Use the Status filter and select Not Paid or Overdue. Then you can filter invoices by their Cancelled status.

3.10.12. Using templates to view, export and email invoices

If you want to view, export or email an invoice, you will need to use an invoice template. Templates specify the visual design and content of an invoice document.

Since most business have different requirements when it comes to the layout of their invoices, Fanurio has a very powerful template engine that can handle many file formats (HTML, Microsoft Word, OpenDocument Text, XML, plain text). If you already create your invoices in one of these formats, it's very likely that they can be easily transformed into templates for Fanurio.

We've created a separate guide just for templates. To get started, you only need to read the introduction.

3.10.13. Exporting invoices with a template

Fanurio can export invoices to various formats depending on what type of template you are using. By default, Fanurio comes with an .html template that can be used to export invoices to .html and .pdf.

To export invoices:

  1. Go to the Invoices view,

  2. Locate the invoice or invoices you want to export,

  3. Right-click to display the contextual menu,

  4. Select Export Invoice.

When exporting invoices in bulk (two or more), the same invoice template is used for all invoices and each invoice is exported as a separate file to the same folder.

3.10.14. Sending invoices by email

You can send invoices by email to your clients right from Fanurio. Just go to the Invoices view, select the invoice or the invoices you want to email, right-click and select Email Invoice from the contextual menu.

You can send invoices by email if the following conditions are met:

  1. The email feature is enabled and configured correctly.

  2. You entered your email address in the Contact section from Business » My Business Details. You need to do this so that the email is sent on your behalf.

  3. You entered an email address for the client.

When emailing invoices in bulk (two or more), the same email template (see below) is used for all emails and the same invoice template is used to generate the attachment. Each invoice is sent as a separate email.

To save time, you can create one or more email templates to generate the email text automatically. To create an email template, just click the Templates link from the Email Invoice window and select New Invoice Email Template. Once you select an email template, Fanurio will remember it and use it by default every time you open the Email Invoice window.

Both the subject and the body of the email template may contain invoice-related placeholders. The allowed placeholders for email templates are the same placeholders that can be used for invoice templates. Here are a few examples:

Example 3.6. New invoice

Subject: Invoice ${invoice.number}

Dear ${client.attention},

Please find invoice ${invoice.number} attached to this email. Payment of ${invoice.balance} is due by ${invoice.dueDate?date}.

If you have any questions, please let us know.


Best regards,

${business.attention}
${business.name}

Example 3.7. New invoice - detailed

Subject: Invoice ${invoice.number}

Dear ${client.attention},

Please find the invoice attached to this email.

Date: ${invoice.date?date}
Number: ${invoice.number}
Due date: ${invoice.dueDate?date}
Project: ${invoice.projects?first.name}
Total: ${invoice.grandTotal}
Balance: ${invoice.balance}

If you have any questions, please call us at ${business.phone} or send us an email at ${business.email}.


Best regards,

${business.attention}
${business.name}

Example 3.8. Reminder

Subject: Invoice ${invoice.number} reminder

Dear ${client.attention},

Invoice ${invoice.number} is currently outstanding. This is a friendly reminder that the balance of ${invoice.balance} is due by ${invoice.dueDate?date}.

Please disregard this message if the invoice has already been paid.


Best regards,

${business.attention}
${business.name}

Example 3.9. Overdue invoice

Subject: Invoice ${invoice.number} overdue notification

Dear ${client.attention},

Invoice ${invoice.number} attached to this email is now past due since ${invoice.dueDate?date} with a balance of ${invoice.balance}.

I would be really grateful if you could let me know when we can expect to receive payment.


Best regards,

${business.attention}
${business.name}

3.10.15. Searching and filtering invoices

To learn more about your invoices, go to the Invoices view and use the filters above the table. The table will display only those invoices that match the selected filters. Invoices can be filtered by:

  • status: paid, unpaid or overdue,

  • cancelled: yes or no,

  • date (creation),

  • date (paid),

  • reference (purchase order),

  • number or

  • client.

Once you set these filters, the table footer will display totals for:

  • balance (how much money you must receive),

  • total (how much money the invoices are before taxes) and

  • taxes (total tax money charged to your clients if you use taxes).

For instance, you could use these filters to see all overdue invoices issued this year for a certain client. The table footer will help you see how much money the client owes you.

3.10.16. Creating sales reports

The previous section explains how you can filter or search the list of invoices so you can get a quick insight about your sales. However, if you need to use this information outside Fanurio you can either export the list of invoices as a CSV or Excel file or create a sales report. Sales reports are more flexible because they allow you to use a template to format data.

Go to Reports » Sales Report to create a report for your invoices. Just like in the Invoices view, you can use several filters to specify which invoices should be included in the report:

  • Client indicates if you create the report for a specific client or for all clients.

  • Date specifies the date interval when invoices were issued.

  • Paid Date specifies when invoices were paid (if paid).

  • Status specifies whether invoices are paid or not.

Fanurio comes with a set of default templates that can be selected from the Template drop-down box:

  • Sales Statistics displays various salesstatistics and charts like:

    • total sales,

    • number of months with invoices,

    • average sales per month,

    • paid, due and overdue amounts,

    • sales by month and client,

    • unpaid amount by age, and

    • outstanding clients.

  • Invoices shows the list of invoices sorted by date and displays totals at the bottom.

    This template is useful if you need to create a statement for a client or if you simply need to list invoices chronologically.

  • Invoices Summary by Client and Month displays totals by client and month.

    This template is useful if you need to analyze sales by client and month.

  • Invoices Summary by Client and Year displays totals by client and year.

    This template is useful if you need to analyze sales by client and year.

  • Invoices Summary by Client displays totals by client.

    This template is useful if you need to analyze sales by client.

  • Invoices by Client is similar to Invoices except that it groups invoices by client and displays subtotals for each client.

    This template is useful if you need to analyze sales by client.

  • Invoices by Month is similar to Invoices except that it groups invoices by month of billing (Date field) and displays subtotals for each month.

    This template is useful if you need to analyze sales by month.

  • Invoices by Year is similar to Invoices except that it groups invoices by year of billing (Date field) and displays subtotals for each year.

    This template is useful if you need to analyze sales by year.

  • Invoices by Month of Payment is similar to Invoices except that it groups invoices by month of payment (Paid Date field) and displays subtotals for each month.

    This template is useful if you need to see how much money you've been paid each month.

  • Invoices by Year of Payment is similar to Invoices except that it groups invoices by year of payment (Paid Date field) and displays subtotals for each year.

    This template is useful if you need to see how much money you've been paid each year over several years.

If you need to create your own templates, please see this section to learn what placeholders you can use.