Shopify · 7 min read
B2B on Shopify: running wholesale in the same store
Many merchants arrive at the same point: the Shopify store runs fine for consumers, and then the first reseller asks for wholesale terms. The first orders go through email and Excel – sales types them in manually as draft orders, the special prices live in a spreadsheet only one person maintains. By the fifth trade customer at the latest, the question comes up: can’t the existing store handle this itself? The answer is yes – but which route makes sense depends heavily on your Shopify plan and your pricing rules.
Why B2B is more than a discount code
The most obvious workaround – a permanent discount code for resellers – quickly collides with how wholesale actually works. Business customers expect their own price lists rather than a flat percentage, volume tiers above certain quantities, minimum order quantities, and often payment on invoice with terms instead of a credit card. On top of that, at a typical company several people order against the same account, and the head of purchasing wants to see what their people ordered.
And then there is VAT: consumers see gross prices, business customers calculate net. A B2B setup that does not model this difference cleanly produces incorrect invoices – and the first to notice is not the customer but the tax advisor.
The effort pays off for more merchants than you might expect: according to Eurostat (2024), EU enterprises generate 4.3% of their total turnover from web sales to other businesses and public bodies – just ahead of web sales to consumers at 4.0%. Measured in turnover, online wholesale has quietly caught up with B2C web commerce.
The native route: B2B on Shopify Plus
Shopify has built B2B directly into the platform, but only on the Plus plan, its most expensive regular tier. There you get company profiles with multiple contacts and shipping addresses, catalogs with dedicated price lists and volume tiers per customer group, quantity rules, payment terms, and ordering on invoice. B2B customers log in and see the store with their conditions; consumers notice nothing. Exactly the “wholesale in the same store” model.
Whether Plus pays off is an honest calculation: the plan costs a multiple of the standard tiers. If you already have meaningful B2B revenue or are concretely building it, this is by far the cleanest solution. If you have three trade customers so far, you are paying for a lot of infrastructure nobody uses yet.
The pragmatic route: standard plans plus an app
Below Plus, B2B can be assembled from built-ins and apps. The basic pattern: trade customers get a customer tag, a B2B app shows tagged customers their own prices, hides the store behind a login, or locks certain products for guests. Minimum quantities and volume tiers are handled by the app as well; orders on invoice run as a manual payment method.
This works, but it has limits worth knowing in advance. The price display in such apps sometimes relies on detours like duplicate variants, which complicates inventory and ERP integration. The checkout remains the B2C checkout – payment terms and company logic feel bolted on rather than built in. And every additional app is another monthly fee and another dependency. For a manageable set of resellers it is still often the sensible entry: start small, move to Plus when B2B revenue carries it.
The alternative: a separate B2B store
Sometimes “in the same store” is not even the right goal. If assortment, language, and presentation for resellers differ sharply from the consumer business – pallets instead of single units, technical data sheets instead of lifestyle photos – a second, pure B2B store can be clearer: fully behind a login, its own prices, its own content, no compromises for consumers.
The price is double maintenance: two themes, two product catalogs, two places for every price change. Without an integration that feeds both stores from the same inventory system, this quickly becomes a source of errors. Our advice: separate stores only when the two businesses genuinely differ in substance – not as a workaround for pricing logic.
VAT in B2B: where it gets specifically European
For sales to business customers in other EU countries, the reverse-charge mechanism applies when a valid VAT ID is on file: the invoice goes out net, and the tax liability shifts to the buyer. Shopify does not validate VAT IDs against the EU’s VIES system on its own – that takes an app or a custom check in the registration flow. Simply charging Austrian VAT to EU resellers means issuing formally incorrect invoices.
Domestically the same care applies: net price display for logged-in business customers, gross for everyone else, and the invoice has to be consistent with both. This is solvable – native B2B supports tax-exclusive catalogs, apps offer net display – but it belongs in the planning phase, not in the fixing phase. Talk the B2B rollout through with your tax advisor beforehand; the questions raised there are cheaper than corrected invoice runs.
How to actually make the call
Three questions sort the options. First: how much B2B revenue is realistic over the next two years? Clearly six figures points to Plus; below that, the app route. Second: how individual are the terms? A uniform reseller discount works with almost anything; customer-specific price lists per product demand catalogs or a custom build. Third: is there an ERP behind it? Then the B2B route has to carry its pricing and customer logic – which rules out some apps.
In practice we support both routes: B2B setups with catalogs and company accounts on Plus, and app-based trade areas on standard plans, each connected to inventory and invoicing. What matters is making the decision deliberately – not through a fifth workaround.
| Criterion | B2B on Shopify Plus | Standard plan + app | Separate B2B store |
|---|---|---|---|
| Price lists & volume tiers | catalogs per customer group | via app, partly through workarounds | fully custom |
| Checkout | B2B logic built in | stays the B2C checkout | own checkout |
| Ordering on invoice | included natively | manual payment method | freely configurable |
| Running costs | Plus plan, a multiple of standard tiers | plan price plus app fees | second store plus double maintenance |
| Makes sense from | meaningful B2B revenue | your first trade customers | clearly separate assortment and presentation |