What Happens When a Product Sits in Two Shopify B2B Catalogs
You have four groups of trade customers and three B2B catalogs. The arithmetic is not subtle, and the workaround suggests itself: put the same products in more than one catalog, give a company access to two of them, and let the catalogs add up to the pricing you actually sell on.
That works, in the sense that nothing errors. What it does not do is combine. Shopify resolves overlapping catalogs with three specific rules, all of them documented, none of them visible from the catalog screen — and the result is frequently a lower price than you meant to publish, on a product you were not looking at.
Here is exactly what happens, quoted from Shopify's own documentation, and what to do about it.
The three rules that decide the price
Rule one — the lowest price wins. When a buyer can reach the same product through more than one catalog, Shopify's Help Center is explicit:
"your B2B store displays the lowest price for that item, not including quantity rules or volume pricing breaks"
Read the second half of that sentence carefully, because it is the part that surprises people: the comparison that picks the winning catalog is made on the base price. Volume breaks are not considered when deciding which catalog wins.
Rule two — the volume pricing follows the winner. Having chosen a catalog on base price, Shopify then takes the rest of the pricing behaviour from that same catalog:
"quantity rules and volume pricing from the catalog with the lowest price per variant"
So the quantity breaks a buyer sees are not necessarily the ones you attached to the catalog you meant them to buy from. They are the ones attached to whichever catalog happened to win on base price — and, per rule one, it won without its volume breaks being part of the comparison.
Rule three — ties are broken by age. If two catalogs price a product identically:
"If two catalogs have the same lowest price for a product, then the quantity rules and volume pricing from the first catalog that was created are displayed."
Creation order is part of your pricing logic. Nothing in the interface shows it, nothing about the catalog says it, and it cannot be edited — only worked around by deleting and recreating the other catalog, which changes its age and therefore its precedence.
Why this bites harder than it looks: everything resolves per variant
The natural mental model is "this catalog wins for this product". The actual granularity is finer. Rule two says lowest price per variant, and quantity rules are documented as applying at variant level too: "Minimum and maximum quantity rules apply to product variants."
Which means a single product can resolve to different catalogs across its own sizes. Put a jacket in two catalogs, discount the small sizes more heavily in one of them because that is where your slow stock is, and you have built a product whose S and M are priced and quantity-ruled from one catalog while its L and XL come from another. Both are correct according to the rules. Neither is what you designed.
This is also why the failure is so quiet. There is no error, no warning, and no screen that says "this price came from Catalog B". A buyer sees a coherent-looking price. You see the catalogs you built. The disagreement only surfaces in an order total, usually after it has shipped.
How to work out which catalog a price actually came from
When a trade customer reports a price you do not recognise, work in this order. It is quicker than auditing catalogs one at a time, because it follows the same sequence Shopify does.
- List every catalog that customer's company can reach. Not the one you think they buy from — all of them. Overlap is the precondition for every symptom here.
- Compare base prices for the exact variant, not the product. Ignore volume breaks entirely at this step; they are not part of the comparison that picks the winner.
- The lowest base price identifies the source catalog. Its quantity rules and volume breaks are the ones in play, whatever the other catalogs say.
- If two are tied, the older catalog wins. Check creation dates before you start editing prices — a price change that breaks a tie will also silently move which volume breaks apply.
- Re-check every variant of that product. If the sizes are priced differently, they may not all resolve to the same catalog.
What to do instead of stacking
None of this is Shopify going wrong. B2B on Basic, Grow and Advanced arrived at no extra cost, and the documentation is clear that "On Basic, Grow, and Advanced plans, you can assign up to 3 active catalogs across all your B2B markets." Three catalogs with well-defined behaviour is a reasonable thing to ship. The trouble starts when catalogs are used as a substitute for something they were not built to express.
The practical division:
- Catalogs are for genuinely distinct assortments. A different product mix, a different market, a different currency. If the catalogs contain different products, overlap is rare and the rules above never fire.
- Catalogs are a poor way to express a fourth price level. Two catalogs holding the same products at different prices is exactly the shape that triggers lowest-price resolution — you are asking two records to disagree about one number, and Shopify settles it without asking you.
If what you actually have is more price levels than catalog slots, the fix is to put the tiers where tiers belong: on the customer. Tradeleap assigns each wholesale customer a tier, and prices resolve from that — unlimited tiers rather than three, with per-product and per-variant overrides layered on top, applied at checkout by a Shopify Function on any plan. There is no lowest-price race, because there is only ever one answer per customer. It is free while we are in early access.
If you are comfortably inside three catalogs and they hold different assortments, you do not need us. Use what you already have. The moment you find yourself adding a catalog to express a price level, or keeping a spreadsheet of which catalog wins, that is the wall this article is about.
Sources
All quoted behaviour is from Shopify's Help Center, read on 27 September 2026: Creating catalogs for the lowest-price, volume-pricing and tie-breaking rules and the 3-catalog figure, and Quantity rules and volume pricing for the variant-level behaviour.