
A reseller adds 12 bags of coffee. The PDP still shows the single-bag price. Purchasing has “10+ at 8% off” in a spreadsheet. That grid belongs on the product page, only for buyers who should see it, and the unit price must move when quantity crosses a threshold. That search is Shopify quantity breaks on the product page.
It is not a bulk order grid. It is not a company catalog. Docs How quantity breaks work: volume pricing drops the unit price when someone buys more of the same product. Example bands: 1–9, 10–49, 50+. It does not replace a company price list or a bulk order form.
OO - EU B2B & Wholesale renders those breaks as a table, a segment of chips, offer cards, or a timeline. Listing (31 Oct 2026): Built for Shopify, 5.0 from 34 reviews. Free: one custom pricing rule, one registration form. Starter $22/mo or $220/year: unlimited custom + unlimited volume pricing, company blocks, EU tax exemption, tax display, login to see prices. Growth $37/mo or $370/year: bulk forms, quotes, order limits, wholesale cart. 14-day trial on paid plans. USD.
Earlier: bulk form visibility priority. That article is which form a buyer sees. This one is the PDP staffel.
Automatic discounts and native quantity rules follow *how many*, not *who*. A public break leaks to retail. A code `TIER10` lands in a WhatsApp group.
Shopify B2B catalogs hang off Companies and are limited on many plans. Mixed D2C + wholesale shops often use ordinary accounts plus tags. There is no admin switch “show 1–9 / 10–49 only to `wholesale`”.
Typical detours:
HTML table in the description. Cart ignores it. Twelve units still ring up at retail.
A discount code from 10 units. Retail uses it too, or it expires while dealers still plan around it.
A percentage only inside a bulk form. That module is Growth. The regular PDP stays retail until you turn on Volume pricing (Starter). Docs How B2B pricing works: Custom Pricing and Volume pricing are separate modules that can show a B2B price on the product page. The bulk form does not rewrite that page.
None of that is: minima 1 / 10 / 50, fixed unit price or percent, a layout on the PDP, visibility by tag, customer, or company.
Each tier has a minimum quantity and a price:
Fixed price — that unit price from the minimum upward.
Percent off — a cut from the unit price. Rounding: none, nearest, or whatever you set on the form.
Defaults start at 1, 10, and 50. Change the minima. A variant can override the form default when the catalog price should not follow it.
Who sees it: everyone, or tags, specific customers, or companies. Non-matching shoppers never get the breaks.
Plan: Volume pricing is Starter and Growth. Docs Set up volume pricing: a locked card means the shop needs Starter or higher.
Pick a layout on the form, or the default under Volume pricing → Settings:
Table — quantity, unit price, savings columns
Segment — a compact chip bar
Offer cards — full-width offers with price and savings
Timeline — vertical steps that sell “buy more, save more”
Labels can be ranges (`10–49`, then `50+`) or minima (`10+`, `From 10`). Heading defaults to Quantity breaks. Savings as a percent, an amount, or both.
Per-language heading, column names, and savings copy live in volume pricing translations. Shared look (table vs pills vs cards, whether savings show) sits under Settings on the Volume pricing card.
Theme: Volume pricing uses the shared app embed, not a dedicated block like bulk forms. What is included: Custom Pricing, Volume pricing, Tax display, Login to see prices, and Order limits share that embed. After a theme swap, run Finish setup again.
Apps → B2B & Wholesale → B2B pricing.
Turn Volume pricing on. Locked card = wrong plan.
Open volume pricing, create a form.
Pick products or collections.
Tiers: minimum plus fixed unit price or percent.
Visibility + layout.
Save. Form On.
Finish setup: embed on the live theme.
Storefront check: included product, as a customer who matches the rule. Breaks visible. Crossing a tier changes the unit price. Cart line matches.
Nothing on the page? Module on, form On, embed on the published theme, product in the selection, account matches visibility.
Shop “Roast Co-op”. Retail pays the Shopify price for one bag. Tag `wholesale`: 1–9 list, 10–49 at 8% off, 50+ at 12% off. Table layout, range labels. Visibility: customers with tag `wholesale`. No company price list (that is Custom Pricing). No 80-SKU grid (that is a Growth bulk form).
Test in a private window as that tag. Staff login often skips the rule the dealer hits.
Twelve bags: second tier, percent with nearest rounding. Cart follows. One bag as `wholesale`: first tier. Logged-out visitor: no table.
CTA stays OO - EU B2B & Wholesale.
Starter or Growth. Free locks Volume pricing.
One form, one collection, three minima.
Table if buyers think in spreadsheets; segment if the PDP is crowded.
Embed on the live theme.
Test 1, 10, and 50 units as the tagged customer.
Shopify quantity breaks on the product page are volume tiers: unit price down from a minimum, in a table or chips, for people who match the rule. Not a company list. Not a bulk form. Embed on, form On, plan high enough.
Turn the module on in OO - EU B2B & Wholesale. Three tiers, one private window, a cart that matches the band.
Services
Reviews
5/5
Mail: info@onlineorigins.nl
Tel: 073 234 0612
KVK: 89825624
BTW: NL865123639B01
Bruistensingel 500,© 2026 Online Origins