How to Automate an Online Business: Orders, Support, Restocking

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for How to Automate an Online Business: Orders, Support, Restocking.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for How to Automate an Online Business: Orders, Support, Restocking.

To automate an online business with AI, connect three things in order: a trigger that logs every new order to a sheet, an AI step that sorts incoming support emails and drafts replies for you to approve, and a stock rule that alerts you when an item falls below its reorder point. Start with the order log, because the other two read from it.

Most owners try to automate support first, because that is where the hours go, and then find the AI has no order data to answer from. Build in the order the information flows: orders, then support, then stock. Expect about three weeks of part-time work and, at 600 orders a month, a Zapier bill of roughly $90 to $135 a month (much less on Make), with a person approving anything that reaches a customer or a supplier.

Follow me on Instagram@sagnikteaches

The shop we will automate, and what it handles each month

Take an online shop selling bicycle parts and accessories, run by two people: chains, brake pads, inner tubes, lights, a few bundles. It sells through a standard hosted store platform, has about 600 orders a month, receives roughly 150 support emails, and stocks 120 product variants from four suppliers. Everything below is illustrative, but the sums are the kind your own shop will produce.

Connect on LinkedInSagnik Bhattacharya

Before any tool, write down what happens today in plain steps. For this shop it looks like this:

Subscribe on YouTube@sagnikteaches
  1. An order arrives. The platform emails the customer a confirmation. One of the owners copies the order into a "to pack" sheet.
  2. Support emails land in a shared inbox. Whoever is free reads them, looks up the order, and types a reply. Typical questions: where is my parcel, can I change the size, my part does not fit.
  3. Once a week, one owner walks the shelves, compares them with a gut feeling, and emails suppliers.

Those three steps cost about 11 hours a week between them: roughly 3 hours copying orders, 6 hours on support, 2 hours on stock. The target is not to remove the hours but to cut copying to nothing, halve the support time, and replace the shelf walk with an alert. If your own mix is different, run the same exercise first; the automation audit tutorial shows how to list what already runs before you add more.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Choosing the glue: Zapier, Make or your platform's own flows

The glue tool watches for an event (a new order, a new email) and then performs steps in other apps. Two are popular with small shops. Zapier is the easier of the two to learn; Make shows the whole flow as a diagram and is usually cheaper at higher volume. Many store platforms also ship a built-in flow builder that handles simple jobs, such as tagging an order, for no extra charge. Use that first for anything it can do, and the glue tool only for what spans several apps.

Facts worth knowing before you pick, as of November 2026. Zapier's Free plan allows 100 tasks a month and two-step Zaps only, so it cannot run this workflow; Professional tiers start at $29.99 a month ($19.99 billed annually) for 750 tasks and rise to $193.50 ($129 annually) for 10,000. Triggers and filter steps do not count as tasks, but each successful action does, and an AI by Zapier step uses 1, 3 or 5 tasks depending on the model tier chosen (Standard, Advanced or Premium). New AI steps on paid plans default to Premium, the 5-task tier, so set the tier yourself. Make restructured its plans in 2026 and now charges in credits, from about $9 a month billed annually for 10,000 credits; routers use no credits, and an AI step can use more than one credit. Check both plan pages for the current ladder before you commit, since tier names move.

A sensible default for a shop this size is Zapier Professional for its simpler set-up, or Make if the task count looks high. If you are unsure how an event reaches the tool in the first place, what a webhook is explains why some automations fire instantly and others wait up to fifteen minutes.

Job one: log every order the moment it arrives

Create a Google Sheet called "Orders" with these columns: order number, date, customer first name, email, items (one line each), total, shipping method, status, and a notes column. Then build the first automation.

  1. Trigger: "New Order" from your store app.
  2. Action: "Create Spreadsheet Row" in Google Sheets, mapping the fields above. Set status to "To pack".
  3. Action: "Create Multiple Spreadsheet Rows" on a second tab called "Lines", one row per line item with SKU, quantity and order number. It counts as one task however many rows it writes, and this tab is what the stock rule will read later.

That is two actions per order, so 600 orders use about 1,200 tasks a month on Zapier, or a similar number of credits on Make. If that feels heavy and you will not build the stock alerts, drop the "Lines" step and save a task per order. A bundle of three items still logs as one order, so check that your "Lines" tab does not create three rows by mistake and triple the count.

Run it against five test orders in the platform's test mode before going live. Confirm the totals match, that a name with an apostrophe does not break the row, and that an order with two shipping lines still produces one row. The silent failure to watch for is a field mapped to the wrong column, which can sit unnoticed for weeks.

