Getting Paid on Time
Reminders
Named reminder sequences that email clients before and after the due date, and stop on their own when an invoice is settled.
Coming the week of 11 January 2027
This feature ships in the week of 11 January 2027. This page describes how it will work; details can change before release.
Reminders chase unpaid invoices for you, politely and on time. You choose a sequence: a set of steps such as "3 days before the due date", "on the due date" and "a week late", each with its own message. Each step is sent once, at the right time, and the sequence stops on its own when the invoice is paid, voided, credited, or when the client says they paid. You can also send a single reminder by hand at any time.
How sequences work
A reminder sequence belongs to a business and has a name and a list of steps:
| Part | What it is |
|---|---|
| Offset | Days from the due date: negative before, 0 on the day, positive after. For example −3, 0, +3, +7, +14, +30. |
| Channel | Email. WhatsApp, Telegram and SMS become available as channels from April 2027. |
| Message template | The text of the reminder, with variables such as the client name, invoice number, amount and pay link. See Message templates. |
Each step is sent once per invoice. Sends are protected against duplicates, so even if a job runs twice, a client never gets the same step twice. Reminders go out in the business's time zone.
Presets
Every business starts with three ready-made sequences, so you do not have to design one:
- Gentle
- Standard
- Firm
Each preset is a set of steps drawn from the usual offsets (for example −3, 0, +3, +7, +14 and +30 days). Open a preset to see its exact steps and messages before you use it.
You can use a preset as it is, edit it, or create your own sequences.
Which sequence applies
One sequence is the business default. You can override it for a client, and for a single invoice. The most specific one wins:
- The invoice's own sequence, if set
- The client's sequence, if set
- The business default
When reminders stop
A sequence stops sending further steps for an invoice when any of these happens:
- The invoice is paid.
- The invoice is voided.
- A credit note covers the balance.
- You set a promise-to-pay date: reminders pause until that date passes. See Promise to pay.
- The client reports payment with a proof through I have paid. See Payment proofs.
A client who has opted out of reminders is skipped, and each skip is logged. Every reminder email has an opt-out link, and you can also set the opt-out on the client.
Overdue invoices
Unpaid invoices that are past their due date are marked overdue automatically. They then appear in the overdue list, in list_overdue over MCP and the API, and the document.overdue webhook event is sent. Reminder steps with a positive offset run against overdue invoices.
Set up reminders in the app
Open Settings > Reminders and late fees
Choose the business. You see the three presets and any sequences you created.
Pick or build a sequence
Use a preset, or create a sequence: add steps with an offset in days, a channel and a message template.
Make it the default
Set the sequence as the business default. Reminders are off until the business picks a sequence (proposed default).
Override where needed
On a client, choose a different sequence or turn reminders off. On a single invoice, choose another sequence in the editor.
Send one reminder now
Open an unpaid invoice and choose to send a reminder. You see a draft of the message first, and it is sent only after you confirm. This is the same over MCP: ask your assistant to remind a client, it calls send_reminder, shows you the draft, and sends only when you confirm (unless its key is set to send automatically).
Through the API and MCP
| Action | REST | MCP tool | Permission |
|---|---|---|---|
| List reminder sequences | GET /v1/reminder-sequences | none | documents.view |
| Create or update a sequence | POST /v1/reminder-sequences or PATCH /v1/reminder-sequences/{id} | none | reminders.manage |
| Delete a sequence | DELETE /v1/reminder-sequences/{id} | none | reminders.manage |
| Send a reminder | POST /v1/documents/{id}/reminders | send_reminder | documents.send |
| List overdue invoices | GET /v1/documents/overdue | list_overdue | documents.view |
curl -X POST "https://api.freeinvoiceautomation.com/v1/reminder-sequences" \
-H "Authorization: Bearer $FIA_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: seq-retainers-v1" \
-d '{
"business_id": "0193f2a1-1b2c-7d3e-8f40-5a6b7c8d9e01",
"name": "Retainer clients",
"is_default": false,
"enabled": true,
"steps": [
{ "offset_days": -3, "channel": "email" },
{ "offset_days": 0, "channel": "email" },
{ "offset_days": 7, "channel": "email" },
{ "offset_days": 14, "channel": "email" }
]
}'Without "confirm": true, send_reminder returns confirmation_required together with a preview of the message, unless your API key or MCP token has mode: auto_send. Each reminder sent produces the reminder.sent webhook event. From the week of 25 January 2027 the CLI has freeinvoiceautomation doc remind and reminder list (command names are proposed).
Email quota
Reminders are emails like any other, so they use the same sender as your documents:
- With your own SMTP connected, there is no monthly limit. See Your own SMTP.
- With the platform mailer, reminders count toward your monthly quota (Free 20, Team 100). When the quota is used up, reminder steps are not sent through the platform mailer and you are told, so you can connect your own SMTP. See Platform email.
Instalments
From the week of 25 January 2027, invoices with a payment schedule run the sequence against each instalment's due date and amount, so a client is reminded about the part that is actually due.
What the client sees
- Emails from your business at the times you chose, with the amount due and a link to the pay page.
- A link in each reminder email to opt out of reminders.
- If a late fee was added, the next reminder tells them. See Late fees.
Permissions
| Key | Needed for | Default roles |
|---|---|---|
reminders.manage | Creating, editing and deleting sequences | Owner, Admin, Editor |
documents.send | Sending a reminder now | Owner, Admin, Editor |
documents.view | Seeing sequences and overdue invoices | Owner, Admin, Editor, Viewer, Accountant |
clients.edit | Setting a client's sequence or opt-out | Owner, Admin, Editor |
documents.edit | Setting an invoice's own sequence | Owner, Admin, Editor |
Reminders only ever act on your own account's invoices; a request from another account is refused.
Errors
| Code | When |
|---|---|
confirmation_required | send_reminder without "confirm": true and without an auto_send key |
quota_exceeded | The platform email quota is used up; details.suggestion is connect_smtp |
email_not_verified | The platform mailer needs your email address verified first |
document_voided | The invoice is void |
permission_denied | Your role lacks reminders.manage or documents.send |