Skip to content

Invoices

Breeze’s invoice engine turns the work you already track – catalog items, time entries, and parts – into invoices you can issue, send, and collect on without leaving the platform. Open Billing → Invoices to get started.

Invoices are partner-scoped: you can invoice any of your customer organizations from one place.

The list shows every invoice with its number, organization, status, issue and due dates, total, and outstanding balance. An Outstanding summary strip at the top totals what’s still owed across all invoices. Search by number or organization, filter by status, organization, or date, and sort by issued date, due date, total, or balance.

Status Meaning
Draft Being assembled; not yet issued and not visible to the customer
Sent Issued and delivered to the customer
Partially paid One or more payments recorded, but a balance remains
Paid Fully paid
Overdue Past its due date with a balance remaining
Void Cancelled; no longer collectible
  1. Go to Billing → Invoices and click New invoice.
  2. Choose Assemble from work to pull in tracked time and parts, or Blank invoice to start empty.
  3. Select the customer organization the invoice is for.
  4. When assembling from work, choose the draft’s Currency. Organization default uses the currency the organization bills in today; pick an explicit currency only when you need to bill work that was priced in a currency the organization no longer uses.
  5. The invoice opens as a draft for editing.

Every invoice is stamped with the customer organization’s billing currency. An organization inherits that from your partner currency (Settings → Billing) when it is created, and the stamp then travels with the document – clones and reissues keep it, and issuing never rewrites it.

The stamped currency can’t be changed from the console. Changing a draft’s currency is an API-only operation (POST /invoices/:id/currency) that first clears the draft’s lines or reprices catalog-sourced lines into the new currency; nothing is ever converted at an exchange rate. Retargeting a draft to an organization that bills in a different currency is refused rather than silently re-priced.

Tracked time and parts keep the currency they were priced in when they were logged. Assembling only pulls in work whose currency matches the draft’s currency; nothing is ever converted. If some unbilled work in the range is priced in another currency, the draft is still created and a notice tells you how many items were left out and in which currency – assemble a separate draft in that currency to bill them. If all the unbilled work is in another currency, nothing is assembled and the dialog offers an Assemble in … button for each currency found (with the item count and total); clicking it creates a draft in that currency containing exactly those items. The same Assemble in shortcut appears on a ticket’s Create invoice action when its unbilled work is in a different currency than the organization now bills in.

Once an invoice is issued, the time entries and parts it billed are locked: their hours, rates, quantities, and prices can no longer be edited (descriptions and notes still can). Void and reissue the invoice if an amount needs to change.

The draft editor’s primary way to add lines is the shared catalog picker – start typing to search your Product Catalog by name or SKU, pick an item or bundle, and set the quantity. Catalog items use the customer’s per-customer price when one is set. You can also add a manual line with a custom description, quantity, and price for anything not in the catalog.

Line items can come from several sources: catalog items, bundles, tracked time entries, parts, recurring contracts, or manual entries. The running subtotal, tax, total, and balance update live as you edit.

Issuing an invoice finalizes it: it assigns the next sequential invoice number (using your partner prefix and the current year), sets the issue and due dates, and generates the PDF. Sending emails the invoice to the customer.

  1. Review the draft and confirm the line items and totals.
  2. Click Issue to assign a number and lock the invoice.
  3. Click Send to email it to the customer.

Send opens a composer prefilled from the organization’s billing contact: recipients, Cc, subject, a personal message, and whether to attach the PDF. The email and the PDF both carry a Pay online link.

An invoice that has already been issued can be re-sent without changing anything about it – its number, dates, amounts, and “sent” timestamp all stay as they were, so a reminder never looks like a second invoice. A paid invoice can be re-sent too, as a receipt. Drafts and voided invoices can’t be sent this way.

The issued-invoice view puts the balance due front and center, shows recorded payments, and offers a one-click PDF download, plus Copy invoice link and Reset customer link – see Online Payments.

When a customer pays offline, record it against the invoice so the balance and status stay accurate. Payments collected online through Stripe are recorded automatically and badged Online.

  1. Open the issued invoice.
  2. Click Record payment.
  3. Choose the method – cash, check, bank transfer, card, or other – and enter the amount, date, and an optional reference.
  4. Save. The invoice moves to partially paid or paid automatically based on the remaining balance.

A payment amount has to be expressible in the invoice’s currency: an invoice in a currency with no minor unit (such as Japanese yen) won’t accept 100.50.

You can void a manually recorded payment if it was entered in error. Payments collected online through Stripe are reconciled from Stripe and can’t be voided by hand.

When an invoice is created from an accepted quote that requires a deposit, it carries a deposit due amount – and that deposit is what the customer pays first. The invoice shows the deposit as the amount due up front; once it’s covered, the remaining balance becomes due per the invoice’s terms. A single invoice therefore carries the whole engagement while still collecting the deposit before the balance, and the customer can pay both the deposit and the balance through Online Payments. See Quotes → Deposits for how the deposit is configured before the quote is sent.

Each customer organization has a Billing tab (Settings → Organizations → [organization] → Billing) that holds the details Breeze prints on and calculates for that customer’s invoices:

  • Tax ID, a tax-exempt flag, and a per-organization tax rate. When a rate is set here it applies to that customer’s invoices; otherwise Breeze falls back to your partner default tax rate (Settings → Billing).
  • A billing contact and full billing address (address lines, city, region, postal code, and country), which appear on the invoice PDF.

Setting these once per customer means invoices carry the right tax and address without re-entering them each time.

If an issued invoice needs to be cancelled, void it with a reason. You can optionally reissue at the same time, which creates a fresh draft you can correct and issue anew – keeping the original on record for audit purposes.

Every issued invoice can be downloaded as a clean, single-page PDF to send or archive. The detail view also offers an accounting-oriented breakdown of subtotal, tax, total, payments, and balance.

Select invoices using the checkboxes in the invoice list to reveal a bulk action bar.

Action Permission required Notes
Issue Invoice send Issues all selected draft invoices
Void Invoice send Prompts for a void reason; applies to all selected issued invoices
Delete drafts Invoice write Deletes all selected draft invoices

Actions run per-item in isolation, so partial success is possible – the bar reports what succeeded and what failed.

Invoice access is governed by role permissions: viewing requires invoice read access, creating and editing drafts requires invoice write access, and issuing, sending, voiding, and recording payments require invoice send access. Assign these through Settings → Users & Roles.