← All features
Getting Paid

Invoicing From the Job You Just Finished

Free in the app — raise it, issue it, print it, record payment. Cloud sync of invoices and the web dashboard are Pro.

An invoice here is not a second piece of paperwork. It is built from the service record the finished job already wrote — the hours, the parts, the materials — so the document the customer receives and the history the equipment keeps are the same set of facts. It bills the work. It does not take the money, and this page is specific about that.

Three ways one starts, and one converter behind all three

Finish a work order and the alert confirming it offers CREATE INVOICE; the same button also sits on the job itself. Complete a PM visit and its completion alert offers CREATE INVOICE, or CREATE A SECOND where that visit has already been billed once. For work that never had a ticket, open Invoices and use the green plus in the top bar.

All three run through one converter. The dashboard used to total a job by adding up the cost field while the phone billed hours by rate plus materials, so the same visit could produce two different amounts depending on which screen raised the paper — and one customer could receive both. There is now a single function turning service logs into invoice lines, and it does not care whether the rows came from the phone’s database or from the cloud.

A service log that some other invoice already names is left out of the draft. That is the double bill nobody notices until the customer does: reopen a job, complete it a second time, and bill the same hours twice.

A completed PM records no money by itself, so a PM invoice is always typed. The builder fills in as little as it honestly can rather than inventing a price it was never told.

The money belongs to the job, not to the invoice

BILLING DETAILS is a section on a work order and on a PM completion: LABOR HOURS, RATE ($ / HOUR), PARTS / MATERIALS COST ($) and PARTS & MATERIALS USED. It is closed on a blank job and opens itself when there are already figures inside, so somebody who never bills anything sees the screen they had before, and somebody who does never has to go hunting for it.

Leave the rate blank and those hours bill at the shop rate from Settings. That figure is shown as a placeholder rather than copied into the field, because a copy would freeze the rate onto the job — change the shop rate later and every job that was never priced by hand still follows it. Typing 0 means zero: a warranty call, a goodwill visit, a call-back. A deliberate zero used to be read as an empty box and quietly billed at the shop rate, which is money asked for on a job the technician had written off.

Figures can be added or corrected after the job is finished, without reopening it and without completing it again. On a work order the control reads ADD BILLING when there is nothing yet and EDIT BILLING when there is; on the PM list on the phone it is the dollar icon on the row, which opens a BILLING DETAILS sheet with SAVE BILLING at the bottom; on the dashboard it is a Billing details dialog. Every one of them writes the billing columns and nothing else. The completion date does not move, the schedule does not advance, and where nothing actually changed nothing is written at all.

Once an invoice exists, editing the job behind it cannot restate it. The lines on an issued invoice are a frozen snapshot and the totals are frozen with them, so an amendment tells you the log is already on an invoice rather than silently rewriting a document that is on somebody else’s desk.

One labor rate, and exactly which lines it moves

Each invoice carries its own labor rate. LABOR RATE FOR THIS INVOICE ($/HR) is seeded from DEFAULT LABOR RATE ($ / HOUR) in Settings when the invoice is raised, and from that moment it belongs to this invoice: bill one customer differently without opening every labor line and retyping the same number into each of them.

Changing it re-prices only the labor lines that were still sitting at the old rate. A call somebody dropped to $95 as a favor keeps $95. That answer is worked out from the prices on the lines rather than remembered in a flag, so it cannot go stale — and it has one honest edge, stated here rather than discovered later: a price typed by hand that happens to equal the rate the invoice is already using cannot be told apart from one that was following it, so it moves along with the rest, to a number it already had.

An invoice with no rate stored on it — which is every invoice raised before the rate had a column of its own — is not left out. The outgoing rate is read from the lines instead: the price the labor lines agree on, or, where one has been priced away from the others, the price most of them still share. A tie moves nothing and says so. Zero is never treated as the rate, because sweeping up a $0 line would turn a document that said no charge into one asking for money.

A typo in the rate box is refused rather than read as a blank, and so is a negative rate. Nothing about money on this screen is guessed at.

Who it is addressed to

