Skip to main content
Shopify B2B · the catalog layer behind it

Shopify B2B, honestly: what's built in, and what still isn't.

You sell the same sectional two ways: direct to a customer in Ohio, and to 40 dealers who each buy at their own price. Shopify's native B2B handles the second half — companies, price lists, net terms, checkout — and since spring 2026 it does that on every Shopify plan, not only Plus. What it does not handle is the reason Monday still starts with a spreadsheet: the product data underneath both audiences. Buyers email asking for a current assortment, a rep re-exports a sheet, and the PDF is wrong by Wednesday because someone changed a price. This page is the honest split — what Shopify B2B gives you, what it doesn't, and what to add, including the cases where the right answer is a wholesale app rather than us. Apimio is the catalog layer behind B2B: one product record feeding your storefront, your trade catalog and the assets your buyers actually look at.

Shopify's own feature set

What Shopify B2B includes natively

These are Shopify's features, not ours, and everything in this section comes from Shopify's own B2B documentation, checked on 2026-08-28. If you are on a current Shopify plan you already have most of it, and most of it is switched on by default.

Company accounts and company locations

A company is the buying business; a location is the ship-to or bill-to underneath it, each with its own addresses, tax settings, payment terms and assigned catalog. Contacts attach to locations rather than to the company as a whole, which is how a buyer at head office and a buyer at a branch can see different prices and different terms. Companies and company locations are available on Basic, Grow, Advanced and Plus.

  • Multiple buyers per company, each tied to a specific location
  • Per-location addresses, tax exemptions and payment terms
  • Location-level permissions — location admin and ordering roles — on every plan

Per-company catalogs and price lists

A B2B catalog is a product selection with its own prices: fixed amounts, a percentage off retail, or quantity price breaks. You assign it to a B2B market or, on Plus, straight to a specific company location. The limit is the thing to plan around — Basic, Grow and Advanced allow up to 3 active catalogs across all your B2B markets, while Plus is unlimited (Shopify help center, 2026-08-28).

  • Fixed prices, percentage adjustments and volume price breaks
  • Up to 3 active catalogs on Basic, Grow and Advanced; unlimited on Plus
  • Assigning a catalog directly to a company location is a Plus feature

B2B checkout, net terms and invoicing

Wholesale buyers do not pay like retail buyers, and Shopify's B2B checkout reflects that. Net payment terms with automatic reminders, purchase-order numbers on the order, vaulted credit cards, ACH bank payments in the US, draft orders converted to invoices, and checkout-to-draft when an order needs a human before it is billed — all available on every plan. Deposits, partial payments and per-fulfillment payment requests are Plus only.

  • Net terms, payment reminders, PO numbers, vaulted cards and US ACH
  • Draft order to invoice, and checkout to draft for approval flows
  • Deposit requirements and partial payments require Shopify Plus

Quantity rules and volume pricing

Case packs, minimums, maximums and increments are set per product inside a catalog, so a buyer cannot order 7 of something that ships in cartons of 12. Quantity price breaks drop the unit price at each threshold you define. Both are native and available on every plan — this is the piece merchants most often assume needs a third-party app, and it does not.

  • Minimums, maximums and case-pack increments per catalog
  • Quantity price breaks without a separate discount app
  • Available on Basic, Grow, Advanced and Plus

The buyer portal, quick order lists and sales staff access

Buyers sign in to a customer account that behaves like a wholesale portal: their catalog, their prices, reorders from past orders, and a quick order list for typing SKUs and quantities straight into a cart. Your own sales staff can be given permission to order on a company's behalf. Contextual storefront and contextual checkout — showing B2B pricing inside the theme itself — are Advanced and Plus only.

  • Customer accounts as the buyer login, with easy reorders
  • Quick order list and Shopify's own Trade theme on every plan
  • Storefront and checkout contextualization on Advanced and Plus

B2B on plans other than Plus, since spring 2026

