How to raise an invoice
An invoice in CleanFlo starts from work that has actually happened. The app keeps a running list of completed cleans nobody has billed yet, and the fastest way to raise an invoice is to let it write the lines for you.
On this page
The old way of billing a cleaning round is to sit down on a Sunday with a diary and try to remember what got done. The failure mode is not fraud, it is forgetting: a clean goes in, gets cleaned, and never appears on a bill. CleanFlo closes that gap by linking each completed clean to the invoice that billed it, and showing you everything that is not linked yet.
The Invoicing screen
The page is titled Invoicing with the subtitle Manage billing and track payments, and it has two tabs: Invoices and Settings. Everything in this guide happens on the first. The second is where your bank details and invoice branding live, and it is worth setting up before you raise anything.
Manage billing and track payments
| Invoice | Client | Amount | Timeline | Status | Actions |
|---|---|---|---|---|---|
| INV-2026-004 | Bay View Offices | £624.00 | Issued: 14 Aug 2026 Due: 28 Aug 2026 | Draft | Edit |
| INV-2026-003 | Riverside Homes | £2,776.00 | Issued: 07 Aug 2026 Due: 21 Aug 2026 | Sent | View |
| INV-2026-002 | Harbour Lettings | £780.00 | Issued: 17 Jul 2026 Due: 31 Jul 2026 | Overdue | View |
| INV-2026-001 | St Marks Medical Centre | £462.00 | Issued: 26 Jun 2026 Due: 10 Jul 2026 | Paid | View |
- Outstanding
- Everything invoiced and not yet paid: drafts, sent invoices and overdue ones added together. The single number most owners check first thing.
- Overdue
- The part of Outstanding that is past its due date. Red, because it should be.
- Paid (30 Days)
- Money that has actually landed in the last thirty days, measured from when you marked each invoice paid.
- Uninvoiced work
- Completed cleans with no invoice attached. This is money you have earned and not yet asked for, which makes it the most interesting figure on the page.
The ledger below has six columns: Invoice, Client, Amount, Timeline, Status and Actions. Timeline is two stacked lines, Issued: over Due:, and the due line turns red once the invoice is late. Actions carries View on every row and Edit only on drafts, because a sent invoice is a document somebody already has.
The four statuses
- Draft
- Written but not issued. The only status you can still edit or delete, and the status every new invoice is created at, even the ones you create with Create & Send.
- Sent
- The email went out and the provider accepted it, or you issued it another way and there was no address on file. From here the invoice is a document in somebody else's inbox.
- Paid
- You pressed Mark as Paid. It comes off Outstanding and joins Paid (30 Days).
- Overdue
- Sent, unpaid, and past the due date. Never stored: the app compares the due date with today every time it draws the pill, so an invoice becomes overdue at midnight without anybody running anything.
Raising one from completed cleans
When a clean is marked Done and has a client and a price on it, CleanFlo puts it into the uninvoiced pool. The amber banner above the ledger is that pool, grouped by client. Collapsed, it reads as one line: the number of cleans, the number of clients and the total sitting there.
Open Invoicing and look at the amber banner
If it is not there, nothing is waiting: every completed clean with a client and a price is already on an invoice. The banner only appears when there is something in the pool.
Expand it
Press the header and it opens into one row per client, each showing the clean count, the total, and up to three clean chips carrying the date, the location and the price. A fourth and beyond collapse into a +2 more chip.
Press Invoice now against the client you are billing
The invoice opens with that client already chosen and every one of their uninvoiced cleans already written in as a line. You did not type anything.
Read the lines
Each clean-derived line is tagged with a small lowercase clean chip and reads as the clean's title, then the location, then the date in brackets: Weekly Office Clean, Bay View Offices (07 Aug 2026). The unit price is the price stored on the clean. Edit the wording freely, change a figure if you agreed something different, or delete a line entirely.
Check the dates
Issue Date is today. Due Date is today plus your default payment terms, which is fourteen days unless you have changed it under Invoicing settings. Both are editable per invoice.
Create the draft, or create and send
Create Draft saves it and leaves it for you to check. Create & Send saves it and emails it in one go. Either way the cleans on it are now linked to the invoice and drop out of the uninvoiced pool.
The invoice form, field by field
Whether you arrived by Invoice now or by New invoice in the header, you get the same page: New Invoice, subtitled Create a new invoice for a client.
- Bill To
- A two-button toggle: Existing Client or New Recipient. The first gives you a dropdown of your active clients. The second gives you a Name and an Email, for a one-off you are not keeping on the books.
- The uninvoiced cleans notice
- Only in create mode, only with an existing client selected. While it looks: Checking for uninvoiced cleans…. When it finds some: 4 completed cleans auto-added: £624.00 total over Edit or remove any lines below. When it finds none: No completed cleans waiting to be invoiced: add line items manually below.
- Issue Date
- Defaults to today. This is the date printed on the document, and for VAT purposes it is normally your tax point.
- Due Date
- Defaults to today plus your default payment terms. This is the date the Overdue status is worked out from, so it is not decoration: leave it blank and the invoice can never go overdue and can never be chased with a reminder.
- Line Items
- The invoice itself. Described below.
- Notes
- Optional. Free text, printed under its own Notes heading on the document. The placeholder suggests Payment terms, internal notes…, and it is worth remembering that anything you put here is on the copy the client receives.
Changing the client after lines have been written clears the lines and starts again, which is deliberate: you should never end up billing one client for another client's work because you changed the dropdown halfway through.
Edit the lines
The Lines section works like a small spreadsheet: what the work was, the quantity, the unit price, the VAT rate if you are VAT registered, and the line total. Lines written from finished cleans arrive already filled in, and every one of them can be changed.
| What the work was | Qty | Unit price | VAT | Total |
|---|---|---|---|---|
| Office clean, Quay Street Studios (1 Oct) | 1 | 130.00 | 20% | £156.00 |
| Office clean, Quay Street Studios (8 Oct) | 1 | 130.00 | 20% | £156.00 |
- Type over anything. Description, quantity and unit price are all editable, and the total follows.
- Add line for a blank row, or Add from catalogue to pick one of your services at its saved price.
- Add discount adds an amount off as its own line, with a note saying what it is for.
Check the lines it wrote
Each finished clean becomes a line with its date. Change the wording if your client wants it described differently.
Add anything else
Add from catalogue opens your services so an extra (an oven clean, a carpet) goes on at the price you already set. Add line is for a one-off.
Tidy the order
Press Enter in a row to add a line under it. Alt with the up or down arrow moves a line. Each row also has Duplicate line and Remove line.
Check the totals
Subtotal, VAT and the total sit under the lines and update as you type.
Saving, and where the number comes from
The footer holds three buttons: Cancel, Create Draft and Create & Send. On an invoice you are editing there is only one, Save changes.
Both create buttons write the invoice as a draft first. Create & Send then emails it and only promotes it to Sent once the email provider has accepted the message. If the email fails, the invoice survives as a draft and you are told so plainly: Invoice saved as a draft: we could not email it to Marcus Hale. Open it and use Send Invoice to try again. Nothing is lost and nothing pretends to have gone out.
Four things are checked before it saves, and the page jumps to the first field that fails: Please select a client., Please enter a recipient name., Please enter a recipient email. and Add at least one line item with a description.
| Description | Qty | Unit Price | VAT | Amount |
|---|---|---|---|---|
| Weekly Office Clean, Bay View Offices (07 Aug 2026) | 1 | £130.00 | 20% | £156.00 |
| Weekly Office Clean, Bay View Offices (14 Aug 2026) | 1 | £130.00 | 20% | £156.00 |
| Weekly Office Clean, Bay View Offices (21 Aug 2026) | 1 | £130.00 | 20% | £156.00 |
| Weekly Office Clean, Bay View Offices (28 Aug 2026) | 1 | £130.00 | 20% | £156.00 |
Please quote INV-2026-004 as the payment reference so we can match your payment to this invoice.
The invoice number is generated by the database when the invoice is first saved, never by you and never editable afterwards. Its shape is a prefix, the year, and a three-digit sequence: the first invoice you raise in 2026 is INV-2026-001, the second is INV-2026-002, and the count starts again at 001 in January. The prefix defaults to INV and can be changed under Invoicing settings, which is how a firm running two trading names keeps two series apart.
Common questions
Why is New invoice sending me to the Settings tab instead of opening a new invoice?
Can I invoice two clients on one invoice?
What happens to the cleans on an invoice if I delete it?
Can I raise an invoice for work that is not a clean in CleanFlo?
Is there a recurring invoice?
Previous: How to keep your services catalogue tidy
Did this answer your question?
Good. Back to the app, then.
Sorry about that. Tell us what you were looking for and a person will answer it.
Still stuck?
Every message is read by a person on the CleanFlo team.