Four chips: SITE, OWNER, TENANT and TYPE IT IN. The site is the address on the building, the owner is the party on the property record, and the tenant is a resident of one unit — that chip asks which unit, and it is unavailable on a location that has no units on it.

A location with no address on file says NO ADDRESS ON THIS LOCATION and offers two answers instead of one: ADD TO SITE INFO, which writes it onto the property so it is there next time, or USE ON THIS INVOICE ONLY, which prints it on this document and changes nothing else. An address typed for one invoice is never written back to the location behind your back, because somebody filling in a customer address at six in the evening is not necessarily deciding what that property record should say for ever.

A number minted once, that never comes back

The number is minted at issue, inside the same transaction that stamps the issue date, and stored on the row. The invoice this replaced had no number at all: the screen and the PDF each derived one from the clock, so the same invoice showed two different numbers depending on where you looked at it.

The prefix and the year are yours; the sequence underneath is an integer, so changing the prefix in Settings cannot disturb the ordering. A voided invoice keeps its number and nothing is ever reissued, which means the series has gaps in it. That is evidence rather than damage — compacting it would hide a void, which is the one thing a numbered document series exists to make impossible.

A voided invoice can be deleted outright, and its number still will not be reused. The floor for that prefix and that year is a high-water mark that only ever rises, raised inside the same transaction as the delete, and the security rules allow it to be raised while refusing to let anybody delete it — the account owner included.

Two people issuing offline in the same year can still mint the same number, because gapless numbering needs a server counter this app deliberately does not have. Every row carrying that number is flagged DUPLICATE NUMBER instead, on the phone and on the dashboard, with a line naming the number, saying how many invoices are on it and telling you to void the one that has not been sent and raise it again. One of those numbers is already on a customer’s desk, and moving it there is not something software gets to do.

Payments, part payments, and a balance that is never stored

RECORD PAYMENT takes an amount, a date and a method — CASH, CHECK, CARD, ACH or OTHER — and check, card and ACH ask for a reference, so a line on a bank statement can be matched back to it three weeks later. Part payments are ordinary: take half now, and the invoice carries the rest.

There is no paid column anywhere. The balance is added up from the payment rows every time it is shown, so it cannot drift away from them — a cached total that quietly disagrees with its own rows is how somebody gets chased for money they already paid. A payment recorded against a standing invoice can be voided but not erased, and that is enforced on the server rather than only on the screen.

The list leads with TOTAL OUTSTANDING, and under it what is overdue. Below that the invoices are grouped in the order they actually get chased: OVERDUE, PART PAID, SENT, ISSUED, DRAFT, with PAID and VOID last and collapsed. A part-paid invoice that is three weeks late still sits in OVERDUE, because the section answers what has to be chased rather than what most recently happened to the money.

The document itself, and where it goes

Your company profile from Settings heads it: logo, business name, contact details. Uploading a logo is free on every plan, and this is the same branded header the reports carry.

One sales tax rate, set once and overridable on the invoice, applied to the subtotal and shown as its own line. Money is whole cents and the rate is basis points from end to end, so 8.25% is the integer 825 and nothing anywhere parses a decimal into a float and hopes.

On the phone, SHARE PDF hands the file to the share sheet the phone already has, which is how it reaches mail, a messaging app or a cloud folder. SAVE PDF TO DEVICE writes it into a folder you pick and is Android only — on iOS the app says so and points at SHARE PDF instead of failing with nothing on screen. On the dashboard the control is PRINT / SAVE PDF and uses the browser’s own print dialog.

A voided invoice exported from the phone is headed VOID — NOT PAYABLE rather than INVOICE, so that piece of paper cannot be mistaken for one that is still owed.

The rows live in the app’s own database and the PDF is rendered on the device, so raising an invoice, issuing it, printing it and recording a payment against it all work with no signal at all — in a mechanical room, in a basement, on a roof. What needs a connection is getting that invoice onto anybody else’s device.

What this invoicing is not

Said plainly, because finding out on a roof is worse than never buying. There is no payment processing: nothing is charged, no gateway is contacted, and no field anywhere takes a customer’s card number. CARD is a label on a chip meaning they paid by card, and the reference box is for the last four digits or an auth code you type in yourself.

