Chase past-due JobNimbus invoices with escalating emails
Every weekday, find every unpaid JobNimbus invoice, email each customer one reminder that gets firmer as it ages, and post a receivables summary to Slack.
Every weekday at 8am, review all outstanding JobNimbus invoices, email each customer a single payment reminder whose tone escalates with how overdue they are, and post one receivables summary to Slack.
Start by pulling the full picture from JobNimbus. Use List Invoices to get every invoice and List Payments to get every payment. Both endpoints return an envelope shaped { count, results } where count is the total number of records in the account and not the size of the page you received, so page through with the size and from parameters (size up to 1000, from as a zero based offset) until a page comes back with fewer rows than you asked for. All timestamps are Unix epoch seconds. If you need to narrow the pull, these list endpoints accept an ElasticSearch style filter parameter, for example a range clause on date_updated.
Reconcile the payments against the invoices yourself rather than trusting a single status field. For each invoice, sum every payment that applies to it and subtract that from the invoice total to get the genuinely outstanding balance. Skip any invoice whose recorded payments already cover its balance, and skip anything where the remaining balance is zero or negative. Only invoices with a real outstanding amount and a due date in the past go any further.
Bucket every remaining unpaid invoice by how many days past its due date it is: 1 to 6 days, 7 to 13 days, 14 to 20 days, and 21 or more days.
Group everything by customer rather than by invoice. A homeowner with three open invoices must receive exactly one email listing all three, never three separate emails. Duplicate chase emails to the same customer are the fastest way to get this workflow turned off, so send at most one email per customer per run. Decide each customer's escalation tier from their most overdue invoice so the tone matches the worst case across their balances.
For every customer whose oldest unpaid invoice is 7 or more days past due, draft and send one reminder using Gmail Send a Message, addressed to the email on their JobNimbus contact record. Vary the tone by tier. At 7 to 13 days write a friendly nudge that assumes the invoice simply slipped through. At 14 to 20 days write a firmer notice that states the amount plainly and asks for a specific payment date. At 21 or more days write a final notice that makes the consequences clear while staying professional. Every email should itemize each open invoice with its number, issue date, due date and outstanding amount, and state the combined total owed. Customers whose invoices are all fewer than 7 days past due receive no email, but they still count toward the Slack totals.
For each customer in the 21 or more days tier, also use JobNimbus Create a Task to create a task for the account owner to phone the customer, referencing the customer name and their total outstanding balance. Create one task per customer, not one per invoice. Tasks require a record_type_name that matches an existing task type in the account, which you can read from the account settings.
Finally, post one message to Slack using the Slack Bot Send a Message operation. Summarize the total dollars outstanding across all unpaid invoices, the number of invoices in each aging bucket, and the five largest overdue balances by customer with the customer name and amount. Also report how many reminder emails were sent, broken down by tier, and how many call tasks were created.
Handle the edge cases explicitly. If a customer has no email address on file, skip their email and list them as an exception at the end of the Slack message so someone can chase them manually. If nothing is outstanding, post a short all clear to Slack instead of an empty report. Never send a second email to a customer you have already emailed in the same run.
Example output
Additional information
What does this prompt do?
- Checks your invoices and payments every weekday morning and works out what is genuinely still unpaid, ignoring anything a payment already covers
- Sends one reminder per customer instead of one per invoice, so a homeowner with three open invoices hears from you once with all three listed
- Escalates the tone as the debt ages: a friendly nudge at 7 days, a firmer notice at 14 days, and a final notice at 21 days that also creates a task for the account owner to phone the customer
- Posts a single Slack summary with total dollars outstanding, how many invoices sit in each aging bucket, and the five largest balances by customer
What do I need to use this?
- A JobNimbus account with your invoices and payments recorded in it
- A Gmail account to send the payment reminders from
- A Slack workspace and a channel for the daily receivables summary
- Customer email addresses filled in on your JobNimbus contact records
- A task type set up in JobNimbus so the 21 day call tasks have somewhere to land
How can I customize it?
- Change the 7, 14 and 21 day thresholds to match your own payment terms
- Rewrite the wording and tone of each reminder tier to sound like your business
- Change the run time, switch it to every day including weekends, or pick a different Slack channel
- Set a minimum balance so small invoices never trigger a chase email
FAQs
Will a customer with several unpaid invoices get several emails?
What happens if a customer already paid?
Can I change the 7, 14 and 21 day schedule?
Does it email anyone who is only a day or two late?
What happens at the final notice stage?
What if a customer has no email address on file?
Related templates
New roof inspection requests from your website form land in JobNimbus within a minute, with no duplicate records and nothing retyped by your team.
Every weekday at 7am, your active courses are checked for missing work, silent logins, and slipping grades, with a ranked list sent to your advising channel.
Every hour, find the tickets closest to breaching, leave a nudge on each one, and post a ranked at-risk list to your support channel.
Every weekday afternoon, each student who is behind gets a warm, personal message in their Canvas inbox listing exactly what they owe.
Every Monday at 8am, see exactly which assignments have work waiting, sorted worst first, posted to Slack and logged to a spreadsheet.
Every weekday morning we compare your password vault against your HR records and suspend access for anyone who has already left.
Stop losing money to invoices nobody chased.
Put your past due follow up on autopilot so every overdue balance gets a timely, professional nudge and your team sees the full receivables picture each morning.