Chasing Unpaid Invoices With AI: Polite Reminders for Trades

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Chasing Unpaid Invoices With AI: Polite Reminders for Trades.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Chasing Unpaid Invoices With AI: Polite Reminders for Trades.

Set a reminder ladder in the tool you invoice from (a friendly nudge on the due date, firmer notes at 7 and 14 days overdue, a final notice around 30) and use AI to write each rung in your own tone and to draft replies when a customer disputes the bill. Every message carries the amount, invoice number and a payment link.

AI's real value here isn't sending reminders. Xero, QuickBooks, Jobber and Housecall Pro already do that on a schedule. It's the messages around the schedule: the personal note to a builder who owes you $4,000, the reply to "I'm not paying until the gate's fixed", the script for the phone call you've been putting off. And the ladder must stop the moment money arrives. The complaint trades firms hear most about reminders is "I paid you on Tuesday", usually because the bank feed hadn't caught up.

Follow me on Instagram@sagnikteaches

A reminder ladder for trade invoices

Most small trades firms either never chase or chase with one angry text after six weeks. A ladder does the steady middle for you. Here's one that suits domestic work with 14-day payment terms:

Connect on LinkedInSagnik Bhattacharya
WhenToneChannelSent by
Job finishedThanks, invoice and payment linkText and emailInvoicing software
Due dateFriendly: "just a reminder, due today"Same as invoiceAutomatic
7 days overduePolite and directSame as invoiceAutomatic
14 days overdueFirm: states the next stepEmail, plus textAutomatic
21 days overduePhone call first, then a written summaryPhone, then emailYou
30 days overdueFinal notice: what happens next and whenEmail and letterYou, reviewed before sending

For business customers who pay on monthly runs, shift the ladder so the reminder lands a few days before their payment run rather than after it. Asking their accounts team "when is your next payment run?" once saves weeks of reminders that arrive at the wrong time.

Subscribe on YouTube@codingliquids

Take an electrician doing small commercial work, say shop fit-outs and landlord safety checks: invoices on 30-day terms, three or four business customers who each pay on the last Friday of the month, and a few domestic jobs on 7-day terms. That firm needs two ladders. Domestic invoices follow the table above. Commercial ones get a single polite email the Monday before each customer's payment run ("just checking invoice 1047 is on this month's run"), then a phone call to their accounts contact if it's missed. The AI's job is the same in both cases, writing the wording once, but the timing comes from knowing the customer, not from a default setting.

Switching it on in the software you already invoice from

You probably have this feature and haven't turned it on. Where to find it, as described in each vendor's help pages:

  • Xero: Sales settings, then Invoice settings, then Invoice Reminders. Turning it on creates three default reminders at 7, 14 and 21 days overdue; you can edit them, add reminders before the due date, and have up to five. Reminders go out early each morning in your organisation's time zone.
  • QuickBooks Online: Account and settings, the Sales tab, then Reminders. You can schedule up to three reminders anywhere from 90 days before to 90 days after the due date, and they only go out for invoices you've already emailed from QuickBooks.
  • Jobber: two automatic follow-ups on past-due invoices, on the Connect plan and above. Each is sent by the same method as the invoice, so an invoice sent by text gets its reminder by text.
  • Housecall Pro: automatic reminder emails once an invoice is past due, between 1 and 10 of them at the frequency you choose, with the option to exclude customers by name or tag.

Before the first real reminder goes out, send a test. Raise a $1 invoice to yourself, due today, and let the ladder run. You're checking three things: that the reminder arrives on the day and by the channel you expect, that the payment link opens the right invoice, and that every placeholder filled in. Each package names its fields differently, so the {first_name} from an AI-written template has to be swapped for your software's own field name. A reminder that reaches a customer reading "Hi {first_name}" tells them nobody looked, which is the opposite of the personal touch you rewrote the wording for.

Two settings matter more than the schedule. Include a payment link in every reminder, because "click to pay" gets paid faster than bank details. And learn how to switch reminders off for one invoice or one customer, because you'll need it for disputes and payment plans.

Prompts that write each rung in your own voice

The default reminder text in most software is stiff. Rewrite it once with AI, approve it, and paste it into the settings. Give the model a sample of how you actually write:

I run a three-person landscaping firm. Write reminder messages for unpaid
invoices, for my invoicing software to send automatically.
My usual texts to customers sound like this:
"Hi [first name], all done at yours. Gate's rehung and the new turf's down,
give it a good soak tonight. Invoice attached, thanks again. [your name]"

Write four messages: due date, 7 days overdue, 14 days overdue, 30-day final.
- Use placeholders: {first_name} {invoice_number} {amount} {due_date} {pay_link}
- Each under 60 words. Friendly first, firmer later, never rude.
- 14-day message: say I'll call if it's still unpaid in a week.
- 30-day message: say that if it isn't paid or discussed within 7 days,
  I'll pass it to [my next step]. Don't mention courts, fees or interest.
