How to Manage Inventory When You Sell on Shopify, Faire and Wholesale
Multichannel inventory management for CPG brands on Shopify, Faire and wholesale: who owns each number, how to count every order once, and a 15-minute weekly check.

Article written by
Peasy

When you sell on Shopify, Faire, and wholesale, multichannel inventory management comes down to one rule. One system holds the count, and every channel either reads from it or reports into it.
So Shopify reads the count. Faire and wholesale orders report into it the day they arrive. And before you say yes to a big order, you check what's available, not what's on the shelf.
We'll go through why counts drift and who should own each number. Then how to set up Shopify, wholesale, and Faire so every order gets counted once, and a 15-minute weekly routine that catches what slips.
We make Peasy, free inventory ops for small CPG brands. At the end we'll walk through how it keeps one count across your channels.
What multichannel inventory management means
Every channel you sell through keeps its own idea of your stock. Shopify has a count, Faire has a count, and the wholesale orders in your inbox don't have a count at all until someone types them in.
What you want is one number you trust. Then you split that number three ways:
On hand: what's physically on the shelf, at each location.
Committed: what you've already promised. Open wholesale orders, Faire orders that haven't shipped, and ingredients set aside for a production run.
Available: on hand minus committed. The stock you can still promise.
Available = on hand minus committed
Shopify uses the same split. Its inventory states count units in unfulfilled orders, draft orders, and transfers marked ready to ship as committed.
But Shopify only sees Shopify's orders. So Available is only right in a system that sees every order.
Why counts drift across Shopify, Faire, and wholesale
Most brands we talk to don't have one big sync failure. They have a few small leaks, and each one looks harmless on its own.
Wholesale lives in the inbox. A distributor sends a PDF, and a store owner texts a photo of a handwritten list. Until someone enters it, that stock looks free to every other channel.
Faire orders live in Faire. You accept and ship them there, so your own count only moves if you move it.
Wholesale runs through Shopify. You push wholesale orders through a Shopify wholesale app so they get counted. But the order arrives looking like a web order, at the wrong price, with nowhere to record which lot shipped.
Packs and cases count differently. Faire counts single units. If Shopify lists cases, an order for 12 units can land as 12 cases, or the other way around.
Locations are mapped wrong. Web and Faire sales come off the co-packer's location instead of your warehouse. Fixing the mapping stops it from here on, but you'll clean up the old records by hand.
The count happens against the wrong system. You count the shelf, compare it to Shopify, and fix Shopify. Now you've got two systems taking turns correcting each other.
That's overselling. One jar gets sold on your website and again to a store that emailed on Tuesday.
How to keep one count across every channel
1. Give every number one owner
Counts drift when two systems both think they own the same number. So decide which system owns each one, and only edit it there. If you make product, the split usually looks like this.
Number | Owner | What the other systems do |
|---|---|---|
On hand | Your inventory system | Shopify reads it. Faire gets it from Shopify or by hand. |
Committed | Your inventory system | Shopify and Faire report orders in. Wholesale gets entered there. |
Available | Your inventory system | No other channel sees every order, so none can work it out. |
Lot codes | Your inventory system | Channels don't track them. |
Retail price and listings | Shopify | Imported once, then left alone. |
Wholesale prices | Your price lists | Kept off the public site. |
When you count the shelf, compare it to your inventory system, not Shopify. Fix the gap there and let the new count push out.
When a connection breaks, decide which side is right first. Push that count one way, then recount your fast movers.
2. Set Shopify up to read the count
Shopify is built for shoppers, not for a shelf three channels share. So four settings decide whether its numbers hold up.
Send it the shelf count. Your inventory system sends Shopify the on-hand number. Shopify subtracts its own open orders and shows the rest as available.
One Shopify location per real place. Map your kitchen, warehouse, and 3PL to one location each, before you turn on two-way sync. A sale with no mapped location can't come off the right shelf.
Packs and cases from one pool. A jar, a 3-pack, and a case of 12 are three listings and one pile of jars. Selling a case should take 12 jars off the shelf.
Bundles built in one place. If a Shopify bundle app takes components out at order time and your inventory system takes them out at shipping, counts never match the shelf. Let one system do the bundle math.
3. Get wholesale orders out of the inbox
A wholesale order that only lives in email is uncounted stock. So hold yourself to one standard. Every order, from every channel, lands in one place the day it arrives.
You get there in three moves, usually in this order:
Upload the PDF. Drop each emailed purchase order into your system instead of retyping it.
Forward the email. Send orders to a dedicated address that turns them into drafts you check.
Let repeat buyers order themselves. A wholesale portal where each buyer signs in, sees only their prices and minimums, and submits a draft you confirm after checking stock.
New accounts still need an order form. Ask for store name, ship-to and bill-to, PO number, resale certificate, items, quantities, requested ship date, and payment terms.
The large grocery chains won't use any of these. They send orders by EDI, so if you sell to them, you'll use an EDI provider.
Can Shopify handle wholesale?
Shopify B2B is one option. It runs on Basic, Grow, Advanced, and Plus, but below Plus you get 3 active B2B catalogs and can't assign a catalog to one company.
If you have a fourth price tier, you'll hit that wall quickly.
What doesn't work is typing wholesale orders into your direct-to-consumer store just to get them counted. They pick up retail prices, they mix in with your web sales, and they can come off the shelf twice.
4. Price by customer type, not by channel
Don't create a second item for each channel. Keep one item and give each sell unit its own price. Then put each customer type on its own price list: stores you sell direct, distributors, and anyone with a negotiated deal.
A jar and a case are two sell units of the same item, drawing on the same shelf.
Keep wholesale prices behind a login, never on the public site. Before you send a price list, check every line covers your real cost per unit with room for a distributor's margin.
5. Bring Faire orders in by one path
Faire keeps its own count. Its Shopify app has three switches: price sync, inventory sync that updates Faire's counts from Shopify, and order sync that sends accepted Faire orders into Shopify.
Faire counts everything in single units, so a retailer ordering 2 six-packs shows as 12. If your Shopify listings are cases, set the selling method to By the case, or Faire's stock will be off by the case size.
Then decide how Faire orders reach your count:
Path | How it reaches your count | What goes wrong |
|---|---|---|
Faire's app syncs orders to Shopify | Arrives as a Shopify order | Counted twice if you also import Faire orders |
You import orders from Faire | Weekly export or connection | Missed if the import doesn't run |
Shopify and Faire settings checked October 2026 on each platform's own help center.
Pick one path and write it down. If you switch on both, the same order comes off the shelf twice.
If an order Faire shows as shipped still looks open after an import, export again. Faire's export can lag behind its order page.
6. Check Available before you say yes
Big orders rarely arrive one at a time. Two event orders in ten days can take 220 of your 520 cases, on top of the normal Faire and direct flow.
So before you confirm a wholesale order, read Available, not on hand. And enter wholesale orders the day they arrive, so Available is true when you read it.
Wholesale comes off the top. A web shopper who sees "sold out" comes back next week. A store that gets a short shipment may not reorder.
Hold a small buffer on your top sellers so the website stops selling before the shelf is empty. Start with about one day of that item's web sales, and adjust after a month.
Worked example: promising a wholesale order from Available
Say you sell jars on Shopify, on Faire, and direct to stores. Here's one week.
Line | Jars |
|---|---|
On hand | 240 |
Open distributor order | 120 |
Faire orders waiting to ship | 36 |
Available | 84 |
A new store emails for 10 cases of 12, which is 120 jars. Shopify still sees 240 on hand, minus its own orders, so it keeps selling jars you've already promised.
Available says 84. So you promise 7 cases now and the other 3 after Thursday's batch, and you tell the buyer today, not on ship day.
A 15-minute weekly routine
Pick a day before the week's orders stack up. Monday morning works for most brands.
Clear the inbox (3 minutes). Every wholesale email, PDF, and text from last week gets entered.
Bring in Faire (2 minutes). Import anything accepted since last week, or confirm the app sync ran. Check for duplicates.
Check the Shopify connection (2 minutes). Look for orders that failed to come in. A quiet sync log in a busy week is a bad sign.
Count five items (3 minutes). Count your five fastest sellers and compare the shelf to your inventory system. Fix gaps there and let them push out, never by hand in Shopify.
Read Available on your top sellers (3 minutes). Anything negative or under your buffer goes on this week's production or purchase list. If you don't know where that line sits, set a reorder point first.
Match open wholesale orders to stock (2 minutes). If anything shipping in the next two weeks will come up short, tell the buyer now.
If step 4 turns up a gap on more than one item, recount that whole location before anything else.
Common multichannel inventory mistakes
A second Shopify store for wholesale. Two stores means two counts of one shelf. Keep Shopify for direct sales and run wholesale outside it.
Wholesale through the web checkout. The order picks up retail prices and carries no lot. Wholesale is the half of a lot trace an auditor checks first.
Both Faire paths switched on. The app sends orders to Shopify and someone imports them too. Every Faire order comes off the shelf twice.
Fixing counts in Shopify. The next push from your inventory system overwrites the fix. Correct the count where it's owned.
Promising from on hand. The shelf says 240, but 156 are already spoken for.
A 3PL that only reads Shopify. Wholesale orders entered anywhere else are invisible to them. Send a packing slip with every wholesale order, or the shelf and the system part ways on the first shipment.
How Peasy keeps one count across channels
One count, every channel. Connect your Shopify store and pick an Inventory Sync Direction. Shopify orders arrive within seconds to minutes, and Peasy sends your on-hand count back within about a minute of any change.
Locations match the shelf. Location Mapping ties each Shopify location to the Peasy location that holds the stock, so a 3PL order comes off the 3PL's count.
Wholesale leaves the inbox. Forward an order email or PDF to your Peasy orders address. Peasy reads the customer, items, quantities, and prices into a draft, and nothing is saved until you click Complete.
Repeat buyers order themselves. Each buyer signs in to your Storefront with an email link or Google and sees their assigned catalog. Orders respect each item's Order Min (MOQ) and your Minimum order, and land as draft sales orders.
Faire orders import, in beta. Bring them in from Faire's order export or the Faire beta connection. Importing the same orders again updates them instead of duplicating them.
Available on every item. Each item shows On Hand, Pending, and Available. Pending covers open sales orders, transfers, and ingredients set aside for production, so the worked example above does itself once the orders are in.
One limit: Peasy sends Shopify your on-hand count, not Available, so open wholesale orders don't lower what Shopify can sell. Check Available before you confirm a big order.
Peasy is free, with no subscription and no cap on items, users, or orders. The wholesale vs. Shopify orders guide covers where each order belongs.

Article written by
Peasy



