Set up recurring invoices

Create a contract that raises an invoice every period, start it, pause it and end it.

Required permission: billing.manage

Before you begin

  • The feature Recurring invoices is on. If it is off the menu Billing > Customers > Recurring invoices is hidden.
  • The customer is active. The products you will invoice exist in the company.
  • You have billing.manage.

Steps: create and start a contract

  1. Open Billing > Customers > Recurring invoices and press New.
  2. Enter a Code (2 to 30 characters: capitals, digits, _ and -), for example RC-SUPPORT-01. It cannot change later.
  3. Enter the Name, for example "Monthly support".
  4. Choose the Customer.
  5. Choose Every: Monthly, Quarterly, Every six months or Yearly.
  6. Set First period. The first invoice is dated this day. Empty means today.
  7. Optionally set Last period. After it the contract ends by itself. It cannot be before the first period.
  8. Tick Post each invoice straight away if invoices should be posted automatically. Leave it off to review each draft.
  9. Enter the Lines. Each line is an entry with product (code or id), quantity (default 1), price (default the product's price), discount, description and tax code. For example: product SUPPORT, quantity 1, price 1000, tax code VAT5. A contract invoices between 1 and 100 lines.
  10. Add Notes if needed.
  11. Press Save, then Start.

At Start the contract is Running and Next invoice equals the first period. Starting a contract without lines is refused: 'Add the lines the contract invoices.'

What happens next

A daily run (around 05:00 Dubai time), or the Run action, raises one draft invoice for every period that is due. For a monthly contract with a first period two months ago, the run raises three invoices: two months ago, last month and this month. Each invoice has its date of supply set to the period and a note "<name> - <date>". Next invoice moves forward after each.

Running again raises nothing: each contract invoices once per period. Month-end dates keep their day within shorter months (31 January, 28 or 29 February, 31 March and so on).

Example: a contract of AED 1,000.00 plus 5% VAT gives invoices of 1,050.00. If you pause it, change the price to 1,200.00 and start it again, the next period's invoice is 1,260.00.

The Invoices raised tab lists every invoice the contract created.

If Post each invoice straight away is on and no approval is needed, the invoices are posted: journal, instalments and legal snapshot included.

Pause, edit and end

  • Pause stops invoicing. A contract can be edited only while it is draft or paused: 'Pause the contract before changing it.' Pause, edit, then Start.
  • End closes the contract. It asks why it ends; the answer is not stored yet.
  • When the Last period passes, the contract becomes Ended.

Good to know

  • Switching the feature off is refused while a contract is running: '1 recurring contract(s) are running. Pause or end them before turning recurring invoices off.' While it is off, the daily run skips the company.
  • A period whose invoice failed (for example because auto-post met an approval policy, or the product was archived) is not retried. After a failed run, check the Invoices raised tab for a period without an invoice and raise it by hand.
  • Wrong entries are refused with messages such as 'Choose a product in this company.' and 'Quantity and price are numbers.'
  • Invoices raised by a contract are normal invoices: they follow your approval and issue rules.