Finance
Verified by Toolspoke

Overdue invoice chaser

By Toolspoke

Lists Xero invoices past due every Monday by age and leaves one polite Gmail reminder draft per customer for a person to send.

Needs a Toolspoke account. You choose which project it installs into.

An illustration with made-up examples. It is not a recording.
Xero + Gmail
Required integrations
Runs on a schedule
Mondays at 9am by default
Report back
What its last step does
Some actions can delete
2 of 20 actions in its tools
On this page
  1. The short version
  2. What Overdue invoice chaser does
  3. How it works
  4. What a reminder draft looks like
  5. Who uses Overdue invoice chaser
  6. What it connects to
  7. What it will never do
  8. When it runs
  9. How to set it up
  10. Make Overdue invoice chaser sound like you
  11. Compared with other options
  12. Questions
  13. Related agents

The short version

What it is
A ready-made Toolspoke agent that turns your overdue Xero invoices into reminder drafts, one per customer.
What it reads
Authorised sales invoices past their due date, the customer's contact details and payments received in the last 7 days.
What it writes
One reminder draft per customer in Gmail's Drafts folder, for a person to check and send.
How it sorts
By age: 1 to 30, 31 to 60, 61 to 90 and over 90 days past due. The tone of each draft follows the oldest invoice.
How often
Every Monday at 9am once you switch it on.
What it never does
Send an email, threaten a customer, or change anything in Xero.
What you need
A Toolspoke account, a Xero sign-in and a Gmail or Google Workspace mailbox.

What Overdue invoice chaser does

Overdue invoice chaser is an AI agent that reads your overdue invoices in Xero every Monday and leaves one polite reminder per customer in Gmail's Drafts folder, ready for you to check and send.

Chasing late invoices is the job everyone puts off. Each reminder means looking up the invoice, the amount, the contact and the right tone, and the longer it waits the harder the email is to write.

Overdue invoice chaser does the looking up and the first draft. It reads every authorised invoice past its due date, sorts them by age and writes one email per customer covering all of their overdue invoices.

It never sends. Every reminder waits in Drafts for a person who knows the customer to read, change if needed, and send. A customer who paid in the last 7 days is left out, so nobody gets a reminder the day after paying.

In practice, every Monday morning you find:

  • One draft per customer, listing each overdue invoice with number, amount and due date
  • A tone that follows the oldest invoice, firmer as it ages but never threatening
  • Customers who paid this week left out
  • A run summary with the total in each age bucket

How it works

Overdue invoice chaser works in four steps each Monday: it reads what is overdue, sorts it by age, skips anyone who just paid and leaves a draft per customer. All of it comes from the agent's written instructions, which you can read and edit after you install it.

  1. Step 1: Read what is overdue

    It lists authorised sales invoices past their due date.

  2. Step 2: Sort by age

    It buckets them into 1 to 30, 31 to 60, 61 to 90 and over 90 days.

  3. Step 3: Skip recent payers

    It leaves out anyone with a payment in the last 7 days.

  4. Step 4: Leave a draft

    It writes one reminder per customer and saves it to Drafts.

It reads sales invoices only

It calls list_invoices for authorised sales invoices (ACCREC) with a due date before today and an amount still due. Bills from suppliers are left alone.

It skips anyone who just paid

It reads list_payments for the last 7 days. A customer with a payment in that window gets no reminder this week and is listed as paid recently, because their payment may cover what looks overdue.

The tone follows the oldest invoice

Up to 30 days it is a friendly note. From 31 to 60 it asks when payment will be made. From 61 to 90 it asks for a payment date this week and offers to talk. Over 90 it is direct and asks for a call. It never mentions legal action, collection, interest or late fees unless you add that wording yourself.

It leaves drafts, never sends

Each email is saved with create_draft and waits in Drafts. The limits are listed under what it will never do.

What a reminder draft looks like

A draft from Overdue invoice chaser is one email per customer, listing every overdue invoice. This one is for a customer whose oldest invoice is 34 days late.

Draft: Overdue invoices from Larch & Co

Overdue invoice chaserAPP9:00 AM

To: [email protected]. Saved to Drafts, not sent.

The note

Hi Sophie, I hope all is well. Our records show the invoices below are now past due. Could you let me know when we can expect payment?

Overdue invoices (2)

  • INV-0412, 1,450.00 GBP, due 30 September.
  • INV-0431, 620.00 GBP, due 14 October.

Close

Total 2,070.00 GBP. If anything is wrong with these, just reply and I will look into it. Thanks, Ben Larch.

One draft, saved on Monday at 9:00 AM for a person to check and send. The companies, people and amounts are made up.
The invoices

Every overdue invoice for that customer, with number, amount, currency and due date, so they can find it without asking.

