Create & edit an invoice
The New invoice form is the most-used surface in Billing — every invoice you type by hand flows through here. The same form is used for editing, with a few fields locked once an invoice is saved.
Opening the form
There are three ways to get here:
- From the Invoices list, click + New invoice in the top-right (or in the empty state).
- From a client profile, open the Billing tab and click + New invoice — the client is pre-filled.
- From an engagement detail page, the Billing card has a + Invoice action — both client and engagement are pre-filled.
The form opens in a slide-out drawer on the right. Press Escape to close — if you’ve started editing, you’ll be asked to confirm before losing changes.
[Screenshot: New invoice drawer with line items]
Filling in the form
Client (required)
Searchable dropdown of all your active clients. In edit mode this is locked — to move an invoice to a different client, cancel it and create a new one.
Engagement (optional)
If the client has any active or on-hold engagements, the engagement picker turns on. Pick one to link the invoice — payment activity then shows on the engagement timeline.
Engagements that are completed, cancelled, or archived don’t appear in the dropdown (with one exception: an invoice already linked to a closed engagement keeps that engagement visible so the picker doesn’t go blank).
If no engagement matches, the picker shows “No active engagements” and stays at ”— None —”.
Invoice number (required)
Auto-generated when you open the form. You can overwrite it before saving — handy if your firm uses an external numbering scheme.
Once saved, the number is locked.
Due date (required)
Defaults to 30 days from today. Use the date picker or type MM/DD/YYYY.
Line items
The heart of the form. Each line has:
| Field | Notes |
|---|---|
| Description | Required. Free text, or pick from the service catalog dropdown. |
| Quantity | Defaults to 1. Supports two decimals (e.g. 1.5 for an hour and a half). |
| Unit price | Required. Two decimals, with a $ prefix. |
The first line is always there. Click + Add line item to add another. Each line has a Remove button once you have two or more.
Using the service catalog
Click into the Description field and the catalog picker opens. You’ll see one of three states:
| State | What you see |
|---|---|
| Nothing in the catalog yet | ”Build the service catalog →” link |
| Items match what you typed | Up to 8 results, each with name and price |
| Items exist but nothing matches | ”No catalog matches — keep typing for a custom line item” |
Pick an item and the description and unit price auto-fill. You can still tweak both — the catalog is a starting point, not a lock.
Build out your catalog → before doing this at scale.
Tax (optional)
Tax accepts either a dollar amount or a percent of subtotal. Toggle between $ and %.
When in % mode, the form shows the resolved dollar amount below — ”= $X on $Y subtotal”. Switching modes after typing recalculates from the subtotal.
If your jurisdiction doesn’t tax tax-prep services, leave this at 0.
Description (optional, internal)
Free-text notes about the invoice. Not shown to the client.
Client notes (optional, visible to client)
Free-text that appears on the invoice PDF and the client portal view. Use this for things like “Thank you for your business” or “Net 15 — interest applies after the due date.”
Internal notes (optional, firm only)
Hidden from the client. Use for collection notes, exception details, or context for teammates.
The running total
A sticky bar at the bottom of the drawer shows:
Subtotal: $X.XX Tax: $X.XX Total: $X.XX [Create Invoice]It updates as you type. Total is what the client owes.
Saving
Click Create Invoice (or Save changes in edit mode). The drawer closes and the new or updated invoice appears in the list.
A new invoice always lands as a Draft — it isn’t visible to the client until you send it from the drawer or list.
Editing an existing invoice
When you open an existing invoice for edit:
- Client — locked, shown as a read-only chip
- Invoice number — locked, shown as a read-only chip
- All other fields — editable
Change the engagement link and the activity timeline reflects the move.
Edit is only available on invoices that are Draft, Sent, or Viewed. Once a payment lands or the invoice is cancelled, the form won’t open — issue a credit memo instead.
Validation messages
Inline messages appear under each field. Form-level messages render at the top:
| Rule | Message |
|---|---|
| Client required | ”Select a client” |
| At least one line item with non-zero quantity and price | ”Add a line item” |
| Due date in the future | ”Due date must be after the invoice date” (a warning, not blocking) |
| Tax can’t be negative | ”Tax must be 0 or more” |
| Invoice number unique within your firm | ”An invoice with this number exists” |
If something goes wrong while saving, the top of the form shows the message directly so you know what to fix.
Invoices Assure Pro creates for you
A few invoice paths skip this form entirely:
- Recurring schedules generate monthly, quarterly, or annual invoices automatically. See Recurring schedules.
- Engagement letters with retainers — when a client signs a letter that includes a retainer plus monthly fee, Assure Pro creates the retainer invoice and the recurring schedule in one step.
These appear in the same list and look identical to invoices you typed by hand.
Permissions
| Action | Permission |
|---|---|
| Open the form to create | Create billing |
| Open the form to edit | Edit billing |
| Pick from the service catalog | View service catalog |
| Link an engagement | View engagements |
Next
- Service catalog — define reusable line items.
- Recurring schedules — automate the same invoice every month.
- Payments & refunds — what happens after Send.