Build one workflow for invoices, payments, and refunds

A single n8n flow handled billing events, kept records current, and blocked duplicate entries and duplicate messages.

Done with n8n· Intermediate· Sep 2026

What they did
They set up one n8n workflow behind a webhook and added API-key checks before any event could proceed. The flow split into separate invoice, payment, and refund paths, used Google Sheets for record keeping, PDFbro to generate invoice PDFs, Google Drive to save those files, and Resend to email them. Before each path moved ahead, it checked whether the event had already been recorded, then wrote back status changes, file links, balance changes, and timestamps.
How it went
The setup gave them one place to manage invoice, payment, and refund handling from start to finish. It also helped avoid repeated rows and repeated notifications. No metrics or business results were reported.
Tips
This kind of workflow depends on careful state tracking, not just linking apps together. If you copy it, map out each event type and the fields you need to update before you turn it on.

Try it yourself with n8n

Set up an n8n workflow for [business] that watches for invoice, payment, and refund events from [payment source]. Use [spreadsheet app] as the record of truth, [PDF tool] to generate invoice PDFs, [file storage] to save them, and [email service] to send notices. Check my API key before any action runs, look for duplicate events before writing anything, and after each event update the row with status, PDF link, balance change, and timestamp. If a refund needs to be sent or any other irreversible action is about to happen, pause and ask for my approval first. Test the flow with one sample invoice, one payment, and one refund before going live.

Fill in the [brackets]. Agents can make mistakes, so review anything before it is sent, paid or deleted.

Get 3 agent uses like this every morning

With the day's top AI news. Free, and one click to unsubscribe.