The note

An opening that matches how late the oldest invoice is. This one is a clear reminder; under 30 days it would be lighter, over 60 firmer.

The close

The total, an invitation to reply if something is wrong, and the name you chose at install.

Why some customers get no draft

A customer who paid in the last 7 days, a customer you named as not to be chased, and a customer with no email address on file get no draft. The run summary lists each one, so nobody is forgotten.

A failed run is different. If Xero cannot be read, it writes no drafts and says so, rather than guessing.

Who uses Overdue invoice chaser

Overdue invoice chaser suits any business that invoices from Xero and sends its own reminders. The examples use made-up names.

A studio owner who hates chasing

Ben Larch runs a design studio and used to leave reminders for weeks. Now they are written on Monday, and he only has to read and send.

In their draftsNeeds youINV-0412, 1,450.00 GBP, due 30 September.

A bookkeeper with several clients

Chloe Martin keeps the books for a cafe group. The age buckets in the run summary tell her where the money is stuck.

In their draftsWorth knowingOver 90 days: 2 invoices, 3,900.00 GBP.

An agency with long-standing clients

Ivan Petrov does not want to annoy a client who paid yesterday. The 7 day skip means the drafts only go to people who still owe.

In their draftsWorth knowingAshgrove Gym, skipped: payment received on Friday.

A founder protecting relationships

Yuki Tanaka checks every draft before it goes. Because nothing is sent on its own, she can soften a line for a client she knows well.

In their draftsNeeds youCould you let me know when we can expect payment?

What Overdue invoice chaser connects to

Overdue invoice chaser connects to two tools: it reads Xero and saves drafts in Gmail. You sign in to each one yourself, and Toolspoke stores the connection encrypted, so the agent never sees the credential.

  • Xero

    Required

    Read Xero invoices, contacts, accounts, bank transactions, payments, and the two headline reports.

    Authentication: Sign in with Xero

  • Gmail

    Required

    Read mail, search threads, apply labels, draft, send, and delete.

    Authentication: OAuth 2.0

What Overdue invoice chaser does and cannot do in each connected tool
ToolWhat Overdue invoice chaser doesWhat it cannot do
XeroReads invoices, contacts and payments (list_invoices, get_invoice, list_contacts, get_contact, list_payments).Mark an invoice paid, or change an invoice, contact or payment: every Xero action on the connector is a read.
GmailSaves one reminder per customer with create_draft.Delete mail permanently: the connector has no delete action. It can send, label and trash mail, but this agent's instructions forbid every one of those.

The Xero connection only reads, which is a property of the connector. Nothing this agent does can change your books.

The Gmail connection Toolspoke asks for does allow sending. Overdue invoice chaser is told never to send, and that is an instruction to the agent, not a lock. If you want a lock, switch off the Gmail send and trash actions in your project, so no agent in it can call them. The access control guide explains how.

The activity log records each call, but Xero reads that name a customer keep only that the call happened, and the body of each draft is masked.

What Overdue invoice chaser will never do

Overdue invoice chaser is told never to send an email and never to threaten a customer, and it cannot change anything in Xero. It drafts, and a person decides.

  • Send an email.
  • Threaten legal action, debt collection, interest, late fees or stopping service, unless a person has added exactly that wording to these instructions.
  • Mark an invoice paid, change an invoice, a contact or a payment in Xero.
  • Chase a customer named at install as not to be chased, or a customer with no email address.
  • Put one customer's invoices in another customer's draft.

Why it never sends

A reminder to a customer speaks for your business. Someone who knows the customer should read it first: there may be a dispute, a promise made on the phone or a payment on its way.

Why it never threatens

Late fees, collections and legal action are decisions with consequences, and in some places rules about how they are said. The drafts get firmer as invoices age, but never threaten.

A draft that threatensIf payment is not received in 7 days we will pass this to a debt collector.
What this agent writes insteadEverything elseThis account is now being reviewed. Could we arrange a call, or could you confirm a payment date?

Why you may still want a lock

No instruction is a perfect lock, and the Gmail connection can send. Switch off the Gmail send action in your project so the drafts can only ever be drafts.

If something goes wrong

If Xero cannot be read, write no drafts and say so in the run summary. If a contact has no email address, list the customer and amount under "no email on file". If a draft cannot be saved, say which customer it was for and carry on with the rest.

These are written into Overdue invoice chaser's instructions. They guide the agent, but they are not a permission. What it is allowed to touch is set by the access you grant.

Overdue invoice chaser reads Xero and writes drafts. Every email that reaches a customer is sent by a person.

When Overdue invoice chaser runs

