BXUP Track progress & test yourself — free
AI at Office · Playbook · Core · ~4 min read
AI AT OFFICE · PLAYBOOK · CORE

Automate Payment Reminder Emails with Escalation Logic

Chasing overdue invoices is the task everyone hates and postpones — which is exactly why receivables age. This playbook builds a Zapier flow that reads your aging sheet, drafts reminder emails whose tone escalates with days overdue, and queues every one for human approval — automation of the drafting, never of the send.

Workflow area: Automation · Tier: Core · Hands-on time: ~40 minutes

The design principle here is drafts-not-sends. A payment reminder that goes to the wrong customer, quotes the wrong amount, or lands after they already paid costs you a relationship worth more than the invoice. So the machine does the part that causes procrastination — noticing who's overdue and writing the awkward email in the right tone — and a human does the part that carries risk: checking the facts and clicking send. You get the consistency of automation with the accountability of a person.

When to use — and when not to

  • Use it when reminders slip because they're unpleasanttone-calibrated drafts waiting in your inbox remove the activation energy that lets receivables age.
  • Use it when volume passes ~15 open invoicesbelow that, the pb-01 email recipe one-at-a-time is simpler than maintaining a flow.
  • Use it when your aging data lives in a sheetor exports to one on a schedule from your accounting tool.
  • Skip fully automated sendingeven at tone level 1. Payments post between sync and send; only a human checking "did this land today?" prevents the reminder that arrives after the payment.
  • Skip disputed or relationship-critical accountsflag them out of the flow entirely; a customer disputing an invoice needs a conversation, not an escalating sequence.

The recipe

  1. Structure the aging sheet. One row per open invoice in Google Sheets: customer_name, contact_email, invoice_number, amount, currency, due_date, days_overdue (formula), tone_level (formula below), status (open/paid/disputed/hold), last_reminder_date. The tone_level formula: =IFS(days_overdue<=0,0, days_overdue<=10,1, days_overdue<=25,2, days_overdue<=45,3, TRUE,4). Add hold for any account you never want machine-drafted.

  2. Write the four-tone prompt — the flow's brain. Test it in ChatGPT before wiring anything:

    Draft a payment reminder email.
    
    Customer: {{customer_name}} · Contact: {{contact_email}}
    Invoice: {{invoice_number}} · Amount: {{amount}} {{currency}}
    Due date: {{due_date}} · Days overdue: {{days_overdue}}
    Tone level: {{tone_level}}
    
    Tone rules:
    Level 1 (1-10 days): friendly nudge — assume oversight, no
    pressure, "sharing in case it slipped through".
    Level 2 (11-25 days): professional and direct — restate amount
    and due date, ask for a payment date, offer to resend the
    invoice or help with any issue.
    Level 3 (26-45 days): firm — note this is the third reminder,
    state that continued delay affects [CONSEQUENCE: e.g. "our
    ability to schedule further work"], request payment or a call
    this week.
    Level 4 (45+ days): final formal notice — reference the history
    of reminders, state the next step ([YOUR REAL POLICY: e.g.
    "pausing services / referral to collections"]) with a specific
    date, remain courteous and factual.
    
    Rules: under 130 words. Subject line includes the invoice number.
    Never threaten anything not in my stated policy. Never mention
    tone levels or that this is automated. Facts come only from the
    fields above. Sign as {{sender_name}}, {{sender_title}}.
    

    Run all four levels on one test invoice and tune the wording until level 3 sounds like your firmest professional self — not a debt collector.

  3. Wire the Zap.

    1. Trigger: Schedule by Zapier — weekly (Tuesday morning beats Monday chaos and Friday graves).
    2. Action: Google Sheets — Lookup/Get Many Rows filtered to status = open and days_overdue > 0 and tone_level changed since last_reminder_date (simplest version: days_overdue > 0 and last reminder more than 7 days ago).
    3. Action: ChatGPT (or OpenAI) step — your step-2 prompt with fields mapped from the row.
    4. Action: Gmail/Outlook — Create Draft addressed to the contact, or send the draft text to yourself/your AR channel for approval. Not "Send Email." This is the human gate.
    5. Action: Google Sheets — update last_reminder_date and log the drafted tone level.
  4. Test with a synthetic ledger. Add five fake rows covering: 5 days overdue, 20, 40, 60, and one disputed. Run the Zap. Verify: correct tone per row, correct amounts and invoice numbers in every draft, the disputed row untouched, drafts (not sent mail) created. A draft that looks right reads like:

    Subject: Invoice INV-2041 — friendly reminder
    
    Hi Rohan,
    
    Hope things are going well. I wanted to flag that invoice
    INV-2041 for ₹1,84,000, due 24 July, is showing as unpaid on our
    side — these things slip through easily, so sharing just in case.
    
    If it's already on its way, please ignore this. If it's easier,
    I can resend the invoice or the payment details.
    
    Thanks,
    Kavita — Accounts, Anvi Studio
    
  5. Run the weekly human pass. Tuesday, ten minutes: open the drafts, check each against the ledger for payments received since sync, adjust any draft where you know context the sheet doesn't (their finance head just changed; they promised payment Friday), send, and mark disputed/hold where a sequence is the wrong tool. Escalations to level 4 additionally get a phone call before the email — the email documents; the call collects.

Make it yours

  • Accounting-tool sync: if you use Zoho Books, QuickBooks, or Tally exports, add a first Zap that refreshes the sheet from the tool daily — the reminder flow stays unchanged.
  • Tone by relationship tier: add a tier column (strategic/standard) and a prompt rule that strategic accounts cap at level 2 by email — beyond that, the draft becomes talking points for a call instead.
  • Payment-plan variant: for customers on agreed installment plans, a parallel flow reminds three days before each installment date at permanent level 1 — prevention is cheaper than escalation.

Quality check

  • No email sends without a human clickthe Zap ends at Create Draft, verified in the test run.
  • Amounts, invoice numbers, and dates trace to the sheetchecked in every draft during the weekly pass, not just at setup.
  • Level 4 states only your real policythe consequence line was written by you, not improvised by the model.
  • Disputed and hold rows never generate draftsconfirmed with the synthetic ledger.
  • The paid-but-drafted race is coveredthe weekly pass checks payments received since the last sync before sending anything.
Warning

Customer names, emails, and amounts owed are confidential business data. Use a Zapier AI step under your organization's account with training disabled, or an enterprise API tier — not a personal consumer account. Never include bank account numbers or payment-card details in the sheet the flow reads; payment instructions belong in the invoice itself.

Key Takeaway:

Automate the noticing and the drafting; keep the sending human. The flow's value isn't saving the send-click — it's that the awkward email is already written, in the right tone, every Tuesday, so the chase actually happens.

This is the free reading view. Open BXUP to track your progress, run the hands-on labs, and prove it with original, exam-pattern assessments.
© Anvi Innovate · BXUP — Be Exponentially Upskilled · BXUP is an independent learning platform, not affiliated with or endorsed by AWS, Microsoft, Google, NVIDIA, IBM, Salesforce, Databricks, Oracle or Anthropic. All trademarks belong to their respective owners. · bxup.in