A before and after for the copying job

Before: an owner opened each order, selected the items and pasted them into the pack sheet, 18 to 20 seconds each, with a typo roughly once in every forty orders (a transposed size, a missing second item). After: the row appears within Zapier's polling interval, which is 2 minutes on Professional (15 on Free), and the owner only reads it at pack time. Three hours a week becomes a ten-minute check on Friday that the count of rows matches the platform's order report.

Job two: sort support emails into piles and draft the replies

The second automation reads each new email in the support inbox, asks an AI model to classify it, adds a label, and for the easy categories writes a draft reply that waits in the drafts folder. Nothing is sent. This is the step where a person stays in the loop on purpose.

Set it up like this:

  1. Trigger: "New Email" in your mail app, limited to the support inbox (use the label or mailbox field so personal mail is never read).
  2. Action: an AI step, either the glue tool's built-in one (on Zapier, pick the Standard tier for sorting) or a call through your own OpenAI API key, with the classification prompt below.
  3. Action: apply the returned label to the email ("Add Label to Email" in Zapier's Gmail app).
  4. Filter: continue only when the category is "order status" or "returns policy".
  5. Action: look up the order in your sheet by the email address, then call the AI a second time with the order row and the draft prompt.
  6. Action: "Create Draft Reply" in your mail app, so the draft sits in the same thread.

Here is a classification prompt that works well on a small shop. Paste it into the AI step and fill in your own categories.

You sort support emails for a small online shop that sells bicycle parts.
Read the email below and reply with ONLY a JSON object:
{"category": "...", "urgency": "low|normal|high", "needs_order_lookup": true|false}

Allowed categories: order_status, change_order, fitment_question,
return_or_refund, damaged_or_wrong_item, supplier_or_press, other.

Rules:
- If the customer mentions a safety problem (brakes failed, part broke while riding), urgency is high and category is damaged_or_wrong_item.
- If you are unsure, use "other". Never guess.

Email:
{{email_body}}

Asking for JSON only matters because the next step has to read the answer. If the model wraps it in a sentence, the filter breaks. Test with twenty real emails you have already answered and compare labels by eye.

What the sorter returned on twenty past emails

Illustrative result from such a test: 14 labelled correctly, 3 labelled "other" that a person would have sorted (acceptable, since "other" means a human reads it), and 3 wrong. Two of the three wrong ones put a fitment question into "order_status" because the customer wrote "I ordered the 11-speed chain and it has not arrived or fit yet". The fix was a rule line: "If the email asks about compatibility, even alongside an order, use fitment_question." After the change, the same twenty scored 17 right, 3 "other". Twenty emails will not prove accuracy, but they show which instruction to add.

The draft reply, with the order data attached

For order-status questions the second AI call receives the customer's order row. A prompt along these lines keeps the draft short and honest:

Write a reply from the shop to the customer below, in a friendly, plain tone, under 90 words.
Use only the order details given. If the status is "To pack" say it is being prepared and that tracking follows by email. If a tracking number is present, include it. Do not promise a delivery date.
Sign off "[your name], [shop name]".

Customer message: {{email_body}}
Order details: {{order_row}}

Illustrative output: "Hi [first name], thanks for getting in touch. Your order is with our packing team and tracking will reach you by email once it leaves us. I have not given a delivery date because that depends on the courier. If anything on the order needs changing, reply here today. [your name], [shop name]". A reviewer fixes two things in drafts like this: the AI sometimes adds a promise the shop did not make ("arrives Thursday"), and it can quote the wrong shipping method when two orders share one email address. Reading the draft against the order row takes about twenty seconds, against two to three minutes to write it from scratch.

For a wider view of the first month of AI customer support, including which questions to leave untouched, see the first 30 days of AI customer support for an online shop.

Where a person must stay in the loop

Three points deserve a human, however good the AI looks in testing.

  • Money moving back to customers. Refunds, partial refunds and replacements are decided by a person. The AI can label and summarise a return request, quote the policy, and prepare the refund screen, but it never presses the button.
  • Anything safety-related or legal. The sorter flags it high-urgency; a person replies the same day, in their own words.
  • Anything that spends money with a supplier. Reorders (job three) go out only after a person reads the quantity.

A simple way to enforce this in the tool itself: send the draft to a "needs approval" label, and add an approval step before any send. Zapier has a Human in the Loop step whose time-out choices are "End run" or "Skip and continue"; choose "End run" so a forgotten approval cancels the action rather than sending it. Make's own Human in the Loop app is Enterprise-only and in closed beta, so on a smaller plan use a drafts-folder pattern instead.

Job three: reorder alerts from the sales log

Stock is the job where a spreadsheet beats an AI, and the AI's role is mainly to explain and draft. Create a third tab, "Stock", with one row per variant: SKU, product, on hand, supplier, lead time in days, weekly sales (a formula from the Lines tab), pack size, and reorder point.

The reorder point is a simple sum: weekly sales multiplied by lead time in weeks, plus a safety buffer. Take the 11-speed chain. It sells 9 a week, the supplier needs 14 days, so lead-time demand is 18. Add a buffer of one week (9) and the reorder point is 27. With 31 on hand, no alert; after the next three sales it drops to 28, then 26, and the alert fires.

The automation, in Zapier or Make:

  1. Trigger: a new row in the "Lines" tab (a sale).
  2. Action: look up the SKU in "Stock" and read "on hand" and "reorder point".
  3. Filter: continue only if on hand is at or below the reorder point and no alert was sent for this SKU in the last 14 days (a "last alerted" column handles this).
  4. Action: ask the AI to write a draft reorder email to the supplier, using the pack size and the usual order quantity, then save it as a draft.
  5. Action: message the owner, in whatever app they actually read, with a one-line summary.

The on-hand number in the sheet must come from the platform's inventory count, not from the sheet's own subtraction, or returns, damages and manual sales will drift it away from reality. Pull it with a "Find Product Variant by SKU" search (the Shopify step's name in Zapier) when the alert fires, then trust the platform's figure over the sheet's. If your platform has its own inventory tools that suggest reorders, treat their figure as a second opinion; Shopify, for example, ended its Stocky app after 31 August 2026 and points merchants to the inventory features in its admin, which include purchase orders. For deeper forecasting see how small shops forecast stock and reorder.

A draft supplier email, filled in

Illustrative draft, ready for a person to approve:

Subject: Reorder request - 11-speed chain (SKU CH-11-116)

Hi [first name],

Please can we place a repeat order of 60 units of the 11-speed chain, 116 links, same spec as order #2291. We have 26 on hand and our usual delivery is 14 days. Could you confirm stock, the current unit price and the ship date?

Thanks, [your name]

What the human checks: the quantity (60 is two pack sizes of 30), that the order number quoted is real, and that the price has not changed since the last order. The AI sometimes adds a discount request nobody asked for, so remove anything you did not decide yourself.

What the three jobs cost and save, as a sum

Illustrative monthly numbers for the shop above, on Zapier Professional, with every AI step on the Standard tier (1 task) or left on the Premium default (5 tasks):

ItemStandard AI tierPremium AI tierNotes
Order log (2 actions x 600 orders)1,2001,200Trigger not counted
Support sorting (150 emails)300900AI step plus label; the filter is free
Draft replies (about 70 emails)210490Lookup, AI draft, draft reply
Stock lookups (about 700 sale lines)700700Every sale line runs one lookup
Stock alerts (about 25)125225Variant check, AI draft, draft, notify, "last alerted" update
Totalabout 2,535about 3,515Pick the tier above this, with headroom

Both totals overshoot the 2,000-task Professional tier ($73.50 a month, or $49 billed annually), so the shop needs the 5,000-task tier: $133.50 a month billed monthly, or $89 a month billed annually, at list price. The per-sale stock lookup is the line people forget, because it runs on every sale, not only when an alert fires. If you connect your own OpenAI API key, Zapier counts each AI step as one task and OpenAI bills the usage separately from any ChatGPT subscription, so check its API pricing page as well. On Make, the same volume would probably fit inside the smallest 10,000-credit plan, but read a week of real usage before relying on that, because AI modules can use more than one credit each. Against that, the shop recovers about six of the eleven weekly hours. At a modest $20 an hour that is around $520 a month in time, though it only turns into money if those hours are spent on something that sells.

The cheaper path is to keep copying orders but add only the support sorting and drafts: about 510 tasks with Standard AI steps, which fits the 750-task tier ($29.99 a month, or $19.99 billed annually). Left on the Premium default, the same two Zaps use about 1,390 tasks and need the 1,500-task tier. Start there if the first month's budget matters more than completeness.

When the run history shows red: three failures to expect

Expect these in the first month, and decide in advance who looks.

  • The reconnect. Mail and spreadsheet connections expire. Personal Gmail connections in Make need re-authorising every six months, and by default Zapier turns off a Zap whose runs keep failing (its help centre names a 95% error rate). Put a monthly reminder in your calendar to open run history.
  • The duplicate. If a platform sends the same order event twice, you get two rows. Add a lookup step: find the order number first, and stop if it already exists.
  • The runaway. A draft reply that triggers another email into the same inbox can loop. Add a filter step straight after the trigger that stops the run when the sender is the shop's own address; filter steps use no tasks.

The weekly check that catches all three: compare the platform's order count for the past seven days against the number of new rows in the sheet. If they differ by even one, open run history.

Building it in order: a three-week plan for two part-time owners

Week one: write out the current steps, build the order log, and run it beside the manual copy for five days. Week two: build the support sorter in labels-only mode, with no drafts, and read every label. Week three: switch on drafts for order-status emails and the stock tab. Keep the manual shelf walk for another month and compare it with the alerts; they should agree within a few units.

The same pattern, trigger then AI step then approval, fits other jobs once these run well. AI versus rule-based automation helps you decide which steps need a language model at all (the reorder maths does not). If you would rather map this with someone, that is the work my AI implementation consultation covers, at the contact page.

The same workflow for a bakery, an HVAC parts counter and a solar shop

The three jobs move easily to other kinds of seller, with different facts at each step.

A small online bakery selling boxes of biscuits and cakes has orders with a fixed collection or delivery date. The log needs a "needed by" column, and the support sorter needs a category for "change of date". Stock becomes ingredients rather than finished goods: flour, butter and packaging each have a reorder point, and the supplier email asks for a delivery on a named weekday. The human sign-off matters more here because allergen questions arrive by email, and those are always answered by a person from the written allergen list.

An HVAC contractor who sells filters and spare parts online alongside installation work has two inboxes tangled together. Sorting is the real gain: the classifier separates "where is my filter order" from "my unit is not cooling", and the second goes to a person immediately as high urgency. The stock rule applies only to the twenty or thirty parts that sell weekly; the rest are ordered on demand.

A solar installer with a small accessories shop (cable, connectors, monitoring units) sees few orders but long supplier lead times, sometimes six weeks. The reorder point formula still holds, but the buffer grows with the lead time, and the alert should arrive early enough that a person can ask the supplier about delays before stock hits zero.

How to tell it worked after thirty days

Measure four numbers, written down on day zero so you are not judging from memory: hours a week on order copying, hours a week on support, number of stockouts that cost a sale, and median time to first reply. For the shop above, a good first month shows copying near zero, support down by a third to a half, no new stockouts on the twenty best sellers, and a first reply inside a few hours instead of a day. If the support hours have not moved, the likeliest cause is that drafts are being rewritten rather than approved; re-read the instruction lines and add the phrases you keep changing.

Keep a short log of every automatic mistake in the first month: what happened, which step, what you changed. After a month the log tells you which parts to leave alone and which deserve more checking, and it is far more useful than any general advice about what AI can do.

Questions owners ask before wiring up a shop

Which should I start with: orders, support or restocking?

Start with the order log, because every other step reads from it. It takes an afternoon, carries no customer-facing risk, and gives you a clean sheet of what sold and when. Support triage comes second, and reorder alerts third, once the sheet has a few weeks of real sales in it.

Can the AI reply to customers without my approval?

It can, but for a small shop I would not allow it at first. Let the AI draft and label, and send the drafts yourself for the first month. Move only the dullest category, such as order-status questions, to automatic sending once you have read about fifty drafts and changed almost none.

What happens when a Zap or scenario fails halfway?

The order itself is safe, because your store platform keeps it regardless. What you lose is the log row, label or alert. Turn on the platform's failure email, check run history every Monday, and keep a weekly count of orders in the store against rows in the sheet so a silent gap shows up.

Do I need ChatGPT, or can Zapier's own AI step do the sorting?

Either works for sorting emails into categories. Zapier's AI step is simpler because there is no separate key to manage. Connecting your own OpenAI API key gives more control over the model and counts as one task per step, but OpenAI bills that API use separately from any ChatGPT subscription. Start with the built-in step on its Standard tier and switch only if the labels disappoint.

Further reads

Sources: Zapier pricing page and help centre (task usage, AI by Zapier model tiers, Human in the Loop, Zap auto-off rules), Zapier app pages for Shopify, Gmail and Google Sheets, Make pricing page and app pages (Gmail, Human in the Loop), OpenAI help centre on API billing, Shopify help centre (Stocky, purchase orders), checked 5 November 2026.

Want your order-to-restock flow mapped properly?

On a 1:1 call we'll go through your store's orders, inbox and stock sheet, pick the step worth automating first, and decide whether Zapier, Make or your platform's own tools should run it.

Book a 1:1 call with me