Native PO approval flow doesn’t exist on Grow. It’s Plus-only via the B2B Companies feature, where you assign locations and roles (Ordering vs Approving) per buyer. Below Plus you have to fake it.
Two paths I’ve seen actually work on Grow.
Draft Orders + Customer Accounts: employee submits order, your Flow rule converts it to a draft instead of an order, then emails the admin a one-click approve/reject link. The admin’s link is a signed Storefront API URL that flips draft to order. No checkout completion until approval. Friction is that payment is collected post-approval, so card-on-file logic gets messy.
Cart hold via Functions + custom approval portal: Cart Validation Function rejects checkout for tagged employee accounts and stores a pending intent in a metaobject. Admin sees a portal listing pending intents (custom app or hidden /pages/ route) and approves them, which removes the rejection tag. Customer comes back, completes checkout. Heavier but the UX is closer to native.
If approval volume is meaningful, Plus pays for itself fast from support time saved alone. What’s the rough order count per month and how many employee/admin pairs?
Use draft orders with custom tags and an approval layer via Shopify Flow or through a third-party approval app. Team members place orders which are immediately held for authorization from whoever the bosses are, then turned into orders. Employees create draft orders which go into pending status, then supervisor approves before conversion to alternative order status. Draft Alternatively, create a simple custom app to gate the finalization of orders workflow control.
This is a really helpful breakdown of what’s possible on Grow but it also shows how much of this ends up being recreated outside the core workflow.
Draft orders and cart validation can get you close, but they still introduce friction around payment timing, tracking approvals, and keeping everything in sync once the order is finalized.
Feels like the core gap is that approval isn’t treated as part of the order lifecycle itself, so it has to be layered on top instead of flowing through the process.
Curious for those using these setups does it hold up cleanly once volume increases, or does it start to require more manual coordination?
Since this thread keeps coming up in search, one clarification worth adding: the “Submit all orders as drafts for review” option is part of Shopify B2B company locations and isn’t limited to Plus — if your plan has B2B companies, you have it. It’s set per company location, under the location’s checkout settings.
What it gives you is merchant-side review: buyers at that location see “Submit for approval” at checkout, and every order lands in Orders → Drafts for you to accept before it becomes a real order (prices locked). Combined with a Flow rule that emails the supervisor when a draft is created — as tim suggested above — that covers a lightweight version of this workflow.
What it still doesn’t give you is the true buyer-side step the OP asked for (employee submits → their own supervisor approves before anything reaches the merchant). Native roles are just “Ordering only” and “Location admin”, and location admins can see pending drafts but can’t edit or approve them. For that part it’s still the workarounds lumine described, or one of the buyer-side approval apps that launched this year.
One practical note if you go the drafts route: because the setting lives on each company location, it has to be enabled every time you create a company — easy to miss when you onboard wholesale accounts by hand, and then that account’s orders skip review entirely.