B2B used to be a Shopify Plus feature. In April 2026 Shopify opened it to the Basic, Grow and Advanced plans, and the help center now states that B2B is available on all plans with most features on by default. What Plus still buys is scale and edge cases: unlimited catalogs, catalogs assigned to a company location, deposits, partial payments. Shopify's published plan prices on 2026-08-28 were Basic $25/month, Grow $65, Advanced $399, and Plus from $2,300.

  • Companies, catalogs, net terms, quantity rules and B2B checkout without Plus
  • Plus adds unlimited catalogs, company-location catalogs, deposits and partial payments
  • You no longer need to upgrade a plan to start selling wholesale on Shopify
Read: Shopify B2B without Shopify Plus
WHERE THE NATIVE FEATURE SET STOPS

What Shopify B2B doesn't do — and what breaks

None of these are faults in Shopify's B2B feature set. B2B is a commerce layer: companies, prices, terms, checkout. It assumes the product data underneath is already right, and for most brands running retail and wholesale off one catalog, it isn't.

What still goes wrong after B2B is switched on

What a catalog layer underneath changes

One catalog, two audiences, the same mess

Your dealers and your retail customers are reading the same product records. A sectional missing its seat depth is missing it in both places, and a description rewritten for the website never reaches the trade catalog. B2B gave the dealer a different price. It did not give them different data.

One canonical record behind both audiences

Catalog Hub holds one record per product with all its variants, images, metafields and translations. Your Shopify store publishes from it, your B2B catalog prices attach to it, and every buyer-facing asset is built from it — so a corrected seat depth is corrected everywhere at once instead of in three places by hand.

Buyers want the current assortment before they have an account

A prospective stockist at a trade show, a rep's new lead, a store that orders twice a year — none of them will create a login just to check whether you still make the walnut finish. Shopify's buyer portal begins after the company account exists, so the people you most want to reach see nothing.

A branded buyer space with no login

Trade Portal gives a buyer a branded, guest-access space showing the assortment you chose for them: no account, no password, no Shopify company record needed first. Use it for prospects, trade shows and the buyers who will never bother to register (Advanced and Enterprise plans).

Line sheets and PDFs are stale the day they ship

Someone rebuilds the season's line sheet, emails a 40 MB attachment, and a price changes on Thursday. Every buyer still holding that file is quoting numbers you no longer sell at, nobody knows who opened it, and the rep finds out at the worst possible moment.

Line sheets built from live data, not rebuilt each season

Line Sheets turns a filtered assortment into a shareable sheet with a public buyer link, an email-gated PDF download that captures the buyer as a lead, open tracking and a print-ready export. Change a price in the catalog and the sheet a buyer opens tomorrow is already right (Advanced and Enterprise plans). Apimio does not take the order — that stays in Shopify or your wholesale app.

Wholesale-only fields leak into public places

Wholesale price, minimum order quantity, case pack and lead time end up in a spare metafield or an unused column because there is nowhere proper to put them. Then a Google Shopping or Meta feed gets mapped to the wrong field and your trade pricing is on the open internet.

Wholesale fields that cannot reach a public surface

Wholesale price, minimum order quantity, case pack and lead time are an internal attribute class in Apimio, excluded by architecture from every Shopify sync path and every channel feed. It is not a checkbox somebody can forget to tick before a busy season.

Incomplete listings reach dealers and come back as returns

Shopify will happily publish a product with no dimensions, no material and one photograph. A retail customer might live with that. A dealer who ordered 20 units on the strength of it sends the pallet back, and freight on a returned pallet is the expensive kind of mistake.

A quality gate before either audience sees it

Quality Guard scores every listing against 74 rules, and Publish Gate holds anything below your threshold as a draft in Shopify instead of a live product. The bed frame with no dimensions never reaches a dealer's order sheet or a retail product page in the first place.

HONEST COMPARISON

Native Shopify B2B vs a wholesale app vs Apimio

Three different jobs at three different prices. Shopify B2B is the commerce layer and it is included in your Shopify plan. A wholesale app adds ordering behavior the native flow doesn't cover. Apimio is the catalog underneath both, which is why it takes an honest cross on every row about companies, orders, checkout and payment. Shopify and app facts come from the pages named, checked 2026-08-28.

