Plenty of stores buy the same product from two or three distributors - whoever has it in stock this week, whoever gets you to free shipping, and then price. Stockroom lets you record all of them against an item, each with their own part number, case size and minimum, and shows you what each one last charged you.
Add a supplier to an item
Open a product and find the Supplier ordering section. Under Other suppliers for this item, click Add a supplier, pick one from your supplier list, and fill in whatever applies:
Supplier SKU - their part number for this item. It prints on the purchase order you send them, and it is what their order sheet matches on when you import one. You can also set it straight from a purchase order line - see Editing a supplier SKU while you order below.
Pack size and Pack name - how many units they ship together, and what they call it. The "3 cases of 4" breakdown on a purchase order comes from here.
Minimum order - the fewest units they will sell you of this item.
Every field is optional. Naming a supplier and leaving the rest blank is still worth doing - it records that they carry the item, which is what the rest of this article builds on.
The values at the top of the Supplier ordering section are your fallback, used for any supplier without a row of their own. A supplier's row wins field by field - so a distributor who only sells the case can sit at a pack size of 12 while the item itself stays at 1.
Already keep supplier part numbers on a Shopify metafield? Link it once under Settings > Data & sync > Linked metafields and Stockroom fills that fallback supplier SKU straight from your catalog - on products, purchase orders, PDFs and labels, with no re-entry. Values sync when you link and then automatically as your catalog updates, usually within seconds; a variant's own metafield value wins over its product's. While linked, the metafield owns the default - editing it in Stockroom saves back to the metafield - and per-supplier rows like the ones above still win on that supplier's orders. If you later remove the link, every supplier SKU stays in Stockroom as it was. Pack size and minimum order quantity can live on metafields the same way - link each to a whole-number metafield in the same card, and the item's default ordering constraints follow it, with per-supplier rows still winning on that supplier's orders.
What each one last charged
Beside each supplier you will see Last paid $4.50 on 3 Aug, or Not ordered from yet. That comes from your own purchase orders - the most recent one you actually placed with that supplier for that item, after any line discount. Drafts do not count, and freight is not baked in.
What you paid last time is a fact, and it is dated so you can judge how old it is. It sits beside the price list below, and the two never overwrite each other - one is what you actually paid, the other is what the supplier says it costs today.
Keep a supplier's price list
Each supplier can also carry a price list - the prices they publish, kept in their own currency. Open the supplier and switch to the Price list tab to see every item they carry with its list price, or type a price into the List price field on any item's supplier row on the product page.
A price can carry quantity breaks - 1+ at one price, 12+ at another - and a future date: when the supplier announces new prices from the 1st, enter them with that date and the old prices hold until it arrives. You can also drop the supplier's own price list file onto Stockroom and review it row by row - see Fill counts and update costs from supplier documents.
The list is what your purchase orders start from: when an order is in the same currency as the list, every line pre-fills at the list price for its quantity - crossing a quantity break re-prices the line until you type a cost yourself. And when you mark an order as placed with prices that differ from the list, Stockroom offers to update the list, line by line - items not on the list yet are ticked by default, so the list builds itself as you order. Changed prices are unticked by default, because a one-off deal should not overwrite the list unless you say so.
Editing a supplier SKU while you order
You do not have to come back to the product page to fix a part number. On a purchase order, click the note icon at the end of any line and you get a Supplier SKU field, already filled in with whatever is on record for that supplier.
Change it and two things happen: this order prints the code you typed, and the item's record for that supplier is updated so your next order fills it in. The field also works on an order you have already sent - a part number is not a change to what you ordered.
Clearing the field only affects that order. Your saved part number for the supplier stays as it was - the product page is where you remove one.
Ordering against part numbers all day? Turn on a Supplier SKU column instead of opening each line: the Columns button above the items switches it on, and it stays on for your whole store, on drafts and on orders you have already placed. It edits and saves back exactly as the field does.
While you build a purchase order
Add an item to a purchase order and, if another supplier on record last charged less for it in the same currency, the line says so quietly: Distributor B charged $4.20. It is a note, not a warning - nothing moves the line, and nothing tells you to switch.
That is on purpose. Which distributor to use is mostly about who has it in stock today and who gets you to free freight, and those are things you know and we do not. So we give you the one piece we do have - what you paid - and the choice stays yours.
Everything else follows the supplier the order is for: their part number prints on the PDF, their pack size drives the pack breakdown, and importing their order sheet resolves part numbers against them first - the same code on a different supplier's file is not treated as a match. See Creating a purchase order from a CSV file.
When you would rather have the choice made on price, Reorder can group its suggestions by the lowest-cost supplier - see Reorder from the lowest-cost supplier.
Set them in bulk by CSV
For more than a handful of items, use Export CSV and Import CSV on the Inventory page. A supplier column takes a comma-separated list, and supplier_sku, pack_size, pack_unit, min_order_qty and supplier_price line up with it by position (prices use dot decimals - 3.85, never 3,85 - and a cell holding clear removes the item from that supplier's price list):
Distributor A,Distributor B against DA-1001,DB-88 gives each of them their own code.
An empty slot means the item's own fallback value, so ,Distributor A reads as "the default, then Distributor A".
A single value against several suppliers applies to all of them.
Anything else that does not line up fails that row and tells you which, rather than guessing.
A supplier name Stockroom does not recognize is refused, never created, so a typo cannot quietly invent a distributor.
Download a template in the import dialog gives you the columns with an example row already in place. Leave the supplier column out and your file behaves exactly as it always has.
The file also carries a primary_supplier column - the item's primary supplier, by name, one per item. The export shows who is currently pinned, so you can audit the whole catalog in a spreadsheet; on import, naming a supplier makes them the primary (linking them to the item if they were not already), a cell holding clear removes the pin, and an unknown or hidden supplier name fails that row rather than guessing.
Good to know
Removing a supplier from an item removes the row only. Purchase orders you already sent them, and the costs on them, are untouched.
Costs are shown in the currency you paid in. Stockroom never converts one supplier's price into another's currency to compare them - a converted figure is one nobody quoted.
Reorder suggestions use the item's own pack size and minimum, not a particular supplier's, because the suggestion is worked out before you have picked one. The per-supplier values take over on the purchase order itself.
Which supplier a product is grouped under on the Reorder page still comes from your auto-assign rules - the extra suppliers here are alternatives you can see, not a second reorder list. See Suppliers: automatic imports, details, and product rules.
Free freight is set per supplier rather than per item: fill in Free freight over on the supplier and every purchase order for them shows how close the subtotal is.



