
Retail pays $12.50. The trade account is supposed to pay 10% less on every line in the wholesale sheet. You do not want to type 400 variant prices. You also do not want the public product page to drop to $11.25.
A Shopify bulk order percentage discount is that split. In OO - EU B2B & Wholesale the bulk form setting is *Apply percentage discount*. The cut sits on the original Shopify price, inside that form only. The catalog does not move. When you raise a shop price, the percent follows.
Yesterday was one bulk form per customer group. This post is narrower: one form, one percent, no handwritten price list.
A discount code leaks to anyone who holds it. Compare-at changes how the product page looks. Shopify Plus B2B catalogs are a different product — this app does not claim to replace them.
Workarounds that rot:
A second price per SKU in a spreadsheet, then a CSV. The next catalog increase means another file.
An automatic “Wholesale 10%” that also fires on the collection grid as soon as the customer is tagged.
A flat $11.25 on every line in the form, which you forget when the catalog moves to $13.
None of that is: consumers see Shopify, trade sees 10% off in the form, shop price stays the source of truth.
Bulk forms live on the listing’s Growth plan ($37/month, or $370/year). Free is one custom pricing rule and one registration form. Starter ($22/month) is unlimited custom and volume pricing, EU tax exemption, login-to-see-prices — still no bulk forms. Built for Shopify, 5.0, 34 reviews. USD billing. 14-day trial on the paid plans.
How to apply a percentage discount:
10% off $100 → $90. 25% off $40 → $30.
Open the bulk form → Pricing → *Apply percentage discount* → a number such as `10`.
The app computes per product and per variant.
Save, keep the form enabled, check it as a logged-in buyer.
Rules on that page:
Percentage discounts override fixed pricing.
They do not change Shopify product prices.
The discount applies only inside that bulk order form.
The same percent applies to every product in the form.
How B2B pricing works lists three strategies: individual prices, one fixed price, or a percent off Shopify. Pick one. Stacking inside a single form is how “the numbers look wrong” starts.
The buyer sees the B2B unit price while entering quantities. Checkout is a draft order with that unit price. The regular product page still shows catalog — unless you also run Custom Pricing or volume pricing as a *separate* module on the product page. That is not this percent.
Keep *Validate custom prices on the server* on under Bulk forms → Design & settings. Draft checkout recalculates. The app embed must be on the live theme or the draft-checkout script never loads. Do not also enable *Use draft order logic* in Tax Exempt — that VAT draft path is a different flow.
A percent with no audience rule is a store-wide markdown. Tag visibility (customers with specific tags): logged in, a tag such as `Wholesale` or `B2B`, OR matching. A customer sees one bulk form. Do not reuse a tag across two forms.
Yesterday: two groups, two forms, two tags. Today: group A gets 10% on everything in form A. Group B gets individual prices in form B. Do not share tags.
A collection on the form is the SKU set. A new product in that collection inherits the percent. That is the point of “follows the Shopify price”: you do not edit a cell, but the SKU must be in the set.
Shop “Bolt & Washer”. Consumers pay Shopify. Trade accounts carry `Trade`, and the form sits on a *Wholesale order* page (Bulk Order Page theme block). Pricing: 10%. M8 bolts, pack of 100, $8.00 → $7.20 in the form. M10, $9.50 → $8.55. Variants (pack size) each take 10% off their own Shopify price.
Raise the M8 pack to $8.40 and the form shows $7.56 without a CSV. The consumer collection still shows $8.40. No compare-at theatre.
What fails: the same form also has “fixed price $7 for everything.” The percent wins; the fixed price is dead. Docs: do not stack pricing methods in one form.
A second group `Distributor` at 25%: second form, different tag, own percent. One customer, one form — otherwise they open the wrong sheet and the discount “does not apply.”
Test as the tagged customer. A guest does not see the form. Wrong tag = the other form, or nothing. Docs on a missing discount: no access, product not in the form, or another rule winning.
Growth in OO - EU B2B & Wholesale — bulk forms are not on Free or Starter.
Bulk forms → the form → products or a collection.
Pricing → *Apply percentage discount* → `10` (or the contracted rate). No second method in that form.
Visibility: tags, logged in. No overlap with another form.
Page or product page: theme app block. Embed on. Server validation on.
Log in as trade. Check three SKUs, two variants, then a test draft. A guest tab beside it: catalog price.
This percent is not “extra 5% after 20 units.” Volume pricing is a different module (Starter: unlimited volume pricing on the product page). Keep the form on one strategy.
A Shopify bulk order percentage discount is not a site-wide sale. It is one number on one wholesale sheet, computed from the Shopify price, invisible to anyone who cannot see the form. Fixed pricing in that form yields. The catalog does not change. Catalog edits flow through on their own.
Bulk forms = Growth. One customer, one form. Test with the tag. Set the percent in OO - EU B2B & Wholesale and leave the shop price as the source.
Services
Reviews
5/5
Mail: info@onlineorigins.nl
Tel: 073 234 0612
KVK: 89825624
BTW: NL865123639B01
Bruistensingel 500,© 2026 Online Origins