
One SKU. Consumers find €89 in Google. Trade accounts should see €54 — and only after they have an approved login. Publish the B2B list to everyone and Google indexes €54. Password the whole shop and consumer traffic dies. Shopify login to see B2B prices is the mixed-storefront version: same catalogue, two audiences. Retail never logs in. Wholesale does.
OO - EU B2B & Wholesale lists Wholesale login, Customer tagging, and on Starter Login to see prices. How company price lists work: Custom Pricing applies to the customers or companies you pick. Everyone else keeps the normal storefront price. Company contacts see the list price after they log in, with the theme embed on.
The hide-switch itself is in hide prices until login. This article is the chain around it: tag, wholesale login, retail that still checks out at €89.
Shopify B2B catalogs (three active on Basic/Grow/Advanced, unlimited on Plus, 25 per company location) are a different system. Custom Pricing does not consume those slots. Do not claim this app replaces Shopify Plus B2B.
What stays native:
A guest sees the catalogue price. Search engines do too, unless you overwrite or hide the storefront figure.
A logged-in customer with no tag and no company assignment is still retail.
A theme badge that says “trade” does not change checkout money.
What the app actually wires:
Custom Pricing — fixed B2B amount or a discount, per product or variant, for chosen customers or companies. Free: one active list on the storefront. Starter lifts that cap.
Volume pricing — unit price by quantity. Starter. Same embed family.
Registration forms — apply, you approve, Shopify customer (and optional company) is created. Then they can log in.
Login to see prices — Tax & prices, Starter. Hides what the app would show until there is a session. It does not recalculate.
Customer tagging / wholesale login — listing categories. The tag is how Custom Pricing recognises the group after login.
No session, no match. Session without tag or company assignment: still no match. Embed on and Login to see prices off: a broad list can leak the B2B figure into the HTML for anyone with the URL.
Tag only, no login requirement. You stamp `wholesale` on a customer. Visibility is specific tags. Logged-out traffic stays retail — until an admin preview or an oversized embed. Docs: contacts see the custom price after login. A tag without a session is not a price.
Hide-switch only, no list. After login they still see €89 until Custom Pricing or Volume pricing matches. Hiding is not a discount. Shops treat the Starter toggle as “wholesale mode.” It is not.
Bulk-form visibility instead of the PDP. Logged-in customers hides the grid. Growth. The product-page price keeps running. Retail and untagged B2B both see €89 until Custom Pricing sits on the PDP.
Free plan, “login is included.” Listing 6 Nov 2026: Built for Shopify, 5.0 from 34 reviews. Free — 1 custom pricing rule, 1 registration form + approve/reject, Flow templates; development stores uncapped. Starter $22/month or $220/year (17%): unlimited custom + volume, company blocks, unlimited forms, EU Tax exemption (VIES + logs), tax display, Login to see prices. Growth $37/month or $370/year: + bulk forms, draft checkout, repeat order, RFQ, order limits, wholesale cart. 14-day trial on Starter/Growth. USD.
Login to see prices is not on Free. Do not sell it at $0.
Registration forms: buyer submits wholesale details. You open View registrations. Approve creates or links the Shopify customer. Company: create, assign, or none. After that they can log in. Docs: combine with Login to see prices if prices should stay hidden until then.
Order that survives support tickets:
Build the Custom Pricing list. Visibility: tag `wholesale` or specific companies — not all customers.
Registration block on the apply page. Finish setup. Save the theme.
On Starter, turn Login to see prices on. It shares the app embed with Custom Pricing, Volume pricing, Tax display, Order limits. What is included.
Approve. Actually set the tag or company assignment.
Private window: guest sees retail (or no B2B figure). Pending still no list. Approved tagged account sees €54 on the PDP and in the drawer. Never test as the store owner.
Changing theme does not wipe app config. You still re-enable the embed. Finish setup on the cards.
Tax display (incl/excl) is a different Starter module. Login-to-see does not decide VAT on the label.
Yesterday’s post was products missing from a bulk form — Growth, the grid. This one stays on the product-page price.
Store “Atelierlijn”. Retail €89. Trade €54 after login. Custom Pricing on tag `atelier-b2b`. KvK on the form. Login to see prices on.
Guest on the collection: €89, Add to cart allowed, Google can index. Trade without an account: same €89 plus the apply page. Pending: still no €54. Approved + tagged, logged in: €54 on the PDP, in the drawer, at checkout.
Two failure modes: list too wide, embed on, module off — €54 in the source for a shared URL. Or module on, approved customer, no tag — they log in and still see €89 and conclude “login does nothing.” Login worked. The list did not match.
Volume pricing (breaks at 10 / 50 rolls) is Starter on the same embed. No login, no breaks for that buyer. Bulk forms stay Growth. They do not replace this chain.
Open OO - EU B2B & Wholesale. Starter if you need Login to see prices and more than one list.
Custom Pricing: products, amount, visibility on a tag or company. Embed on.
Registration forms: block, approve, set the tag or company.
Login to see prices on (Starter). Finish setup. Save the theme.
Private window: guest, pending, approved tag. Collection, PDP, drawer.
No `unless customer` in Liquid. No second password shop. No Plus-catalog claim.
Shopify login to see B2B prices is a chain, not a fourth variant option: a list for a tag or company, wholesale login after approval, Starter toggle so guests cannot read the trade figure. Retail keeps the catalogue price. Trade sees €54 only when the account matches.
Wire it in OO - EU B2B & Wholesale. Test as a guest first. Then as the tagged buyer.
Services
Reviews
5/5
Mail: info@onlineorigins.nl
Tel: 073 234 0612
KVK: 89825624
BTW: NL865123639B01
Bruistensingel 500,© 2026 Online Origins