Shopify Plus has a real B2B suite — Companies, locations, customer-specific catalogues, quote requests, custom payment terms. It also costs $2,300/month minimum.
If you have wholesale or B2B revenue but can’t justify Plus yet, you can build something that works on Shopify standard. It won’t be as good — but it’ll be 80% as good for 5% of the price.
The architecture
You’re going to use:
- Customer accounts + tags to identify B2B customers
- Metafields / metaobjects to store wholesale prices
- Customer-specific pricing via a discount code or app
- Hidden / gated pages for the B2B catalogue
- Login-required collections for wholesale-only products
Each piece is straightforward. Together they form a system.
Step 1 — Tag your B2B customers
When a wholesale customer registers (manually approved), tag them b2b in the customer admin. This tag is the key to everything else.
Optional: tier them — b2b-tier1, b2b-tier2 — if pricing varies by relationship size.
Step 2 — A B2B-only collection
Create a collection that only contains wholesale variants or wholesale-only products. Hide it from your sitemap and main navigation.
In your theme, gate it:
{% if customer.tags contains 'b2b' %}
{% comment %} render the collection normally {% endcomment %}
{% for product in collection.products %}
{% comment %} ...PDP cards... {% endcomment %}
{% endfor %}
{% else %}
<p>This catalogue is for approved wholesale customers only. <a href="/account/login">Log in</a> or <a href="/pages/wholesale-apply">apply for access</a>.</p>
{% endif %}
Step 3 — Wholesale pricing
Three approaches, in increasing complexity:
Approach A: tiered discount code. Generate codes like B2B-CUSTOMER-NAME that apply 30% off the entire order. Auto-apply on cart for tagged customers via JS. Works on any plan.
Approach B: separate “wholesale” variants per product. A “Tee — Retail $40” and a “Tee — Wholesale $20” variant on each product. Hide the wholesale variant unless customer is tagged b2b. Works on any plan, but adds variant complexity.
Approach C: a wholesale app. Wholesale Pricing Manager, Bold Custom Pricing, etc. Apps charge $40-$200/mo. They handle pricing, hide retail prices, manage minimum quantities. Often worth it for serious B2B.
Step 4 — Minimum order quantities
If your B2B requires “minimum 12 units” or “$500 minimum order”:
- For 12-unit minimums per product: a small JS validator on the cart that prevents checkout if quantity < 12 for B2B-only SKUs.
- For total-order minimums: same approach but on cart total.
Or use an app — Shipping Rates Calculator Plus and similar handle this with rules.
Step 5 — Net terms (don’t try to do this)
If you offer Net 30 / Net 60 payment terms, do not try to bolt this onto Shopify standard. Use:
- Manual invoicing — customer places order, you mark “pending payment,” send invoice via Stripe/Pay.com, fulfil on payment.
- A third-party tool like Resolve or Slope.
- Eventually, upgrade to Plus and use real B2B Companies + payment terms.
Trying to fake net terms with custom Shopify hacks creates accounting chaos.
Step 6 — A wholesale application form
Customers shouldn’t auto-register as B2B — you want approval. Use a regular Shopify form (Pages → wholesale apply) or a free form app.
Workflow:
- Customer fills the form.
- You email them after vetting (Shopify or company info verification).
- You manually create their account + tag them
b2b+ email login instructions.
Step 7 — Hide retail prices for B2B customers
If retail and B2B see the same store, hide pricing for non-logged-in or non-B2B users on the wholesale collection:
{% if customer.tags contains 'b2b' %}
<span class="price">${{ product.price | money }}</span>
{% else %}
<a href="/account/login" class="price-locked">Log in to view price</a>
{% endif %}
What this setup CAN’T do (so you know when to upgrade)
- True multi-buyer companies. One Plus Company can have 10 buyers. Standard Shopify supports one customer per account.
- Volume pricing breaks within a single order. “$10/unit at 100, $8/unit at 500” — this is hard without an app.
- B2B-specific checkout. Plus has dedicated B2B checkout with company billing fields, PO numbers, etc. Standard doesn’t.
- Custom catalogues per customer. Plus lets you build a unique catalogue per Company. Standard you fake this with collections + tags.
When to actually upgrade to Plus
The math:
- Your B2B revenue exceeds $20–30k/month, and
- You’re paying for 3+ apps to fake B2B features, and
- Your team is spending real time on workarounds
Then Plus pays back. Until then, the standard-plan workaround above is fine.
Real-world example
A client we worked with had $15k/mo wholesale. We built the standard-plan approach above in two weeks. Their B2B customers were happy. Their accounting was clean. Six months later they hit $40k/mo wholesale and we migrated them to Plus + Companies in another two weeks.
The standard-plan approach got them there. Plus is for when you’ve earned it.