Cancel an Invoice
Cancel an invoice when you billed for the wrong amount, the wrong customer, or just made a mistake. Cancellation is the only way to "edit" an invoice — there's no edit flow, by design, since the invoice has already left TuffOps for your billing system.
After cancelling, the work order becomes invoiceable again so you can create a new invoice with the correct numbers.
Before you start
- You have the
invoices.editpermission. - The invoice status is
Sent.Paidinvoices can't be cancelled — your accountant has to reverse the payment first.Cancelledinvoices stay cancelled.
Steps
You can cancel from either the work order or the Invoices list. The work order is faster when you already have it open.
From the work order
-
Open the work order
Select Work Orders in the top navigation bar, then select the Edit action for the work order whose invoice you want to cancel.
-
Cancel the invoice
In the Invoice card on the right, select the red Cancel Invoice button. Confirm when prompted.
From the Invoices list
-
Open the Invoices list
Select Invoices in the top navigation bar.
-
Find the invoice
Search by invoice number or customer name in the filter bar at the top, or filter the Status dropdown to
Sent. -
Cancel the invoice
Select the red ban icon in the Actions column for the row. Confirm when prompted.
What happens next
- TuffOps tells your connected billing system to cancel the invoice. If that call fails, the cancellation does not happen in TuffOps either — you'll see an error message and the invoice stays
Sent. - On success, the invoice flips to
Cancelled, the cancellation timestamp is recorded, and the Cancel Invoice button is replaced with aCancelledbadge. - The work order's Invoice card switches back to "No invoice yet." with a fresh Create Invoice button. Active-invoice protection is gone — a new invoice can be created.
Common situations
| Situation | What to do |
|---|---|
| You billed the wrong tax rate | Cancel, then create a new invoice with the right rate. |
| You billed for unit price but should have excluded it | Cancel, then re-create with Include unit price toggled off. |
| The customer paid the wrong invoice and you can't cancel it | A Paid invoice can't be cancelled. Issue a credit through your billing system, then re-invoice in TuffOps if needed. |
| You cancelled the wrong invoice | There's no undo. Create a new invoice for the same work order with the same numbers — it gets a new invoice number, but the totals are identical. |
| Multiple invoices exist for the same work order | Only the active (Sent or Paid) one matters for "is this work order invoiceable?". Cancelled ones are kept for audit but don't block creating a new one. |
Troubleshooting
Cancellation fails with "Cancellation failed: …. Please contact TuffOps for assistance."
The call to your billing system failed and TuffOps refused to cancel locally to keep the two systems in sync. The error message in the toast usually names the underlying cause (auth, network, missing record). Try again in a few minutes if it looks transient. If it persists, contact TuffOps support — don't try to manually edit the invoice in your billing system, since that creates drift.
You see "A paid invoice cannot be cancelled."
The invoice has already been marked Paid in your billing system. Cancellation is a Sent-only action by design, so the books stay clean. If the customer was billed in error, issue a credit/refund through the billing system, then re-invoice the work order if you need to.
You see "This invoice is already cancelled."
Somebody beat you to it, or you double-clicked the button. Refresh the work order or the Invoices list — the status badge should now say Cancelled and the button is gone.
The Cancel Invoice button isn't there.
Either the invoice status isn't Sent, or you don't have the invoices.edit permission. The button is hidden in both cases. Check the status badge in the Invoice card to confirm.
Related
- Create an Invoice from a Work Order — re-invoice the same work order after cancelling.
- Approve & Complete a Work Order — required before any invoice can be created.