How pricing works
The model behind the grid — one price list, a column per tag, a cell per variant — and the rules that decide which price a buyer actually pays.
Understanding four things will save you most of the debugging you would otherwise do.
One price list, columns for tags
Your store has one price list, created for you on install. It holds every variant in your catalog as a row.
Each row has a column per customer tag you have added, plus an optional Default column. The value in a cell is that tag's pricing for that variant.
Default Wholesale Distributor
Hoodie / Small — 25 18
Hoodie / Large — 27 20
Snowboard — 1:900;12:700 —A cell can hold more than a number. It can carry volume tiers, a case multiple, a loose-unit price and a discount type all at once — see CSV import & export for the full grammar.
An empty cell means no pricing from that tag, not "free" and not "zero".
Discounts, not price changes
Dollarlabs never rewrites your product prices. It creates Shopify discount functions that apply in the cart and at checkout.
What follows from that:
Retail customers cannot see wholesale prices, because the catalog price never changed.
Pricing reaches draft orders, subscriptions and pre-orders.
Your product and collection pages show the normal catalog price until you add the storefront blocks. The blocks are display only — they do not affect what the buyer is charged.
If the price list is disabled, nothing is discounted, regardless of what the grid says.
The lowest price wins
If a customer carries several tags that all have pricing for a variant, they pay the lowest effective price for the quantity in their cart. Not the first tag, not the tag order in the grid.
"Effective" matters when you mix discount types. A Percentage cell and a Specific price cell are both resolved to what the buyer would actually pay at that quantity, and then compared.
The storefront blocks and the checkout use the same resolution, so what a buyer sees on the product page is what they are charged.
Tags with no pricing for a variant are skipped — they never make a price worse.
Quantity decides the tier
When a cell has volume tiers, the tier that applies is chosen by the quantity of that variant in the cart. Tiers are matched on minimum quantity — a tier at 12 applies from 12 units up until the next tier takes over.
If the cell also has a case multiple, quantity does two jobs: it selects the tier and it is checked for validity. See Volume tiers & case multiples, and Progressive case multiples for what happens to leftover units.
Where each thing is configured
The price for one variant and one tag
The cell in the price list grid
Tiers, case multiple, loose pricing, discount type
The cell's settings panel
A tag's checkout discount title, or its payment/delivery rules
Discount combinations, the default titles, the validation message
Whether any of it is live
The status switch on the home page
How prices look on the storefront
Last updated