Shopify Development · focused work
Shopify B2B setup
Shopify's native trade selling is built around companies. A company has locations, each location is assigned a catalog with its own prices, payment terms and tax treatment, and the buyers attached to it see those prices once they sign in. Setting it up is mostly a modelling exercise: deciding who becomes a company, what each one may buy, and at what price.
This is the right work if
- Trade orders arrive by email or spreadsheet and someone retypes them into the admin
- Wholesale pricing is handled with discount codes that retail customers eventually find and share
- Different accounts have negotiated different prices and there is nowhere structured to hold them
- Buyers need to order against agreed terms and pay later rather than by card at checkout
- The same catalog has to show public prices to visitors and trade prices to signed-in buyers
What it is
What a trade setup involves
The configuration covers company and location records, catalogs and price lists built as percentage adjustments or fixed negotiated prices, quantity rules and ordering increments, payment terms where credit has been agreed, tax exemption held against the location, and the permissions that decide which contacts at a company may place an order rather than only view one. Buyers sign in through the newer customer accounts system, and what they see after signing in is different from the public storefront.
The decisions come before the configuration. Whether trade and retail share one store or run separately. How the agreements the sales team already has map onto a manageable number of price lists rather than one per customer. Whether the public storefront shows prices at all. How exemption certificates are collected and where they are stored. Then integration, because terms, credit limits and invoices usually live in an accounting or ERP system that has to stay the authority on what a customer owes. Native trade selling belongs to the higher Shopify plan, so stores on other plans meet the same needs with apps or a second store, each with trade-offs worth stating plainly before anyone builds.
How it is done
The work, in order
What changes
- Trade buyers place their own orders at their own agreed prices
- Negotiated pricing lives in a catalog instead of in codes and spreadsheets
- Terms, exemptions and order minimums apply automatically at checkout
- The sales team spends its time selling rather than retyping orders
Model customers as companies
Decide which accounts become companies, how their sites map to locations, and who at each one may order, approve or only browse. Getting the location model right early matters, because prices, terms and tax all attach to the location rather than the person.
Build catalogs from real agreements
Group customers onto a small number of price lists that reflect the actual commercial terms, using percentage adjustments where a tier applies broadly and fixed prices for individually negotiated lines. Set quantity minimums and case increments here rather than policing them by hand.
Set payment and tax by location
Assign terms where credit has been approved and card payment elsewhere, and record exemption status against the location so it applies at checkout without anyone intervening. Agree who updates a company when its credit status changes, and how quickly.
Adapt the storefront for signed-in buyers
Show trade prices, minimums and case quantities after sign-in, surface stock and lead time where trade buyers rely on them, and make reordering from history a short path. A buyer placing the same order every month should not navigate the catalog to do it.
Connect the back office
Sync companies, contacts, credit status and orders with the accounting or ERP system so the store never becomes a second answer to what a customer owes. Decide which system wins on each field before the first order flows in either direction.
Pilot before migrating everyone
Onboard a handful of accounts, watch where they hesitate, and fix that before inviting the rest. Buyers keep emailing orders until self-serve is genuinely faster than sending a message to a rep who already knows what they want.
Platform notes
Shopify Plus
Companies, locations, catalogs, payment terms and quantity rules are native here, and Functions can extend the pricing logic further where an agreement cannot be expressed as a price list adjustment alone.
Shopify
On plans without the native model, trade selling is usually met with an app that gates prices behind a customer tag, or with a second store, which duplicates catalog maintenance but keeps the two audiences fully separate.
Can trade and retail selling share one store?
Often yes, and it is the simpler option when the catalog largely overlaps and inventory is shared. Separate stores make sense when the ranges, branding or fulfilment differ enough that one storefront would confuse both audiences, and when someone is prepared to maintain two catalogs.
Can prices be hidden from visitors who are not signed in?
Yes, and it is a business decision as much as a technical one. Hiding prices removes the store from product listings and from most shopping search, so it suits ranges sold only through agreements and works against products that could also attract new trade buyers through search.
How do payment terms work at checkout?
A location with terms assigned lets an approved buyer complete an order without paying immediately, and the balance is settled through the invoicing process afterwards. The store records the order and the terms; the credit decision and collections stay with the finance system and the people who own them.
What is missing without the native trade features?
Mainly the structure. Apps can gate prices and apply tiers, but company hierarchies, per-location catalogs and terms recorded against a location are harder to reproduce, so growing trade operations tend to outgrow the workaround and end up migrating the model rather than the data.
Related work and answers
Find the leak.
A free Growth Analysis ranks what your store should fix first, by revenue at stake.