If you send similar invoices repeatedly — the same handful of cost categories, invoice after invoice — you don't have to group line items in InvoicePolish by hand every time. Tag Xero line items with a keyword of your choice, like #MATERIALS or #LABOUR, and InvoicePolish groups everything sharing that tag into a single line item with one click inside the editor. Or go further: add #GENERATE as its own line item, then click Save or Update on that invoice in Xero — InvoicePolish detects the save and automatically generates the polished version and attaches it straight back to the Xero invoice you just saved, without you ever opening InvoicePolish at all.
There's no single fixed tag to learn — you choose the keyword. Add it to the start or end of a Xero line item's description: #LABOUR, #MATERIALS, #CALLOUT, or any word you like, as long as it's written in capitals directly after the #. InvoicePolish detects these tags automatically the next time the invoice loads.
A tag only forms a group once at least two line items share it — a single #MATERIALS line on its own won't create a group, since there'd be nothing to combine it with.
Once InvoicePolish detects at least one keyword tag on an invoice, an "Automate Groups" button appears in the editor. One click reassigns every tagged line item into groups based on its keyword — everything tagged #MATERIALS forms one group, everything tagged #LABOUR forms another, and so on. No dragging, no manual selection. This works for both invoices and quotes.
Automate Groups replaces any existing groups on that invoice, so it's built for invoices you're grouping for the first time, or duplicated invoices you're happy to re-group from scratch — not for fine-tuning a layout you've already hand-adjusted.
When you click Automate Groups in the InvoicePolish editor, every Xero line item sharing a keyword is combined into one grouped line. By default, that group is named after the keyword itself — #LABOUR becomes "Labour" automatically, regardless of what the individual line items underneath it say.
If you'd rather use your own wording instead, add a line item in Xero tagged with that same keyword, positioned above the first priced line item you want grouped, and leave its quantity and amount blank ($0). InvoicePolish uses that line's own description as the group's name instead — and that heading line itself doesn't appear as a billable row, only the priced items grouped beneath it do.
Keyword tags handle grouping once you're inside InvoicePolish. #GENERATE goes further and removes InvoicePolish from the workflow entirely. It works differently from a keyword: rather than being added to an existing line item's description, #GENERATE is the entire content of its own dedicated line item — leave everything else on the line blank.
Add that line to the invoice, then click Save or Update on the invoice in Xero — that click is the trigger. InvoicePolish detects the save, and within moments automatically groups every keyword-tagged line item the same way Automate Groups would, renders the PDF using your default template for that Xero organisation, and downloads and attaches the finished PDF straight back to the same Xero invoice you just saved — all without logging into InvoicePolish at all. This is invoice automation specifically; #GENERATE doesn't apply to quotes.
There's no need to remove the #GENERATE line once you're done — keeping it on the invoice turns every future edit into an automatic paper trail. Make a real change to the invoice and save it in Xero, and InvoicePolish attaches a fresh PDF, timestamped to the minute, alongside whatever was already there. Save again without changing anything, and InvoicePolish recognises the invoice is unchanged and skips creating a duplicate — so you only pick up a new version when there's genuinely something new to see.
Nothing is deleted automatically, so every real revision stays attached with its own timestamp — a running history you can refer back to. If you'd rather keep things tidy, just delete the older attachments in Xero and leave the latest one in place.
One thing worth knowing: any groups you've manually adjusted inside InvoicePolish for that invoice get rebuilt from the invoice's keyword tags each time #GENERATE runs. If you've fine-tuned a layout by hand, expect #GENERATE to redo the grouping automatically on the next save — that's what keeps the attached PDF in sync with the invoice.
A tag like #MATERIALS or #LABOUR is an instruction to InvoicePolish, not something meant for a client to read. It never appears on a generated PDF — not the version you download, not one you attach to Xero, not one #GENERATE builds automatically. A line item tagged "#MATERIALS Copper fittings" simply prints as "Copper fittings."
Inside the editor itself, a toggle called "Hide Grouping Word" controls whether you can see the raw tag while you're working — it's switched on by default, so your own view already matches what the client sees. Switch it off if you want to check or adjust which items are tagged with what; switch it back on when you're done. Either way, the tag text itself is never part of the final invoice.
No — "keyword" is just the general term. You choose the actual word: #LABOUR, #MATERIALS, #CALLOUT, or anything else, as long as it's written in capitals directly after the #. It just needs to be consistent across the line items you want grouped together.
No. The generated PDF always strips the tag from the line item description, whether you download it, attach it to Xero, or #GENERATE builds it automatically. The "Hide Grouping Word" toggle in the editor only affects what you see while working — it has no effect on the client-facing PDF, which never shows the raw tag either way.
By clicking Save or Update on the Xero invoice once the #GENERATE line item is on it. InvoicePolish detects that save and automatically builds and attaches the PDF to that same invoice — there's nothing to click inside InvoicePolish itself.
No — #GENERATE automation applies to invoices only. Keyword tagging and the Automate Groups button both work for quotes too, but the fully automated #GENERATE pipeline is invoice-specific.
Only when something actually changes. InvoicePolish checks whether the invoice content is different from the last #GENERATE run — if it isn't, the save is skipped rather than attaching a duplicate. A genuine edit still attaches a fresh, timestamped PDF automatically.
No. Both only affect grouping and the generated PDF. Your original Xero line items, amounts and tax treatment are never edited.
Your default template for that Xero organisation. Set your default template once in InvoicePolish, and every #GENERATE invoice for that organisation uses it automatically.
Tag your line items once, then let keyword grouping and #GENERATE handle the rest.
No disruption to your Xero account. Cancel anytime.