The catalog layer
Apimio
Shopify B2B (native)
Wholesale app (SparkLayer-class)
Company accounts and company locations
Per-company pricing
B2B checkout
Net and payment terms
No-login buyer access to an assortment
Line sheets and shareable PDF assortments
Catalog data quality gate before publish
One catalog across multiple Shopify stores
Hosted channel feeds for Google, Meta, Pinterest, TikTok and Bing
Handled by Shopify's separate sales-channel apps, not by the B2B feature set
Wholesale fields excluded from public feeds
Depends where the app stores its wholesale prices — check before you build a feed
Works without Shopify Plus
Starting priceBasic PIM $199/month; Advanced PIM $399/month adds multi-store and feeds; Line Sheets is on every plan and Trade Portal is an add-onIncluded in your Shopify plan — Basic $25, Grow $65, Advanced $399, Plus from $2,300 per month (shopify.com/pricing, 2026-08-28)SparkLayer free tier, then $49–$299/month; Wholesale Pricing Discount B2B $24.99–$64.99/month
HOW IT COMES TOGETHER

Five steps to a B2B catalog that stays current

Nothing here replaces your Shopify B2B setup. This is what happens underneath it, and most merchants reach step four in their first session.

1

Install Apimio from the Shopify App Store

OAuth grants the scopes; there is no signup form and no API key to paste. Your Shopify B2B setup stays exactly where it is — companies, catalogs, terms and checkout are untouched. Apimio connects underneath them.

2

Your catalog syncs in

Products, variants, metafields, images, collections and Markets data import on the way in. Catalogs over 500 products use Turbo Import through Shopify's Bulk Operations API, with the first products visible in about 5 seconds. Retail and wholesale products land as one record each, not two.

3

Quality Guard scores every listing

Store Health scores the catalog against 74 rules and states in plain language what each product is missing. Turn on Publish Gate and anything below your threshold syncs to Shopify as a draft rather than a live product, so the gap never reaches a dealer's order sheet.

4

Build the buyer assortment

Filter the products a buyer or dealer segment should see and fill in the wholesale fields — wholesale price, minimum order quantity, case pack, lead time. Publish it as a Trade Portal space with guest access, or as a Line Sheet with a public buyer link and an email-gated PDF (every plan).

5

It stays current without anyone rebuilding it

Change a price or a photo once and the storefront, the portal and the line sheet all follow, because they read from the same record. Scheduled Imports brings the next supplier file in on a schedule, and hosted channel feeds rebuild from the same data with wholesale fields structurally excluded (Advanced and Enterprise plans).

Honest routing

Where each option is the right answer

Most brands need one or two of these, not all three. Here is how to tell which, including the case where you should spend your money somewhere other than here.

Start here

Use native Shopify B2B when…

You have identifiable buying businesses, you want them to order and pay for themselves, and your product data is already in reasonable shape. Companies, per-company catalogs, quantity rules, net terms and B2B checkout are included in your Shopify plan and mostly on by default, so there is no reason to buy anything before you have switched them on. The constraint to check first is catalogs: three active ones on Basic, Grow and Advanced. If you genuinely need more than three distinct price structures running at once, that is a real argument for Plus rather than for an app.

Add an app

Add a wholesale app when…

You need ordering behavior Shopify's native B2B doesn't cover: a sales-rep portal where an agent places orders on behalf of accounts, a quoting flow, registration and approval forms for new stockists, or more price lists than the native catalog limit allows. SparkLayer B2B & Wholesale and Wholesale Pricing Discount B2B are two of the most-installed answers on the Shopify App Store and neither requires Plus (listings checked 2026-08-28). This is not a job Apimio does. We would rather say so than sell you the wrong layer and have you find out in month two.

Add Apimio

Add Apimio when…

The bottleneck is the data, not the checkout. You run two or more Shopify stores, or a catalog large enough that one change has to be made in several places. Buyers ask for a current assortment you can't produce the same day. Listings go out incomplete and come back as returns. Wholesale fields are one careless feed mapping away from being public. Apimio holds one record per product, scores it, gates it, and turns it into portals, line sheets and channel feeds — while orders, checkout and payment terms stay exactly where they are, with Shopify (multi-store and feeds are Advanced and Enterprise; Line Sheets is on every plan; Trade Portal is an add-on).

