We needed quantity-break pricing on 20,000 SKUs and a live ERP feed — and we needed it on Shopify, not Magento. Carti made it work on Advanced. We didn't need Plus.
Quantity-break pricing across 20,000+ SKUs with a live Profit4 ERP sync — on Shopify Advanced.
One of the UK's largest fixings retailers. We engineered true quantity-break pricing across 20,000+ SKUs and connected the store to their Profit4 ERP — without the cost or complexity of a Shopify Plus build.
What we built.
In their words.
The problem
Fusion Fixings is one of the UK's largest fixings retailers — screws, bolts, anchors, fasteners, the whole range — selling both to trade buyers and to the public. The catalogue runs to more than 20,000 SKUs. The pricing model is what most Shopify stores would consider a special case: every product needs quantity-break pricing, where the unit price drops as the order quantity rises. Buy 50 of one screw and it's one price; buy 500 and it's another.
On top of that, the business runs on Profit4 — a UK-built wholesale ERP that owns the source of truth for inventory, customer pricing, and orders. The storefront couldn't be a brochure that drifted out of sync with the ERP. It needed live pricing, live stock, and orders flowing both ways.
The conventional advice on a store like this is to use Shopify Plus, because Plus is where Shopify puts its B2B features and its more flexible pricing tools. Plus costs $2,300/month minimum and a Plus build runs into six figures. Fusion's question was simpler: can we get this working properly on Shopify Advanced instead?
Why this isn't trivial on Advanced
Out of the box, Shopify Advanced doesn't support quantity-break pricing the way a wholesale catalogue needs it. Variants give you size and colour, not a tiered price-per-unit that scales with cart quantity. And while Shopify has B2B as a native feature on Plus, that's not available below the Plus tier.
The cheap answer is to install one of the dozen apps that promise quantity-break pricing on Advanced. Most of them break at 20,000 SKUs. They store price rules client-side, they slow down product pages, they conflict with discount codes, and they don't talk to an ERP. Fusion had tried that route and run into all of those walls.
The correct answer was to build it properly: theme-level pricing logic, ERP-backed rules, a live feed of price tiers from Profit4, and a checkout that respected all of it.
How we built it
The build had three pillars: the ERP integration, the on-store pricing layer, and the catalogue tooling that kept 20,000 SKUs manageable.
- Profit4 ERP sync. Two-way sync with the Profit4 API. Stock levels, customer-specific pricing, and order data flow live between Shopify and the ERP. Trade buyers see their negotiated prices the moment they log in; public buyers see standard tiered pricing. Orders placed on Shopify land in Profit4 immediately and are processed against live stock.
- Quantity-break pricing engine. Built as a theme-level pricing layer that reads tier definitions from product metafields (populated by the Profit4 sync) and calculates the right unit price in real time as quantity changes in the cart. The math runs server-side via the cart transform API so it survives across the entire checkout, not just the product page.
- Catalogue tooling. 20,000 SKUs is a lot of admin work. We built bulk-edit flows around Shopify's existing tools and a custom dashboard for managing tier rules at category level rather than product-by-product.
Why Shopify Advanced, not Plus
The Plus question came up at the start and we revisited it weekly. Plus would have made the B2B pricing slightly easier — Shopify's native B2B catalogues handle some of what we ended up engineering manually. But Plus also brings a $2,300/month floor and a different fee structure that didn't fit Fusion's margins.
What we built on Advanced does everything Plus would have done for this use case, with one trade-off: more bespoke code lives in the theme. That's a maintenance cost, and we were honest with Fusion about it upfront. The savings on platform fees and the simpler ongoing model made the trade worthwhile.
This is the kind of judgement we make often: Plus is the right answer for some merchants and the wrong answer for others, and the decision should turn on real economics, not on Shopify's sales material. For Fusion, Advanced was correct.
What it looks like to a buyer
A trade buyer logs in. They see their negotiated price on every product, with the quantity-break tiers visible so they know exactly what they'll pay at 50, 100, 500 units. Stock levels are live — they're not committing to an order against ghost inventory. Once they check out, the order lands in Profit4 within seconds and is processed by the warehouse against live stock.
A public buyer sees the standard tiered pricing — the same quantity-break logic, but at retail tiers. They can mix categories, add to cart, and check out the way any DTC Shopify store works. No login required, no different checkout, no friction.
What we learned
The big lesson from this build was about reading the brief carefully. The default move on "big catalogue + B2B pricing + ERP" is to reach for Shopify Plus. That's the playbook, and it's right often enough that nobody questions it. Fusion's situation looked like a Plus build on paper. It wasn't, and pushing back on the default saved them meaningful money and gave them a cleaner long-term position.
The smaller lesson was about the limits of apps in this space. The Shopify App Store has dozens of quantity-break-pricing apps, and at small scale they work. At 20,000 SKUs with an ERP behind them, none of them do — and the team that picks an app and tries to scale it usually ends up rebuilding from scratch a year later. Building it properly the first time is cheaper.
Wrapping up.
[Add a closing quote from Fusion — something on the business impact or what they'd tell another merchant considering the same approach.]
Ready to ship Shopify work faster?
No pitch. A senior Carti dev reviews your store live and sends a 1-page report.