Automate wholesale reorder reminders from each account's own cadence
Updated · By Ecomsellertool editorial team
To automate wholesale reorder reminders, work out each account's own cadence from its order history: expected reorder date = last order date + the median days between its orders. A daily rule lists accounts due within a few days, skips any with an open order, quote or overdue invoice, and flags accounts far past due as quiet. A person approves each reminder and calls the quiet accounts.
- Shopify B2B runs on the Basic, Grow, Advanced and Plus plans; companies, net payment terms and checkout to draft are on all four (checked November 12, 2026).
- In the Admin API, each order's purchasing entity names the company and the company location that placed it, and each company location lists its own orders (checked November 12, 2026).
- Shopify Flow has a Scheduled time trigger and four company triggers, but no trigger for an account that has stopped ordering, so the cadence has to be computed (checked November 12, 2026).
- A draft order made for a company location takes that location's prices, payment terms and checkout options, so a prepared reorder carries the buyer's own terms (checked November 12, 2026).
- In this recipe rules compute the cadence and build the list, an AI model only sorts buyer replies, and a person approves every reminder and calls every quiet account.
The step map: who runs each step
Trigger: A daily run over every active company location's order history, plus each new order, draft order or buyer reply as it arrives.
| Step | What happens | Who runs it |
|---|---|---|
| 1 | Each night the workflow reads the last 12 months of orders for every company location, with the date and the lines of each, plus open draft orders, open quotes and any overdue invoices from receivables. | Rule |
| 2 | For each location it computes the median days between orders, the expected reorder date and the days until due, and marks the account quiet when the days since its last order pass your quiet threshold. Locations with too few orders use your default cadence. | Rule |
| 3 | It removes accounts that should not hear from you today: an order or draft already placed, an open quote, an overdue invoice, a pause note such as a seasonal closure, or usual items out of stock. | Rule |
| 4 | It builds the day's list for each rep: due-soon accounts with a reminder and, if you choose, a draft order prepared from the account's usual lines; quiet accounts as call tasks with their recent history. | Rule |
| 5 | The rep reviews the list, edits or skips any reminder, approves the rest and calls the quiet accounts. Nothing goes to a buyer without this step. | Person |
| 6 | Approved reminders go out from the rep's mailbox, or as the draft order's invoice email from Shopify, and each one is logged against the account. | Rule |
| 7 | An AI model reads each reply and sorts it: ordering now, wants a quote, paused until a date, changing supplier or closing, or something else. Pauses and dates are written back so the next run respects them. | AI model |
| 8 | When the next order arrives, the cadence is recalculated, any open reminder is closed, and the log records whether the reminder came before the order. | Rule |
6 rule steps · 1 AI model step · 1 person step. A rule follows fixed logic you approve; an AI model handles messy input and its output is checked by rules; a person makes the calls listed below.
What stays with a person
- Approving, editing or skipping every reminder on the day's list
- Calling quiet accounts and recording why they stopped ordering
- Any offer, discount or price change made to win an account back
- Accounts with an overdue invoice, which go to whoever owns receivables, not to sales
- The cadence settings themselves: the reminder lead time, the quiet threshold and the default cadence
Which tools can run it
- Shopify Flow on a schedule, for a short list of accounts and a simple days-since-last-order rule
- Zapier, Make or n8n with a sheet and an AI model step, for a few dozen accounts and one rep
- Custom code on your accounts, for per-account medians, suppression rules, prepared draft orders and reply logging
Systems it connects
- Shopify B2B (companies, catalogs and draft orders)
- Shopify Admin GraphQL API
- QuickBooks Online or Xero (open invoices)
- Rep mailbox (Gmail or Outlook)
- CRM or account sheet with owners and pause notes
- Slack or email for the reps' daily list
Build size: Medium
The math is simple; the work is clean order history per location, the suppression rules and a review screen reps will actually use.
Most wholesale revenue is repeat revenue, and most of it depends on someone noticing when a buyer is due. In many brands that someone is a sales rep with a sheet, or the owner scrolling the orders list on a Monday. Accounts that order on their own keep ordering; the ones that drift are noticed weeks late, when the shelf space has gone to another supplier. This recipe gives every account its own reorder clock, reminds the ones that are due, flags the ones that have gone quiet, and keeps a person in charge of every message. It is one page of our automation library.
How do you know when each wholesale account is due to reorder?
Use the account's own history, not one rule for everyone. A coffee shop that reorders every two weeks and a gift store that reorders every six need different reminders, and a fixed "30 days since last order" rule nags the first and misses the second. The formula below gives each account its own clock. It works per company location, because in Shopify B2B the location is the business you sell to and carries its own catalogs and payment terms, as Shopify's companies guide explains. B2B runs on the Basic, Grow, Advanced and Plus plans, per Shopify's B2B features by plan (both checked November 12, 2026).
Expected reorder date = last order date + median days between that account's orders
Days until due = expected reorder date − today
Quiet when days since last order > quiet multiple × median days between orders
Use the median, not the average. For example, an account with gaps of 28, 28, 29 and 90 days between orders (the 90 was a summer closure) has an average of about 44 days but a median of 28.5. The average would hold its next reminder back by two weeks; the median keeps it on time. Use the last 12 months of orders, and give accounts with fewer than four orders (three gaps) a default cadence you set until they have enough history.
What does the per-account reorder cadence table look like?
This table is the core of the build, and you can run it by hand in a spreadsheet today. Each row is one signal the workflow reads, what the rule does with it, when it leads to a reminder, and what stays with a person.
| Signal | What the rule computes | When it sends a reminder | What a person decides |
|---|---|---|---|
| Order dates for the company location, last 12 months | Median days between orders, expected reorder date, days until due | When days until due falls inside your lead time, such as 5 days | Whether the median looks right for an account with an odd history |
| Number of orders on file | Fewer than four orders: your default cadence instead of the median | Same lead time, on the default date | When a new account has enough history to switch to its own median |
| Days since the last order | Quiet flag when it passes the quiet multiple, such as 1.5 times the median | No automated reminder: a call task for the rep | Whether to call, what to offer and why the account stopped |
| Open draft order, open quote or order placed since the last run | Suppress: the buyer is already ordering | Never | Nothing, unless a quote has sat open past its date |
| Overdue invoice in receivables | Suppress and route to receivables | Never, until the balance is cleared | Whoever owns receivables decides the next step |
| Pause note on the account (seasonal closure, renovation, "back in April") | Expected date moved to the pause end | On the new date, inside the lead time | Entering and lifting the pause |
| Stock of the account's usual items | Lines out of stock removed from any prepared reorder | Still sent, with what is available | Whether to offer a substitute or wait |
| The account's usual lines and quantities | A draft reorder from the last three orders, at current catalog prices | Attached to the reminder if you choose | Checking quantities before the draft goes out |
Here is an illustrative run on March 2 of a year when February has 28 days, with a 5-day lead time and a quiet multiple of 1.5. The accounts and numbers are made up to show the math; they are not client data.
| Account (illustrative) | Last order | Median days between orders | Expected reorder date | Days until due | What happens |
|---|---|---|---|---|---|
| A, gift shop | February 6 | 28 | March 6 | 4 | Inside the lead time: reminder with a prepared draft goes to the rep for approval |
| B, café group | February 24 | 14 | March 10 | 8 | Not due yet: nothing today |
| C, outdoor store | December 20 | 45 | February 3 | −27 | 72 days since last order, past 67.5 (1.5 times 45): quiet, call task for the rep |
| D, salon | January 27 | 30 | February 26 | −4 | Due, but an invoice is 12 days overdue: suppressed and sent to receivables |
| E, new boutique | February 10 | 30 (default; two orders on file) | March 12 | 10 | Default cadence until it has four orders: nothing today |
Two of five accounts reach a rep and only one gets a reminder. That is the point: the list is short, every item on it is worth a rep's minute, and nobody chases a buyer who owes you money or is already ordering.
Where does the order history come from in Shopify B2B?
From the Admin API, per company location. Each Order has a purchasing entity, "the business entity that placed the order", and a createdAt time set when the customer completes checkout. For B2B orders that entity is a PurchasingCompany, which names the company, the contact and the company location (both checked November 12, 2026). The CompanyLocation object lists the location's orders with a sort key, plus its orders count, total spent and catalogs (checked November 12, 2026).
There is no last-order date field on the location in the reference, so the workflow sorts the orders and reads the newest. The Company object adds an orders count and total spent across all locations, the main contact and a customerSince date, and needs the read_customers or read_companies scope (checked November 12, 2026). A completed draft order is an order too, so orders reps key in for buyers count the same as checkout orders.
To prepare a reorder, the workflow creates a draft order whose DraftOrderInput carries the purchasing entity, the line items and a PO number field (checked November 12, 2026). Shopify's B2B draft orders guide says that with a company location on the draft, "the prices, payment terms, and checkout options automatically reflect the settings for that company", and the draft can be sent to the buyer as an invoice (checked November 12, 2026). Prices come from the location's B2B catalogs (checked November 12, 2026), so a stale catalog means a stale reminder; our wholesale price list sync recipe keeps them current.
Can Shopify Flow send reorder reminders on its own?
For a simple version, partly. The Flow Scheduled time trigger starts a workflow on a repeat of days, weeks or months, at most once every 10 minutes, with no data attached, so you add a Get action (checked November 12, 2026). Get order data returns up to 100 orders per run, filtered by a query (checked November 12, 2026). The trigger list has four company triggers (company created, company location created, contact created and contact permission assigned) and none for an account that has stopped ordering (checked November 12, 2026).
| Need | Shopify Flow alone | Workflow tool or custom code |
|---|---|---|
| "No order in N days" alert for a handful of accounts | Workable with a schedule and a query | Also fine |
| A different cadence per account, from its own median | Hard: Flow has no step that computes a median over order history | Computed each night |
| Suppress for open drafts, quotes and overdue invoices in QuickBooks or Xero | Shopify data only | Reads every system |
| A rep approves each reminder before it goes | Needs a manual step outside Flow | A daily review list |
| Reply sorting and pause dates | Not covered | AI model step plus a log |
The Order created trigger gives access to the order's Admin API data, and its templates include tagging B2B orders when they are created (checked November 12, 2026). That is a useful building block: tag each B2B order, then let the nightly run read the tags. For a short list of accounts and one rep, Flow and a sheet are the better choice; our guide to what Shopify Flow automates shows where it stops, and the Zapier vs Make vs n8n comparison covers the next level.
What should stay with a person?
Every message to a buyer, and every decision about winning one back. Rules are good at dates; they do not know that the buyer at account C said in January that a new manager starts in March. So the rep approves each reminder, and quiet accounts get a call, not an email sequence. A discount or a better price to win an account back is a commercial decision that stays with sales.
Accounts with an overdue invoice never get a reorder reminder, because asking for a new order while chasing payment confuses the buyer and the rep. They go to receivables, and our net terms invoice reminders recipe covers that side. Terms are set when the account is approved: Shopify offers net 7 to net 90, due on fulfillment and fixed-date payment terms for B2B (checked November 12, 2026), and our wholesale customer application queue has a person approve them for each new account.
What can go wrong, and how do you catch it?
| What goes wrong | How it shows up | The check that catches it |
|---|---|---|
| Orders from one buyer split across two locations | Two short cadences, or none | Locations are reviewed when a company has more than one; reps can merge their history in the sheet |
| A buyer reorders through email or a rep | A reminder after they already ordered | Every order type counts, and a rep-keyed draft suppresses the reminder; see our B2B order entry recipe |
| A seasonal account looks quiet every winter | Call tasks nobody needs | A pause note moves the expected date; the median ignores one long gap |
| The reminder goes to the wrong contact | Silence | Send to the location's ordering contact, and route bounces to the rep |
| A quote is open when the reminder fires | The buyer gets two messages | Open quotes suppress; our quote requests recipe keeps their dates |
This is not the same as your own reorder point, which tells you when to buy stock from a supplier. It does feed it: the expected reorder dates across accounts are an early read on wholesale demand for your replenishment plan. Not sure this is the workflow to start with? Our guide to what to automate first scores tasks on hours and the cost of a mistake.
Who builds wholesale reorder reminders?
Ecomsellertool builds reorder and follow-up workflows on your own Shopify and accounting accounts. We have built software on Amazon's seller APIs since 2017 and shipped 50+ tools for 100+ teams. We start with your accounts, reps and terms, agree the lead time, quiet multiple and suppression rules, then build the review list reps use each morning. Send a project brief below, or see how our workflow automation service works.
The building blocks are work we have shipped:
- Next-action alerts that replaced manual follow-ups. For EzBookPrep we built a system that tracks every book from purchase to listing and sends alerts for the next action on each one, replacing the manual follow-ups that had made the client the bottleneck. A daily reorder list is the same idea applied to accounts.
- Ordering history turned into plans. Cheddy, a warehouse and inventory system we built, gathers ordering and delivery data and studies it to find trends and plan future operations, the same history a reorder cadence is computed from.
Custom code can run on Ecomsellertool Growth OS beside your order and stock flows.
Get your reorder reminders built
Send us how you follow up with wholesale accounts today
Describe the workflow you want automated. We reply with a written plan: scope, timeline and a fixed price.
Frequently asked questions
How do I remind B2B customers to reorder on Shopify?
Shopify has no built-in reorder reminder for B2B accounts. Compute each company location's expected reorder date from its own order history, list the accounts due in the next few days, and send a reminder after a rep approves it. Shopify Flow can run a simple version on a schedule; per-account medians and suppression rules usually need a workflow tool or custom code.
How do you calculate when a wholesale customer is due to reorder?
Take the dates of the account's recent orders, work out the days between each pair, and use the median of those gaps. Add it to the last order date to get the expected reorder date, and subtract today to get the days until due. The median is better than the average because one late order, such as a seasonal closure, does not drag it out.
What counts as a wholesale account going quiet?
A common rule is an account whose days since its last order pass a multiple of its own median, such as 1.5 times. You pick the multiple. A buyer who orders every 14 days is quiet after about three weeks, while one who orders every 60 days is not quiet until about three months, so a single fixed number of days treats them unfairly.
Should reorder reminders be sent automatically?
In this recipe a rep approves every reminder before it goes out. Rules build the list and the draft message, but the rep knows things the order history does not, such as a buyer who said last week that the store is closing for renovation. Some brands later let fixed-template reminders go without review for accounts the rep marks.
Can the reminder include a ready-made reorder?
Yes. The workflow can prepare a Shopify draft order for the company location from the lines the account usually buys. Because a draft order for a company location takes that location's prices, payment terms and checkout options, the buyer sees their own terms. A rep should check quantities first, and items out of stock are left off.
What is the difference between a reorder reminder and a payment reminder?
A reorder reminder asks a buyer for their next order when their usual cadence says one is due. A payment reminder chases an invoice that is due or overdue. They should never cross: an account with an overdue invoice gets no reorder reminder, and goes to whoever handles receivables.