See how Trade Portal works
What changes

What changes when the catalog is the layer underneath

Operational changes, described the way merchants describe them. No percentages — the numbers are yours to measure in Store Health.

One product record, two audiences

A dimension, a photograph, a finish name is corrected once and reaches the retail storefront, the B2B catalog and every buyer-facing asset. The argument about which version is right stops happening.

Buyers see the assortment without an account

Trade Portal guest access (an add-on on any plan) and public Line Sheet links (every plan) let a prospect browse what you actually sell today, before anyone creates a company record in Shopify.

The Monday spreadsheet stops

No rep re-exports a sheet, because the sheet reads from the catalog. When a price changes, the link a buyer already has is already correct, and nobody has to send a correction email.

Trade pricing cannot go public by accident

Wholesale price, minimum order quantity, case pack and lead time are an internal class excluded from every sync path and every channel feed. A dealer price appearing in Google Shopping stops being a thing that can happen.

Fewer returns from incomplete listings

Publish Gate holds below-threshold products as drafts, so a dealer never orders a pallet against a listing with no dimensions and no material. Wholesale returns cost freight, not just goodwill.

Every download becomes a lead

Email-gated line sheet PDFs capture the buyer's email and track opens, so the wholesale funnel finally has a measurable top instead of an attachment nobody can account for (every plan).

The rest of the B2B cluster

Keep reading

The pages underneath this one, in roughly the order most brands need them.

Trade Portal — branded buyer spaces

The branded, guest-access space a dealer or prospect opens without a login: the assortment you chose for them, your branding, and the Image Library behind it (Advanced and Enterprise plans).

Explore Trade Portal

Line Sheets — built from live catalog data

Pick products, set the wholesale fields, choose a layout, and share a public link or a print-ready PDF that captures the downloader as a lead. No page-layout software, no stale attachment (Advanced and Enterprise plans).

See Line Sheets

Selling through a dealer network

The solution page for brands selling through 20, 40 or 200 stockists — how one catalog serves a whole dealer network without anyone emailing a pricelist again.

See the dealer-network solution

Shopify B2B without Shopify Plus

What you can and cannot do on Basic, Grow and Advanced now that Shopify has opened B2B beyond Plus, and exactly where the three-catalog limit starts to bite.

Read the guide

Shopify B2B dealer portal

How to give dealers a portal without giving them Shopify admin access — the permission question every brand asks second, right after the pricing one.

Read the guide
SHOPIFY B2B FAQ

Shopify B2B questions merchants actually search

Straight answers, including the ones where the right answer isn't Apimio.

Yes, and natively. Shopify has a built-in B2B feature set: you create a company for each buying business, add its locations and contacts, attach a catalog with its own wholesale prices and quantity rules, and let buyers check out on net terms. Since April 2026 that runs on the Basic, Grow and Advanced plans as well as Plus. What it does not do is fix the product data your retail and wholesale audiences share — the missing dimensions, the description that forked, the wholesale field parked somewhere a feed can read it. That layer is what Apimio works on, underneath Shopify's B2B rather than instead of it.

B2B on Shopify is Shopify's own wholesale mode. Instead of selling to individual customers, you sell to companies: each company has locations, and each location has its own contacts, payment terms and assigned catalog. That catalog carries wholesale prices, quantity price breaks and rules such as case-pack increments. Buyers sign in to a customer account, see their prices, and check out on net terms or with a stored card. All of it is Shopify's feature and documented in Shopify's own B2B manual. Apimio sits behind it as the product catalog those prices attach to — one record per product feeding both your storefront and your trade catalog.

There is no separate charge for B2B — it comes with your Shopify plan, so the cost is the plan. As published on shopify.com/pricing on 2026-08-28: Basic $25/month, Grow $65/month, Advanced $399/month, and Plus from $2,300/month on monthly billing in USD, with annual billing lower on the first three. The limit worth planning around is catalogs: Basic, Grow and Advanced allow up to 3 active B2B catalogs, while Plus is unlimited. Anything you add sits on top of that — a wholesale app runs roughly $25 to $300 a month, and Apimio starts at $199/month for the catalog layer.