Overdue invoice chaser runs every Monday at 9am, but only after you switch its schedule on. It arrives switched off, so nothing runs and nothing is charged until you decide.

  • Each run reads every authorised sales invoice past its due date.
  • Customers who paid in the last 7 days are skipped.
  • Each remaining customer gets one draft in Gmail.
  • If Xero cannot be read, it writes no drafts and says so.

Each run uses model credit from your workspace balance, so it makes one run a week. The Xero and Gmail calls themselves are free.

Your copy is an ordinary agent in your project. You can pause its schedule there, run it once on demand, change the day and time and edit its instructions. The agent's page lists recent runs and their cost.

How to set up Overdue invoice chaser

To get reminder drafts every Monday, add Overdue invoice chaser to a Toolspoke project, connect Xero and Gmail, set your sign-off and switch on the schedule. It takes a few minutes, and nothing runs until the last step.

  1. Step 1: Create a Toolspoke account or sign in

    Choose Use this agent. If you are new, you will be asked to sign up first, and you come straight back to this agent afterwards.

  2. Step 2: Add it to a project

    Pick the project it should live in. You get your own editable copy, and you can see the two tools it brings before anything connects.

  3. Step 3: Connect Xero

    Choose Sign in with Xero and pick the organisation. The connection only reads.

  4. Step 4: Connect Gmail

    Choose Sign in with Google and pick the mailbox the reminders should come from. Google's screen lists everything a Gmail connection could do; the limits above explain what this agent stays within.

  5. Step 5: Switch off sending

    In the project's access settings, switch off the Gmail send and trash actions, so drafts can only ever be drafts.

  6. Step 6: Set your sign-off and exclusions

    Put the name to sign with, any reply-to address and any customers never to chase in the instructions.

  7. Step 7: Switch on the schedule

    The schedule arrives switched off. Run it once and read the drafts, then switch it on.

Make Overdue invoice chaser sound like you

Overdue invoice chaser's instructions are plain English and you can edit them after you install it. Installing copies the agent, so your edits stay with your copy. Open the agent in Toolspoke and tell the builder what to change, and it rewrites the instructions.

Paste any sentence below into the builder chat, or say the same thing in your own words.

Add your payment details
End every draft with: Bank transfer to Larch & Co, sort code and account number on the invoice.
Wait longer before chasing
Only draft reminders for invoices more than 7 days past due.
Leave out small amounts
Do not chase a customer whose overdue total is under 100.
Write in a warmer voice
Use first names and keep every draft under 80 words.
Copy your bookkeeper
Add [email protected] as a CC on every draft.

None of these edits needs more access or touches the Never rules. They change what Overdue invoice chaser is told, not what the connections allow.

How it compares to other options

Overdue invoice chaser beats the alternatives when you want reminders written for you and checked by a person before they go, and loses to them when you want reminders sent with no one in the loop.

Overdue invoice chaser compared with Xero's automatic reminders, A credit control tool, Writing them yourself
Compared onOverdue invoice chaserXero's automatic remindersA credit control toolWriting them yourself
One email per customer, all invoicesYesPer invoiceYesIf you do it
A person reads it before it goesYes, it is a draftNoDepends on the setupYes
Skips customers who just paidYes, last 7 daysOnly if fully paidUsuallyIf you check
Tone changes with ageYesWith separate templatesYesYes
Can send on its ownTold not to; switch it offYesYesNo
Setup effortConnect two accountsTurn on in XeroA subscription and setupAn hour a week

Xero's automatic reminders are the better choice when you are happy for reminders to go without anyone reading them. They need no agent at all.

A credit control tool is better for a large ledger with many customers and a team chasing them. Overdue invoice chaser suits a business where the owner or bookkeeper still sends each reminder.

Frequently asked questions

Does Overdue invoice chaser send emails?

No. It is told to save every reminder as a draft. The Gmail connection can send, so switch off the Gmail send action in your project if you want that enforced (how access works).

Can it mark an invoice as paid in Xero?

No. Every Xero action on the connector is a read, so the connection cannot change an invoice, a contact or a payment.

Why did a customer get no draft?

They paid something in the last 7 days, you named them as not to be chased, or they have no email address in Xero. The run summary says which.

Will it threaten late fees or collections?

No. The tone gets firmer with age but never threatens, unless you add that exact wording to the instructions yourself.

Does it chase supplier bills?

No. It reads sales invoices only, the ones you sent to customers.

Which mailbox do the drafts appear in?

The Gmail or Google Workspace mailbox you connect, in its Drafts folder.

Is Overdue invoice chaser free?

It has no price of its own, and every Toolspoke plan includes agents. Tool calls cost nothing, but each run draws on your usage balance. Pricing has the details.

Start each week with reminders already written

Connect Xero and Gmail, switch off sending, set your sign-off and switch on the schedule. Your first drafts are waiting on Monday at 9am.

Use this agent