Skip to content
All articles

Run Your Shopify Fulfillment on a ClickUp Board

The Shopify orders list is a great ledger. It is a poor task board. If one person picks, packs, and ships every order, the difference doesn’t matter much — you work the list top to bottom and you’re done. The moment a second person is involved, the cracks show: nobody knows who took which order, “did anyone email that customer back?” lives in Slack, and the order that’s been stuck waiting on a supplier for six days looks exactly like the one that came in this morning.

A ClickUp board fixes that, because a board is built for the thing the orders list isn’t built for: coordinating people.

This is a guide to setting one up properly — statuses, fields, automations, routing — and to getting orders onto it without a human retyping them.

Why a board beats the orders list for team fulfillment

Five concrete things you get from a board that you don’t get from Shopify’s admin:

Assignment. Every order has an owner. In Shopify, an order has a status; it doesn’t have a person. On a board, “Picking” isn’t a state the order is in — it’s a state Maria is in with that order, and everyone can see it.

Visibility of the stuck ones. A kanban board shows age. An order that has sat in Picking since Tuesday is visually obvious in a way a row in a list never is. This is the single biggest reason ops teams move: the exceptions surface themselves.

WIP limits. ClickUp lets you cap how many tasks sit in a column. Cap Picking at, say, six. It sounds like bureaucracy, and then you watch your packing bench stop drowning on a Monday and you keep it.

Comments per order. The conversation lives on the order. “Customer emailed, wants it held until Friday” is a comment on task #1042, not a message in #ops that scrolled away. When someone picks the order up two days later, the context is right there.

Other views for free. The same tasks become a calendar (due dates = ship-by dates), a workload view, a map view if you use address fields, or a table if someone just wants the spreadsheet back.

Board setup: Space, List, statuses

Keep the structure boring.

Create a Space called Operations. Inside it, a List called Orders. That’s it — resist the urge to build a folder hierarchy on day one. You can always split later (see routing, below), and it’s far easier to split a working board than to merge three half-used ones.

Statuses that mirror the order lifecycle

The trap here is modeling Shopify’s data model instead of your team’s actual work. Shopify has financial status and fulfillment status; your team has jobs. Your columns should be the jobs.

A good default:

New → Paid → Picking → Packed → Shipped → Done

Plus one lane that earns its keep more than any of the others:

Problem

Problem is where an order goes when it’s blocked — out of stock, bad address, payment on hold, customer asked to change it. Without that lane, blocked orders either sit in Picking and quietly poison your cycle-time numbers, or they get moved back to New and lose their history. Give blockers their own column and a daily two-minute review of it.

A few rules that keep status lists honest:

  • One status per real handoff. If nobody ever does anything between two statuses, they’re one status.
  • Don’t add a status you won’t maintain. A Quality Check column that everyone drags through without looking is worse than no column — it’s a lie your board tells you.
  • Six to eight is plenty. If you’re at twelve, you’re modeling paperwork, not work.

Set Done as a Closed-type status in ClickUp so completed orders drop out of the active board automatically.

Custom fields: which ones earn their place

Every custom field is a field somebody has to fill in, or a field a sync has to keep true. Be stingy. The set below is what an ops person actually looks at while working an order, and it happens to be exactly the eight fields OrderTask maps into ClickUp (disclosure: OrderTask is our app — more on it below):

Field Type Why it’s on the board
Order number Text The universal reference. Every conversation starts with it.
Total Currency Drives your high-value lane and priority rules.
Customer Text Who you’re talking about.
Email Email Reply without leaving the task.
Shipping method Dropdown Express vs standard changes what you do today.
Shipping address Text / Location Needed at the packing bench; enables Map view.
Note Long text Customer’s gift note, delivery instructions, the “please hold” request.
Tags Labels Your routing and filtering fuel — wholesale, preorder, fragile, subscription.

Line items are the one thing worth debating. Most teams keep the picking detail in Shopify (or on a packing slip) and use the board to coordinate state, not to replace the pick list. Start without them; add them only if your pickers ask.

Name your tasks so the board is readable at a glance. A format like:

#1042 — Jane Doe ($86.00)

gives you the reference, the human, and the value in one line — which is enough to triage a column without opening a single task. (That’s OrderTask’s default task name, and it’s a good pattern regardless of how you get orders onto the board.)

One important ClickUp limit

ClickUp’s Free Forever plan caps lifetime custom field values at 60. Not 60 fields — 60 values, ever, across the workspace. With eight fields per order that’s seven or eight orders before you hit the wall. Any field-rich order workflow needs a paid ClickUp plan (Unlimited and above). Budget for it before you build the board, not after your team has fallen in love with it.

Automations that actually pull their weight

ClickUp’s automation engine is the reason the board stops being a manual chore. Three that pay for themselves:

Auto-assign on status change. When status changes to Picking, assign to the warehouse team (or round-robin among pickers). Nobody has to remember to claim work; moving the card is claiming it.

Due dates from your ship-by SLA. When status becomes Paid, set the due date to +1 business day for standard, same day for express. Now your calendar view is a ship-by schedule, and anything overdue is an alarm rather than a footnote. Pair this with a notification when a task in Picking or Packed passes its due date.

Priority flag above a value threshold. When Total is greater than, say, $250, set Priority to High. High-value orders get looked at first and packed with more care, without anyone eyeballing every dollar amount.

Two more worth considering once the basics stick: auto-post a comment when an order lands in Problem (so it hits the watcher’s inbox), and auto-move to Done when tracking is added.

Getting orders onto the board

Everything above assumes the orders show up. This is where most ClickUp fulfillment boards die.

Manually. Copy-pasting order details into a task takes about two minutes and is wrong roughly as often as you’d expect at 4pm on a busy Friday. It works for a handful of orders a week. It does not scale, and the moment it stops being done reliably, the board becomes fiction — and a board people don’t trust is worse than no board, because now you have two sources of truth.

Zapier / Make. A “new order in Shopify → create ClickUp task” Zap is straightforward for the happy path. Where it gets expensive — in money and in maintenance — is everything after that: field mapping by hand, a second Zap for paid, a third for fulfilled, a fourth for cancelled, and refunds. Task-based pricing also means a busy month costs more than a slow one. We compared the options honestly in Zapier vs Make vs a native app, including when a Zap is genuinely the right call (it sometimes is).

Natively, with OrderTask. Full disclosure: this is our app, so read this section with the appropriate amount of salt.

OrderTask connects your Shopify store to ClickUp and keeps the board true without anyone touching it:

  • Every new order becomes a task in the List you choose, named #1042 — Jane Doe ($86.00).
  • The eight fields above are mapped straight into your ClickUp custom fields.
  • Order events flow to the task automatically: created, paid, fulfilled, cancelled. Your columns move on their own as the order progresses.
  • Refunds land as a comment on the task — or, if your finance person prefers a queue they can work through, as a task in a separate refunds List.

The step-by-step connection walkthrough (Shopify install, ClickUp OAuth, picking your List, mapping the fields) lives in How to connect Shopify to ClickUp. It takes about five minutes.

Routing patterns: one board isn’t always right

Once orders land automatically, the interesting question becomes which board they land on. OrderTask filters by product, tag, and order value, and routes events to specific Lists — which lets you build the three patterns ops teams actually ask for:

Wholesale vs retail, split by tag. Tag wholesale orders in Shopify (or via your B2B channel) and route them to a Wholesale List with its own statuses — wholesale usually has a PO step, a pallet step, and a freight booking step that would be noise on the retail board. Retail orders keep the simple lane.

A high-value lane, by value filter. Orders above your threshold route to a VIP List or get filtered into their own board view. Different people, different packaging, different response time. Keep them out of the general queue so they don’t get worked in arrival order.

Per-product-line Lists. If you have a made-to-order line and an off-the-shelf line, they are two different processes wearing the same word “order.” Route by product so the made-to-order board can have a Production column that would be meaningless on the other one.

Start with one List. Split only when a column would be meaningless on half your orders — that’s the real signal that you have two workflows, not one.

Keeping it trustworthy

An automated board has exactly one failure mode that matters: it silently stops updating, and nobody notices until a customer asks where their package is.

Two things guard against that.

A visible sync log. You should be able to open a page and see every order that came through, timestamped, with its result — and see retries when a call fails. If an integration can’t tell you what it did in the last hour, you cannot trust it with fulfillment. OrderTask retries failed syncs automatically and shows you the whole history.

A reconciliation sweep. Retries handle a flaky API call. They don’t handle the webhook that never arrived at all — the genuinely hard case, because there’s no error to retry. OrderTask runs an hourly sweep that compares Shopify against the board and fills in anything missing. That’s the difference between “usually works” and “never silently breaks.”

Whatever you build on — a Zap, a script, our app — insist on those two properties. Fulfillment is the part of the business where a quiet failure is a refund and an angry review.

Get the board running

The setup is the easy part: a Space, a List, seven statuses, eight fields, three automations. An afternoon, tops. The hard part is keeping it fed — and that’s the part worth automating rather than delegating to someone’s memory on a busy Friday.

OrderTask is a flat $29/month (or $290/year) with a 7-day free trial and unlimited orders — no per-task pricing, no surprise bill in December. It’s billed through Shopify Billing, so it’s on the invoice you already pay.

Stop copy-pasting orders onto your board

Connect Shopify to ClickUp in about five minutes. If it saves your team one order a day, it's already paid for itself.

7-day free trial · cancel anytime from your Shopify admin