It depends which half of the problem you have. For wholesale ordering mechanics on top of Shopify's native B2B — a sales-rep ordering portal, quoting, registration and approval forms, or more price lists than the native catalog limit allows — SparkLayer B2B & Wholesale and Wholesale Pricing Discount B2B are two of the most-installed answers on the Shopify App Store, and neither requires Plus (both listings checked 2026-08-28). For the catalog underneath — one product record serving retail and wholesale, a quality gate before anything publishes, and buyer-facing portals and line sheets — that is Apimio. Plenty of brands run Shopify B2B plus one of each.

No. Shopify opened B2B to the Basic, Grow and Advanced plans in April 2026. Companies, company locations, catalogs with wholesale prices, quantity rules and price breaks, net terms, purchase-order numbers and B2B checkout are all available without Plus. What Plus adds is scale and edge cases: unlimited active catalogs instead of three, catalogs assigned directly to a company location, deposit requirements, partial payments, and storefront and checkout contextualization (Shopify's help center, checked 2026-08-28). Apimio behaves identically on any Shopify plan — it installs from the Shopify App Store and has no opinion about which plan you are on.

Shopify B2B is the platform's own commerce layer: companies, catalogs, terms and checkout, included in your Shopify plan. A wholesale app adds ordering behavior the native flow does not cover — a rep portal, quoting, approval workflows, or more price lists than three active catalogs allow. Neither one manages the product information itself. If descriptions have forked between audiences, dimensions are missing, or your line sheet is a PDF someone rebuilds every season, the fix is upstream of both. That is where Apimio works. The three layers stack rather than replace each other, and most brands eventually need two of them.

Not through Shopify's native B2B. The buyer portal begins once a company account exists, which is the right model for established accounts and the wrong one for a prospect you met at a trade show. Apimio's Trade Portal gives a buyer a branded, guest-access space showing the assortment you selected, and Line Sheets publishes either a public buyer link or an email-gated PDF that captures the downloader as a lead. Line Sheets is on every plan; Trade Portal is an add-on on any plan. Apimio never takes the order — when the buyer is ready to buy, they order through Shopify or through your wholesale app.

The reliable answer is to stop storing wholesale data anywhere a feed can reach. In Apimio, wholesale price, minimum order quantity, case pack and lead time are an internal attribute class that is excluded by architecture from every Shopify sync path and every channel feed — not a checkbox somebody can forget. If you keep those values in Shopify metafields instead, audit each feed's field mapping before every publish, because a feed tool exports whatever field you point it at. Hosted channel feeds with pre-publish diagnostics are on Apimio's Advanced and Enterprise plans.

That is the whole reason to put a catalog layer underneath. In Apimio one record per product carries every variant, image, metafield and translation, plus the internal wholesale fields; your Shopify store publishes from it, your B2B catalog prices attach to it, and Trade Portal and Line Sheets are built from it. A correction happens once and lands everywhere. Per-store overrides cover the places where retail and trade genuinely need different copy or visibility, and Quality Guard scores the record before either audience sees it. Multi-store sync is on the Advanced and Enterprise plans.

Apimio's Advanced PIM plan at $399/month, because that is where the Image Library, multi-store sync and hosted channel feeds live. Line Sheets is on every plan, and Trade Portal is an add-on on any plan. The Basic PIM plan at $199/month covers one Shopify store and 10,000 SKUs with Catalog Hub, Store Health and Publish Gate — enough if your only problem today is catalog quality rather than buyer-facing assets. Enterprise PIM starts from $999/month with custom limits. Every plan starts with a 14-day free trial, and the full breakdown is at /pricing.

Keep Shopify B2B. Fix what's underneath it.

Install from the Shopify App Store, watch your catalog import, and read the Store Health report on your own products in the first session. Your companies, catalogs, terms and checkout stay exactly where they are — Apimio works on the record they all point at. 14-day free trial.