There is no QuickBooks, Xero or any other accounting sync. What leaves the app is a PDF. There is no recurring or automatic billing — a PM schedule recurs, the invoice raised from one does not, and somebody presses the button every time. There are no credit notes or credit memos: a mistake is voided, not credited. And nothing is emailed from inside the app or the dashboard; the phone hands the PDF to the share sheet and the dashboard prints.

Nor is there dispatch routing, crew scheduling, a customer booking portal, or quotes and estimates. If your business runs on cards taken in the van and books that reconcile themselves overnight, a dedicated field service platform is the right tool for that half of the job and we will keep saying so. This is the invoice that comes out of the maintenance record you were keeping anyway.

Who bills, and what it costs

Billing is done by the account owner and by managers. A technician records the hours, the parts and the materials on the work order or the PM — which is what the invoice is raised from — and the Invoices item does not appear in their Workflow bar; if one reaches a billing action anyway, they are told plainly who does it instead, rather than watching a save appear to succeed and then never arrive anywhere. Those limits live in the security rules and not only on the screens. A read-only viewer can look at invoices and change nothing.

Raising, issuing, printing and recording payment on an invoice are free in the app. There is no Pro chip on the tile, no gate on the screen, and no trial credit being spent. What is Pro is what is Pro everywhere else in this product: the cloud sync that puts one crew’s invoices on more than one device, and the web dashboard, whose invoice screens sit behind the subscription exactly as the rest of the dashboard does.

One boundary worth knowing before you lean on it. On a free account the invoices live on the phone, and the invoice rows are not carried in the ZIP backup. Your invoice defaults — the number prefix, the labor rate, the tax rate, the payment terms — do ride in the ZIP and come back on import. The invoices themselves reach a second place only through cloud sync, which is Pro.

Frequently asked questions

Is invoicing free?

In the app, yes. Raising an invoice, issuing it, printing it and recording payments against it are free, with no Pro gate on the screen and no trial credit involved. Pro is the cloud sync that shares invoices between devices, and the web dashboard, whose invoice screens sit behind the subscription like every other dashboard screen.

Can I take a card payment through the app?

No. Recording a payment here is bookkeeping: you note that money arrived, how it arrived and when. No gateway is contacted, nothing is charged, and there is no field anywhere that takes a card number. CARD is a label meaning the customer paid by card, and the reference box is for a last four or an auth code you type yourself.

Does it sync with QuickBooks or Xero?

No. There is no accounting integration of any kind, and none is hidden behind a setting. What the invoice produces is a PDF — shared from the phone, printed from the dashboard.

Can a technician raise an invoice?

No. Billing is done by the account owner and by managers, and that is enforced in the security rules rather than only hidden on screen. A technician records the hours, parts and materials on the work order or the PM, and that is what the invoice is built from.

Can I bill one customer at a different rate?

Yes. Every invoice carries its own labor rate, seeded from your Settings rate and changeable on that invoice. Changing it re-prices the labor lines that were still following the old rate and leaves anything you priced by hand exactly as you typed it.

What happens to the number if I void an invoice?

It keeps it. Nothing is ever reissued under a used number, and deleting a voided invoice does not release it either — the floor for that prefix and year only rises, and even the account owner cannot lower it. A gap in the series is the evidence that something was voided.

Does invoicing work without a signal?

Yes. The invoices live in the app’s own database and the PDF is rendered on the device, so raising, issuing, printing and recording payment all work with no connection. Getting those invoices onto a second device is the part that needs one, and that is Pro.

Can I email an invoice from inside the app?

Not directly. On the phone SHARE PDF hands the file to the share sheet, so you pick your own mail app from there; on the dashboard the control is PRINT / SAVE PDF and uses the browser’s print dialog. There is no mail sending built in, and MARK SENT is a status stamp rather than something that transmits anything.

Read next

Work orders — where most invoices start → PM scheduling — the planned work that also gets billed → What is free and what is Pro → Honestly compared with the CMMS and FSM tools →

Free to download. Nothing to set up.

Core tracking is free forever and works with no signal. Pro adds cloud sync, the web dashboard, AI scanning and the hosted QR codes.

Create Free Account App Store Google Play