How to Send Automatic Payment Reminders From a Notion Invoice Tracker (What Notion Automations Can and Can't Do)
Want to send automatic payment reminders from a Notion invoice tracker? Here's what native Notion automations handle, where they stop, and how to connect a real reminder tool.
Your invoices live in a Notion database. It has a Client, an Amount, a Due Date, a Status, and maybe a nice little formula that turns red when something's overdue. What it doesn't do is email anyone.
So you open it every Monday, scan for red rows, and write the same "just checking in on invoice #0231" email you wrote last week. If you want to send automatic payment reminders from a Notion invoice tracker, you have three real options, and only one of them actually chases invoices the way you'd chase them yourself.
This is the Notion chapter of the series. The Google Sheets and Airtable versions cover the same problem for those tools. Notion is the most interesting of the three, because its automations look like they can do this, right up until you try.
What Notion automations can actually do for unpaid invoices
Notion's database automations work off triggers and actions. The triggers are things like "a page was added" or "a property changed." The actions are things like "edit a property," "add a page somewhere," "send a Slack message," "send a webhook," and, on paid plans, "send a Gmail email."
That last one is why people think the problem is solved. It isn't, for one reason: Notion automations react to changes, not to time passing.
An invoice going overdue is not a change. Nobody edits anything. The due date just quietly slides into the past. There's no "when Due Date is 7 days ago" trigger that fires on its own.
Here's what you can do natively:
- Confirm on send. When Status changes to "Sent," email the client a copy of the invoice details. Works well, feels professional.
- *One nudge when you flip a status.* Change Status to "Overdue," and Notion emails a reminder. But you're the one flipping the status, so it's a shortcut, not automation.
- Ping yourself. Set up a Slack notification when Status changes, so you don't forget to look.
- Fire a webhook. Hand the invoice off to something else that does understand time. This is the one that matters, and we'll come back to it.
Notion has been adding scheduled automation triggers, so it's worth checking your plan's current options. But even with a daily scheduled run, you're still building the "which invoices are 7, 14, and 30 days overdue, and which ones have I already emailed" logic by hand, with formulas and helper properties. It's doable. It's also fragile in exactly the way a spreadsheet script is fragile.
Option 1: The pure-Notion setup (one reminder, manually triggered)
If you want a Notion invoice template with reminders and zero other tools, here's the honest version of what you're building.
Properties you need:
- Client (text or relation)
- Client Email (email property)
- Amount (number)
- Due Date (date)
- Status (select: Draft, Sent, Overdue, Paid)
- Days Overdue (formula:
dateBetween(now(), prop("Due Date"), "days"))
Automation 1: When Status changes to "Sent," send a Gmail email to Client Email with the invoice summary.
Automation 2: When Status changes to "Overdue," send a Gmail email to Client Email with your reminder wording.
That's it. The Days Overdue formula tells you which rows to flip. Notion sends the email so you don't have to open Gmail. You've saved maybe two minutes per invoice, and the reminder only goes out if you remember to look.
For a lot of side-hustle-sized businesses, honestly, that's fine. If you send four invoices a month, this is a perfectly reasonable place to stop.
Where it breaks: the second reminder. And the third. Notion has no memory of "I already emailed this client on day 7." You'd need another select property for reminder stage, another automation per stage, and the discipline to advance the stage on the right day. At that point you're the automation.
Option 2: Notion → Zapier or Make → email
This is the setup most tutorials push, and it does work. The general shape:
- A scheduled Zap or Make scenario runs every morning.
- It queries your Notion database for pages where Status is "Sent" and Due Date is in the past.
- For each match, it sends an email from your Gmail or Outlook.
- It writes back to Notion: sets a "Last Reminder" date so it doesn't send again tomorrow.
Step 4 is where most people's builds quietly go wrong. If you skip the write-back, you email every overdue client every single day. If you do the write-back, you now need filter logic for "Last Reminder was more than 7 days ago," and different email copy for day 7 versus day 21.
Budget an afternoon to build it and expect to touch it again every few months. Zapier task counts also add up fast if you have dozens of open invoices, because each daily check burns tasks even when nothing sends.
It's a real option for people who enjoy this kind of thing. If you don't, the next option exists for you.
Option 3: Connect your Notion database to a dedicated reminder tool
This is the version where you keep Notion as the tracker and let something else do the chasing. The split is clean: Notion knows what you invoiced and to whom. The reminder tool knows what day it is and what to say.
The connection is simpler than the Zapier build above, because you're not rebuilding the cadence logic. You're just handing over invoices.
How to wire it up:
- Trigger on Sent. Add a Notion automation: when Status changes to "Sent," send a webhook with the page's properties (client name, email, amount, due date, invoice number).
- Catch it. Point that webhook at your reminder tool directly if it supports inbound webhooks, or through a one-step Zap that creates the invoice there.
- Stop on Paid. Add a second automation: when Status changes to "Paid," send another webhook. That marks the invoice paid in the reminder tool and stops the sequence.
Two automations. No daily schedule, no "Last Reminder" property, no per-stage email copy living inside Notion.
The tool takes it from there: a friendly note a few days before due, a nudge on day 3, a firmer one on day 10, a final notice on day 21, whatever cadence you've set once. Saldetto is built for exactly this handoff, and so are tools like Chaser or Upflow if you're bigger. The point is that time-based, multi-step escalation is the whole job of these tools, and Notion is never going to be great at it.
If you want to write your own escalation copy before you set it up, the payment reminder email generator will give you a starting draft for each stage. The late payment email toolkit has the full sequence if you'd rather paste and edit.
The one thing every setup gets wrong
Whichever option you pick, the failure mode is the same: a reminder goes to a client who already paid.
In Option 1, it happens because you flipped a status too late. In Option 2, because the Zap ran before you updated Notion. In Option 3, because you forgot the "Paid" webhook.
The fix is boring. Update Notion the moment money lands, before you do anything else. Make "mark it Paid" a reflex, and every setup above works. Skip it, and every setup above eventually embarrasses you.
If you charge late fees, the same rule applies twice over. Nothing sours a client faster than a fee applied to an invoice they paid last Tuesday. Run the numbers with the late fee calculator so the fee is right, and make sure whatever sends it knows the invoice is still open.
Which one should you actually build?
- Under five invoices a month: Option 1. Notion emails, you flip statuses. Done.
- You like building things and have a free afternoon: Option 2. Just don't skip the write-back step.
- You're tired of thinking about this at all: Option 3. Keep Notion as your source of truth, and let a reminder tool own the calendar.
Notion is a great place to track invoices. Sending automatic payment reminders from a Notion invoice tracker is possible, but the honest answer is that Notion handles the first reminder fine and everything after that badly. Connect it to something that understands "it's been 14 days," and you stop being the automation.