- Sign off with my first name.

What comes back might look like this (illustrative):

Due date: Hi {first_name}, just a quick reminder that invoice {invoice_number}
for {amount} is due today. You can pay here: {pay_link}. Thanks, [your name]

7 days: Hi {first_name}, invoice {invoice_number} for {amount} was due on
{due_date} and I can't see it's been paid yet. If it's slipped through the net,
here's the link: {pay_link}. If there's a problem with the work, just let me
know. [your name]

14 days: Hi {first_name}, invoice {invoice_number} for {amount} is now two weeks
overdue. Please pay here {pay_link} or reply if something's holding it up.
If it's still outstanding next week I'll give you a ring. [your name]

30 days: Hi {first_name}, invoice {invoice_number} for {amount} is now 30 days
overdue and I haven't heard back. Please pay or get in touch within 7 days.
After that I'll need to [next step]. [your name]

The 7-day line "if there's a problem with the work, just let me know" earns its place: a customer with a genuine snag tells you, rather than quietly not paying. Fill in "[next step]" with something you'll actually do, whether that's passing it to your accountant or sending a formal letter. A final notice that threatens something you never follow through teaches customers to ignore the next one.

Business customers need one change to the wording: the reference their accounts team looks for. Before, as an illustration: "Hi, just a reminder that invoice 1047 is overdue. Thanks." It went to the site manager who booked the job, who forwarded it nowhere. After: "Invoice 1047 for $2,340, your PO 88-1123, for the rewiring at [site address]. It was due on 30 June and isn't showing as paid. Could you confirm it's on this month's payment run? I've copied your accounts team." Same request, but now the person who pays can match it to something in their system in ten seconds.

When the customer has a reason not to pay

This is where AI saves the most time and stress, because dispute replies are hard to write when you're annoyed. Paste the customer's message and the facts, and ask for a calm draft:

A customer hasn't paid a $1,850 invoice for a new patio (21 days overdue).
Their message: "Not paying anything till you sort the puddle by the back door.
Should never have been left like that."
Facts: the quote said the patio falls away from the house. There's a low spot
by the door about 1m square. I'm happy to lift and relay that section free.
Draft a reply that: acknowledges the problem, offers a date to fix it,
asks them to pay the balance minus a fair amount held back until it's fixed,
and stays friendly. Under 100 words. No legal language.

Illustrative draft:

Hi [first name], sorry about the puddle, that shouldn't be there and I'll put it right. I can come Thursday morning to lift and relay that section at no charge. So you're not paying for something that isn't finished, how about you pay $1,600 now and the last $250 once you're happy with the fix? Here's the link for the $1,600: [link]. Let me know if Thursday works. [your name]

Before sending, check the numbers: $1,600 plus $250 is $1,850, but AI does get this kind of sum wrong, so do it yourself. And make sure you're offering what you'd be happy to do; the AI will cheerfully propose a discount you never intended if you don't give it the facts. The "I paid you on Tuesday" reply deserves a ready-made answer too, because it's the one you'll send most. Ask for it once and save it: "Thanks for letting me know, and sorry for the reminder. Payments can take a day or two to show on my side. I've paused the reminders and I'll check again on Friday; if it still hasn't arrived, I'll send you a quick text so we can work out where it went." No accusation, a date to check, and no further reminders in the meantime.

Hardship replies need firmer drafting than disputes, because vague kindness causes the next problem. A customer writes: "Sorry, lost a lot of work this month, can't pay the $900 yet." An illustrative first draft: "No problem at all, pay whenever you can, no rush." It's generous, and it leaves you with no date and no way to raise it again without seeming to go back on your word. Tell the AI the plan you'll accept: "Offer three payments of $300 on the 1st, 15th and 30th, first one this week, and say I'll pause the reminders while they stick to it." The reply stays kind and turns into dates both of you can check.

Pause the automatic reminders on that invoice while the fix is pending, or the customer gets a "30 days overdue" message the morning you arrive to relay their patio.

Clearing $14,600 of overdue invoices at a landscaping firm

As an illustration, picture a three-person landscaping firm that has never chased systematically. At the end of summer it has 23 unpaid invoices totalling $14,600, from $95 hedge trims to a $4,200 garden build. The owner exports the aged debtors report (customer initials instead of names, invoice number, amount, days overdue, any notes) and asks an assistant to propose an action for each:

For each invoice, suggest one action: automatic reminder only / personal text /
phone call / check first (possible dispute or payment already made).
Put phone calls in order of amount. Show totals per action.

The result, checked and adjusted by the owner in about 20 minutes: 14 small invoices ($2,300) left to the newly switched-on automatic ladder; 5 personal texts ($3,100) to regular customers who'd simply forgotten; 3 phone calls ($8,400), including the $4,200 build where the customer had been waiting for a revised invoice nobody sent; and 1 "check first" ($800) where the notes said "paid cash?" and the bank statement confirmed it had been paid weeks ago. That last one would have been an embarrassing reminder to send.

