# Send payment reminders and cancel unpaid Shopify orders: n8n workflow

> Started by a clock, and works across Gmail. 22 steps, 2 branches, 1 loop or waits: large, and worth reading before you trust it with anything live.

Source: https://millionrounds.com/workflow/send-payment-reminders-and-cancel-unpaid-shopify-orders (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Money admin](https://millionrounds.com/workflows?category=Money+admin#library)

# Send payment reminders and cancel unpaid Shopify orders

Started by a clock, and works across Gmail. 22 steps, 2 branches, 1 loop or waits: large, and worth reading before you trust it with anything live.

Large

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fsend-payment-reminders-and-cancel-unpaid-shopify-orders)

**22 steps** Large: read it before trusting it with anything live

**2** Branches: places the flow splits

**1** Loop or waits

**1** Service it connects to

## The flow

Starts it 2 Logic 12 Service 8

The steps in the order they run, from what starts it.

- 1 **On Global Error** Error trigger *Starts it*
- 2 **Daily Schedule Trigger** Schedule trigger *Starts it*
- 3 **Send Error Notification** Gmail *Service*
- 4 **Set Workflow Config** Set *Logic*
- 5 **Fetch Unpaid Shopify Orders** Graphql *Service*
- 6 **Split Orders from GraphQL Response** Split Out *Logic*
- 7 **Filter Orders with Valid Email** Filter *Logic*
- 8 **Process Orders in Batches** Split In Batches *Logic*
- 9 **Format Order Data for CSV** Code *Logic*
- 10 **Generate Admin Report Email** Code *Logic*
- 11 **Calculate Days & Determine Action** Code *Logic*
- 12 **Convert to CSV File** Convert To File *Service*
- 13 **Merge CSV with Email** Merge *Logic*
- 14 **Build Email Templates** Code *Logic*
- 15 **Send Daily Report to Admin** Gmail *Service*
- 16 **Route by Action Type** Switch *Logic*
- 17 **Cancel Order in Shopify** Graphql *Service*
- 18 **Send Reminder Email** Gmail *Service*
- 19 **No Action Required** Set *Logic*
- 20 **Cancel Succeeded?** If *Logic*
- 21 **Add Reminder Tag to Order** Graphql *Service*
- 22 **Send Cancellation Email** Gmail *Service*

## How it's built

- **Starts on:** A clock
- **Steps:** 22, with 2 branches, 1 loop or waits
- **Size:** Large: read it before trusting it with anything live
- **Connects to:** Gmail
- **Model:** None. This is plumbing, not judgement

## Questions

What does it need to run?

An n8n account, plus your own Gmail account. You connect your own accounts after importing it; none are included.

What starts it?

It starts on a clock.

Does it use AI?

No. Every step is fixed logic or a call to a service, so it does the same thing every time.

How long does it take to set up?

Take your time. At 22 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 22 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fsend-payment-reminders-and-cancel-unpaid-shopify-orders)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Connects to

Each opens the other workflows that use it.

[Gmail](https://millionrounds.com/workflows?service=Gmail#library)

## Workflows like it

Also money admin, with the same services where possible, closest in size first.

- [**Invoice management system with Gmail and Google Sheets** 22 steps · Gmail, Google Sheets](https://millionrounds.com/workflow/invoice-management-system-with-gmail-and-google-sheets)
- [**Extract and organize Colombian invoices with Gmail and OpenAI** 22 steps · calls a model · Gmail, Google Drive](https://millionrounds.com/workflow/extract-and-organize-colombian-invoices-with-gmail-and-opena)
- [**Extract invoice data from Gmail PDFs** 22 steps · calls a model · Gmail, Google Drive](https://millionrounds.com/workflow/extract-invoice-data-from-gmail-pdfs)
- [**Follow up on overdue invoices with OpenAI and Gmail** 22 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/follow-up-on-overdue-invoices-with-openai-and-gmail)
- [**Log email receipt data to Google Sheets with Gmail and OpenAI** 22 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/log-email-receipt-data-to-google-sheets-with-gmail-and-opena)
- [**Process and validate invoices from Gmail and forms with OpenAI** 22 steps · calls a model · Gmail, Google Drive](https://millionrounds.com/workflow/process-and-validate-invoices-from-gmail-and-forms-with-open)
