← All articles

Shopify B2B & the wholesale channel

Shopify Wholesale Store Setup: A Build in One Week

By Martin Mecar, founderJuly 31, 20267 min read

A wholesale setup on Shopify is five decisions and about a day of configuration: the wholesale price, the case pack, the minimum order, who gets in, and how they pay. Everything else — a trade landing page, tiered pricing, a slicker catalogue — is refinement you add after the first real order.

This is the build in the order that works, with the numbers worked through on one product so you can substitute your own. The product throughout is a candle: twenty-four dollars retail, five dollars twenty landed, six to a case.

Day one: fix the wholesale price and prove it works

Start with arithmetic, not with Shopify. If the price is wrong, a beautiful portal just makes the wrong price easier to order at.

The candle retails at twenty-four. The standard wholesale price is half of that, twelve dollars, because a shop needs to roughly double its cost to survive on rent and staff. Landed cost is five dollars twenty, which includes the jar, wax, wick, label, box and the inbound freight on materials.

So each unit contributes six dollars eighty. A case of six invoices at seventy-two dollars, costs thirty-one dollars twenty, and leaves forty dollars eighty before outbound freight.

Two tests. Is landed cost at or under half of wholesale? Five dollars twenty against twelve is comfortable. And does the remaining contribution survive freight? A small case to a domestic boutique might cost nine dollars to ship, so if you absorb it you are at thirty-one dollars eighty a case, which still works.

If either test fails, stop here. The fix is in the product cost or the retail price, and wholesale vs retail price works through where those numbers need to land before a portal is worth building.

Day one, afternoon: set the case pack and the minimum

The case pack is how many units travel together and how many a shop must buy at once. Six is a good default for a candle: it fills a shelf row, it fits one shipper box, and it is small enough that a nervous first-time buyer will say yes.

Pick the pack from the shelf, not from your packing table. Ask what quantity looks deliberate in a shop — a row of six, a stack of twelve — and build the carton around that.

The minimum order is separate and it is a margin decision. Below a certain invoice, picking, packing, invoicing and freight eat everything. For this candle, two cases is one hundred and forty-four dollars and roughly sixty-three dollars of contribution after freight, which is a reasonable floor for an opening order. Set the reorder minimum lower — one case — so a shop that is selling through can top up without waiting.

Then enforce both in the cart rather than in a note nobody reads. Increments of six, a minimum on the order, and a clear message when the buyer is short. The mechanics of setting that up are in Shopify quantity rules.

Day two: choose the mechanism

Now pick how wholesale prices actually render. There are three routes and they suit different sizes of brand.

Draft orders. You build the order in the admin, apply the wholesale prices by hand, and send an invoice link. No app, no plan change, no login for the buyer. For the first ten accounts this is not a compromise, it is the right answer — it also forces you to talk to every buyer, which is how you learn what the line sheet is missing.

A tagged trade group with an app. Customers tagged as trade see a second price, often behind a password-protected section. This is the middle path: self-serve ordering without an upgrade. Pick the app on what it does to your theme and your checkout, not on its feature list, and test a full order before you invite anyone.

Native company accounts. On the top plan, buyers belong to companies with their own catalog, price list, terms and buyer logins. This is the version that scales past twenty accounts and multiple buyers per shop. What each piece does is in Shopify B2B.

Choose on account count. Under ten, draft orders. Ten to twenty-five, tagged group or app. Past that, or the moment a stockist asks for their own assortment and thirty-day terms, the structured version starts paying for itself.

Day three: build the gate and the trade pages

Wholesale prices should be invisible to consumers, and getting that wrong is embarrassing in a specific way — a retail customer seeing twelve dollars and asking why they cannot have it.

Gate by account, not by obscurity. A hidden URL is not a gate; a logged-in customer tag or a company account is. Whatever you use, open a private browser window and check the trade prices are genuinely not visible before you send a single invitation.

Then build three pages a buyer needs.

A trade landing page that explains the terms in one screen: wholesale pricing, case packs, minimum opening order, lead time, freight policy, and how to apply. Buyers are scanning for reasons to disqualify you, so answer the objections in public.

An application form that asks for the shop name, website or social handle, address, and a resale or tax registration number. Approve manually at the start. You are choosing who represents the brand.

An order page that looks like a line sheet: product, case pack, wholesale price, retail price, a photograph that reads at thumbnail size. Retail price on the page is not optional — a buyer is doing margin arithmetic in their head and you want to do it for them.

Day four: decide terms and freight in writing

Two policies, written once, applied to everyone.

Payment. First order prepaid by card, without exceptions. After a shop has paid twice on time, thirty days is a reasonable ask if you can carry it. Carrying terms means funding someone else's inventory: two hundred dollars of cases shipped on thirty-day terms is two hundred dollars of your cash out for a month, and some of it comes back late. The decision framework is in Shopify net terms.

Freight. Pick one of three: buyer pays actual cost, flat rate per order, or free over a threshold. A threshold works well because it lifts order size. On this candle, free freight over three hundred dollars pushes a buyer from three cases to five, which adds eighty-one dollars sixty of contribution against nine dollars of shipping.

Put both policies on the trade page and in the order confirmation. Ambiguity about freight is the most common cause of a first invoice being queried.

Day five: test it like a stranger, then invite five shops

Place a full order as a buyer. New email, apply through the form, wait for your own approval email, log in, add product, hit the minimum, get blocked below it, pay, receive the confirmation. Read every email your store sends in that sequence and rewrite the ones that still say consumer things about delivery tracking and returns windows.

Then invite five shops you already have a relationship with — the boutique that stocked you after a market, the two that emailed asking about trade pricing, the friend of a friend with a gift shop. Five is enough to find the setup's mistakes while the audience is forgiving.

If your list of plausible shops is thin, that is the real bottleneck rather than the portal. Paste your store link into WholesalePilot and look at the preview of retailers and distributors that stock comparable products, then work that list while the setup is fresh.

Should this be a second store instead?

Almost never, and it is worth saying plainly before you build the wrong thing. A second Shopify store means a second subscription, a second theme, a second product catalogue and an inventory sync that will eventually oversell something. The company-account model exists precisely so you do not have to do that. The cases where a separate store genuinely makes sense are narrow and are laid out in a separate wholesale store on Shopify.

Build the trade side into the store you already have, and spend the saved week emailing shops instead.

Questions brands ask while setting this up

Do I need the top plan to start? No. Draft orders work on any plan and cost nothing extra, and plenty of brands run their first twenty accounts that way before upgrading anything.

Should wholesale prices be visible without a login? No. Publish case packs and the minimum openly so buyers can qualify themselves, and keep the prices behind the account.

How long should approving an application take? Same day if you can, two days at the outside. A buyer who applied on Monday and heard nothing by Thursday has already opened someone else's line sheet.

What lead time should I promise? Whatever you can hit when three orders land in the same week. Five working days is a credible promise for a small brand and worth more than a shorter one you miss.

Find the B2B buyers for your product

Paste a product link. We find matching wholesale buyers, email them in your name, and hand you the replies.

Keep reading