How to automate invoice chasing with Microsoft 365
Chasing overdue invoices by hand burns hours, misses debtors and quietly damages cash flow. Microsoft 365 already includes everything you need to send reminders automatically — on schedule, with a full audit trail, without a new subscription.
What you will need
This guide uses the tools included in Microsoft 365 Business Standard or Premium. No premium Power Automate licence is required if your invoice data lives in SharePoint or Excel. A premium connector licence (~£12.30 per user) is only needed if you connect directly to a separate accounting package via the Microsoft connector library.
| Tool | Role in the automation |
|---|---|
| SharePoint list or Excel table | Invoice records — due date, amount, client, status |
| Power Automate (cloud flow) | The trigger and reminder logic |
| Outlook | Sends the reminder emails from your business mailbox |
| Microsoft Approvals (optional) | Escalation task when an invoice reaches a set age |
| Teams (optional) | Internal alert when a debt needs a phone call |
Step 1: structure your invoice data
Power Automate needs a structured data source to read from. The simplest approach is a SharePoint list with these columns:
Minimum SharePoint list columns
- Client name (single line of text)
- Invoice number (single line of text)
- Invoice amount (currency)
- Invoice date (date)
- Due date (date)
- Status (choice: Outstanding / Chased once / Chased twice / Paid)
- Account owner (person)
If your invoices are raised in an accounting package, export a daily or weekly CSV to this SharePoint list via a Power Automate import flow. Keep the source of record in your accounts package — the SharePoint list is just the chasing trigger.
Step 2: create the scheduled chasing flow
In Power Automate, create a Scheduled cloud flow set to run daily at a time that suits your team (09:00 is typical).
Flow logic (in order)
- Get all items from the SharePoint invoice list where Status is "Outstanding" and Due Date is in the past
- For each item, check how many days overdue it is
- If 1–7 days overdue and not yet chased: send first reminder email from Outlook, update Status to "Chased once"
- If 8–14 days overdue and Status is "Chased once": send second reminder, update Status to "Chased twice"
- If 15+ days overdue and Status is "Chased twice": create an Approval or Teams notification for the account owner to call
Use the Power Automate Send an email (V2) action with your business Outlook account. Set the From address to your shared finance mailbox if you have one.
Step 3: write the reminder email templates
Keep the wording professional and factual — no implied legal threats unless your credit control policy genuinely supports them. A good first-reminder template:
Subject: Payment reminder — Invoice [Invoice Number] due [Due Date]
Dear [Client Name],
I'm writing to remind you that invoice [Invoice Number] for £[Amount] was due on [Due Date] and remains outstanding.
If you have already arranged payment, please disregard this message. Otherwise, please arrange payment at your earliest convenience or let us know if there is a query we can help resolve.
Payment details: [Bank details or payment link]
Thank you,
[Business name] Finance team
In Power Automate, replace the bracketed fields with dynamic content from the SharePoint list items.
Step 4: escalate to your team
When an invoice reaches 15+ days overdue, automate an internal alert rather than another email to the client. Use Post a message in Teams or create an Approval in Microsoft Teams directed to the account owner. Include the client name, amount and days overdue so they can act immediately.
Step 5: test before going live
Pre-launch checklist
- Run the flow in test mode against one overdue invoice with a test record
- Confirm the email arrives from the correct mailbox and looks professional
- Check that the Status column updates correctly after each trigger
- Confirm the escalation alert reaches the right person
- Ask one colleague to check the wording reads well and is compliant with your credit control policy
- Set up error alerts so a failed run is emailed to your administrator
10 invoices chased per week manually
| Chases per week | 10 |
| Minutes each | 9 |
| Hours per year (×52) | ≈ 78 hours |
| Blended hourly cost | £22 |
| Admin cost removed per year | ≈ £1,700 |
The larger saving is faster payment — automated, consistent chasing typically reduces debtor days and frees working capital.
Common questions
| Question | Answer |
|---|---|
| Can I use my existing accounting software? | Usually yes — export to SharePoint daily, or use the specific connector if a premium licence is acceptable. |
| Does this work for subscription invoices? | Yes — recurring due dates can be calculated in the list automatically. |
| What if a client marks an invoice as disputed? | Add a "Disputed" status to the choice column — the flow skips items with that status. |
| Will this breach GDPR? | No — you are processing data to pursue a legitimate contractual claim. Ensure your privacy notice covers payment communications. |
Want this applied to your business?
A free 30-minute automation review turns any of these ideas into a costed plan for your own processes.