Work

/

About
Play
Blog
Contact
Home/Blog/Shopify
Shopify
•
Updated Oct 10, 2026
•
4 min read

Running a 70,000-Product Shopify Store on Seven Suppliers: Stock, Pricing and Orders

Running a 70,000-Product Shopify Store on Seven Suppliers: Stock, Pricing and Orders
MS
Muhammad Saad

Shopify engineer. I build storefronts, two published Shopify apps, and the infrastructure behind a 70,000+ product store, and I write here about what that work teaches me.

Follow on LinkedInSee my workBook a call
Found this useful? Share it.

Keep reading

Catalog import acceptance workflow: define scope, reconcile results, approve release
Shopify
•
6 min read

Shopify Product Imports: What to Check Before You Approve

Before approving a Shopify product import, check your descriptions, variants, images and unfinished items with this practical checklist for store owners.

Oct 16, 2026
Supplier and warehouse stock reconciliation organized into owners, snapshots, and discrepancy review
Shopify
•
7 min read

Shopify Stock Reconciliation: Suppliers and Your Warehouse

Reconcile Shopify supplier availability with your own warehouse stock using location ownership, inventory states, and a practical discrepancy review worksheet.

Oct 15, 2026
Inventory integration brief organized into supplier samples, ownership rules, and acceptance evidence
Shopify
•
6 min read

Shopify Inventory Integration: A Developer Brief

Prepare a Shopify inventory integration brief with supplier samples, stock ownership, acceptance criteria, and support responsibilities before hiring a developer.

Oct 13, 2026
Back to the blog

© 2026 Muhammad Saad • Colophon

Connect with me on LinkedIn

Elsewhere

  • Github
  • Testimonials
  • CV
  • LinkedIn

Contact

  • Contact details
  • Book a call
  • Email
  • Privacy policy
  • Editorial policy
On this page
  1. Seven Suppliers, Three Kinds of Feed
  2. Import as a Plan, Not a Blind Upload
  3. Hold Bad Feeds Instead of Zeroing Stock
  4. Price From a Floor, Not From a Guess
  5. Order From Whoever Can Actually Fill It
  6. Guard Every Live Write
  7. Where to Start

A Shopify store with tens of thousands of products from several suppliers is an operations problem first and a storefront problem second. These are the patterns behind the platform I built for a 70,000+ product beauty store sourcing from seven suppliers.

Quick answer

Match supplier rows to store products by barcode, turn every change into a reviewable plan before it touches Shopify, hold bad feeds instead of zeroing stock, price from a cost-based floor, and route orders to whichever supplier can actually fill them. Guard every live write.

Seven Suppliers, Three Kinds of Feed

Real supplier data is messy. Of the seven suppliers here, three send automated feeds and four still send spreadsheets. Each uses its own column names, price formats and stock conventions. The first job is a shared normalisation step, so everything downstream sees one shape of data. Clean supplier data also pays off in large-catalog SEO.

Import as a Plan, Not a Blind Upload

A sync downloads the supplier feed, normalises it and matches every barcode against the live store, without writing anything. Only then does a reviewable plan appear: which products are new, which changed, and which are ready to publish. My supplier barcode and GTIN matching checklist explains how I would review leading zeros, ambiguous variants, and packaging conflicts before accepting a match.

Products with no usable images are parked instead of published so operators can review them before they reach the storefront. Splitting that queue by supplier makes it finishable; at one point 1,354 new arrivals were waiting on images across five suppliers. The missing-image review and publishing workflow explains how to take those arrivals from a hold to a reviewed listing.

Before approving an importer for routine use, follow the catalog import acceptance checklist to reconcile source rows, protected fields, held arrivals, and interrupted runs.

Hold Bad Feeds Instead of Zeroing Stock

The most dangerous day is when a supplier sends a short or broken file. A naive sync reads "these products are missing" and sets thousands of items to zero stock. A feed-health check compares the feed with what is expected and holds removals when something looks wrong, then flags it for a person to review.

My supplier feed acceptance and release checklist explains how to separate missing rows from explicit zeros, give holds a review deadline, and rebuild a current inventory plan before release.

Price From a Floor, Not From a Guess

  • Resolve the real supplier cost for each product and compute a cost-based minimum price.
  • Use competitor research to suggest a price just under the cheapest market listing, but only when it still clears the floor.
  • Flag listings where the market sits at twice your own minimum. That usually means bad data, not an opportunity.
  • Run a floor audit that only ever raises prices that fell below the minimum. One run checked 70,418 variants and found 24 priced under the floor.

My cost-floor repricing checklist separates missing-cost holds, floor-only repairs, and competitor proposals, with checks before an approved plan changes live prices.

Order From Whoever Can Actually Fill It

Orders, whether paid, cash on delivery or bank transfer, are queued, re-checked against live Shopify data, grouped into dispatch windows and sent to suppliers as consolidated purchase orders once a batch clears the supplier's minimum. The hard case is an order line whose supplier sold out after the customer paid. The system looks for the same product at another supplier instead of cancelling.

Least-cost sourcing works the same way. When two or more suppliers carry a product, it moves to the cheaper one only if the saving is at least 2%, and the delivery estimate shown to customers is updated to match.

Guard Every Live Write

Safety layers that let automation run on a live store
GuardWhat it prevents
Dry run firstImport, stock sync, dispatch and repricing all produce a plan before any live write
Typed confirmationsSpending money needs a typed word such as DISPATCH or PRICE, not one click
Double write flagsLive writes need both DRY_RUN=false and a specific ALLOW_*_WRITES flag
Paced background jobsBulk writes of 1,000+ items run in workers instead of hitting rate limits
Audit logs and ledgersInterrupted jobs resume instead of duplicating orders or writes

All of it runs on one Ubuntu server behind nginx, as more than ten systemd services and timers. You do not need a big cloud bill to run a big catalog; you need careful operations.

Where to Start

Before commissioning a similar system, use my supplier sync app-versus-custom decision worksheet to test whether an existing tool can enforce your operating rules.

If your team spends its week on supplier spreadsheets and stock fixes, start with the dry-run plan and the feed-health hold. They give the team a review point before supplier data changes live inventory. The BC Supply Ops case study shows the full platform, and you can book a call if you want something similar for your store.

For implementation help, review my Shopify supplier automation services. Bring your store URL, supplier count and the systems that currently own stock and pricing; those details define the first review.