The $4,200 build also shows why you give AI the facts before you ask for tone. Before checking the notes, the owner had asked for "a firm but friendly note to a good customer who owes $4,200 for a garden build, 40 days overdue". An illustrative draft closed with: "We value our relationship and would hate for this to affect it going forward." That reads as a veiled threat, sent to a customer who was waiting on the firm. After the call, the text that actually went was: "Thanks for your patience. Here's the revised invoice after we swapped the sleepers for stone: $4,200, with the change on line 3. Sorry for the muddle." Tell the AI what your notes say first, or it will guess at a reason and write to the guess.

Chasing the rest takes about three hours spread over a fortnight: calls, texts and one revised invoice. From then on the ladder handles most invoices, and the owner reviews the overdue list for ten minutes every Monday.

The phone call AI can script but not make

At 21 days, a call beats another message. If you dread them, ask for a short script and keep it beside you:

"Hi, it's [your name] from [firm name]. I'm calling about the invoice for the fencing, $1,150, which was due on the 3rd. Is there anything wrong with the job, or has it just slipped through?" (Pause and listen.) "Great, could you pay it today? I can text you the link now." Or: "OK, what would help? I can split it into two payments if that's easier."

Write down what's agreed during the call and send it as a text straight afterwards: "Thanks for the chat, as agreed: $575 today and $575 on the 20th. Link: …". That text is the record if things go wrong later.

How reminders go wrong for trades

  • Reminders after payment. Bank feeds and payment providers can lag a day or two. If a customer says they've paid, pause that invoice's reminders until the money shows.
  • Stage payments and retentions. On bigger jobs, a single invoice for everything confuses reminders. Invoice each stage separately so the ladder chases only what's due.
  • Missing purchase order numbers. Business customers often reject invoices without their PO number, then ignore reminders for an invoice they never logged. Put the PO field in your job sheet.
  • The wrong person. On rental properties, the tenant who let you in may not be who pays. Confirm who the invoice goes to when you book the job.
  • AI-invented terms. A drafted final notice that adds "a late fee of $40" or "interest at 8%" commits you to terms your quote never mentioned.

Stage invoicing changes the size of the chase, which a quick sum shows. On an illustrative $12,000 kitchen extension billed as 30% deposit ($3,600), 50% when the shell is up ($6,000) and 20% on completion ($2,400), the ladder only ever chases one stage at a time. If the customer disputes a snag at the end, you're discussing $2,400, not $12,000, and the first two stages are already in the bank.

Whether you can charge late fees or interest depends on your terms of business and the law where you work. Put any charges in your quote terms from the start, and ask your accountant or a legal adviser before adding them or taking formal action. For a broader look at the timing side, predicting late payers and acting early shows how to spot the likely late ones from your own history, and chasing late payments with reminders that sound human has more wording for other kinds of business.

Getting paid on the day so there's less to chase

The best reminder is the one you never send. Take deposits on larger jobs, invoice stages as they're completed, and send the invoice with a payment link from the van before you leave the drive, while the customer is looking at the finished work. For regular maintenance customers, a card or bank payment set up in advance removes the chase altogether. If you already use Xero, its JAX assistant can answer questions about who owes you what; using Xero's JAX for invoices and cash flow shows how. For the whole flow from quote to payment, connecting quotes, invoices and payments ties it together.

Invoice-chasing questions

Should payment reminders go by text or email?

For domestic customers, text usually gets read first, and a text with a payment link is the easiest thing to act on. For business customers, email is better because it reaches whoever handles accounts and leaves a record. Many firms send the first reminder the same way as the invoice and switch channel for the final notice, so the customer can't say they never saw it.

Is it safe to let AI send reminders automatically?

Let your invoicing software send the fixed reminders automatically, using wording you've approved once. Keep AI for drafting the messages that need judgement, such as replies to disputes or a personal note on a large overdue account, and read those before sending. An AI that writes and sends replies on its own can promise discounts or make threats you never intended.

What should I do if a customer says they can't afford to pay?

Reply quickly and without threats. Offer a short payment plan in writing, with dates and amounts, and ask for the first instalment now. Pause the automatic reminders for that invoice so they don't receive a harsh message mid-arrangement. If they stop paying under the plan, speak to them before escalating, and get advice before taking any formal step.

Further reads

Sources: Xero Central articles on invoice reminders; QuickBooks Online help on automatic invoice reminders; Jobber help article on invoice follow-ups; Housecall Pro help article on invoice reminders.

Want your invoice chasing to run itself?

On a 1:1 call we'll look at how you invoice now, set up a reminder ladder in the software you use, and write the AI prompts for disputes and big overdue accounts.

Book a 1:1 call with me