Run B2B and DTC from a single storefront. Each buyer type sees personalized pricing, products, and content based on their account type with same URL, completely different experience behind the login.
Best for: Brands that already have a DTC store and want to add wholesale without managing two separate sites. Lower overhead. Consistent brand experience. One admin to maintain.
A separate store built exclusively for wholesale buyers. Full control over the wholesale experience without any compromise for DTC consumers.
Best for: Manufacturers or distributors with no DTC channel, or brands where wholesale is a completely distinct product range and experience.
In Shopify B2B, your wholesale accounts are organized in a two-level hierarchy:
Company: the parent organization. Example: "ABC Retail Group."
Company Location: the specific business entity within that company. Example: "ABC Retail - New York" or "ABC Retail - Los Angeles."
Each company location gets its own:
- Shipping and billing address
- Tax ID and tax exemption status
- Payment terms
- Pricing catalog
- Contacts with individual login credentials and permissions
When a B2B buyer logs in and has access to multiple locations,it will automatically route the order to the correct account, terms, and pricing.
Control exactly which products each buyer can see and purchase. An account in one region or channel type sees a different product range than an account in another.
Quantity-based price breaks that incentivize larger orders. Displayed automatically on product pages and in the cart when a buyer hits a threshold.
Control the minimums, maximums, case packs per product and per customer. For example, wholesale buyers order in cases of 12; your DTC customers can order one. Enforced automatically.
In Shopify B2B, a catalog controls two things: which products a buyer can see, and what prices they pay. You can assign up to 25 catalogs to a single company location. When multiple catalogs contain the same product at different prices, Shopify automatically shows the buyer the lowest price.
Two ways to assign catalogs:
- Via Markets (all plans): Group buyers by region or segment and assign one catalog to the whole group. Best when you offer the same pricing structure to multiple accounts.
- Direct to Company Location (Plus only): You can assign a unique catalog directly to each individual company location. Best when every account has their own negotiated pricing.
From your Shopify admin, go to Settings → Customer accounts → Turn on Show sign-in links to add a login link to your store header and checkout
If you run a blended B2B + DTC store and want to keep legacy accounts for DTC customers, you can manually add the B2B login URL to your navigation menu, footer, or a dedicated wholesale landing page without switching all customers over to the new account system.
Use the Checkout Blocks app (free) to hide, rename, or reorder payment and shipping methods for specific buyer types. For example: show bank transfer only to B2B buyers, hide it from DTC customers.
Instead of manually adding every new wholesale account, install the free Shopify Forms app to add a company account request form to your storefront. When a prospective buyer submits the form, their info is saved as a company account automatically, you approve it, and they're in.
Assign payment terms per company or per company location. Available options in Shopify B2B:
- Net 7, Net 15, Net 30, Net 45, Net 60, Net 90
- Due on fulfillment
- Due on receipt
Terms are assigned at the account level and applied automatically when that buyer checks out. No manual adjustment required.
For high-value orders where you want partial payment upfront, set a percentage-based deposit requirement at the company level or per location. Buyers pay the deposit at checkout by credit card or manual payment. Order status changes to Partially paid in your admin automatically.
For complex orders you want to review before confirming, configure company locations to submit all orders as drafts.
Draft orders let you:
- Review and edit before approving
- Lock prices so they don't change if you update pricing later
- Reserve inventory while the order is pending
- Add a PO number
- Send an invoice to collect payment
- Negotiate with the buyer before finalizing
When a B2B buyer checks out, they get a one-page checkout that auto-populates their company-specific details:
- Payment terms, shipping address, and billing address pre-filled
- PO number field for their internal purchase order reference
- Option to ship to a one-time address without saving it permanently
No re-entering information on every order. No friction.
Use Shopify Flow to send automated payment reminders instead of manually chasing overdue invoices. Pre-built Flow templates handle:
- Payment reminders when an order becomes due
- Invoices sent to multiple email addresses on fulfillment
- Automatic B2B order tagging
- Internal team notifications when a new B2B order is placed