Supplier price lists and order imports
Importing a supplier's CSV price list or order: matching the columns, saved mappings, how rows find your products, price-change alerts and reverting an import.
Most suppliers will send you a spreadsheet: a price list of everything they sell, or a file of an order you placed on their website. Both can be imported against the supplier in Inventory → Purchasing → Suppliers, so their codes and prices sit next to your products and an order you placed elsewhere becomes a purchase order here.
Price list or order — what each one does
| Import | What it changes | What it needs |
|---|---|---|
| Price list | Records the supplier's code, price, barcode, pack size and minimum order against each of your products it matches. Rows that match nothing are kept as supplier items you can link later, or turned into new products if you ask. No stock and no order is created | A column with the supplier's code and a column with the price |
| Order | Creates one draft purchase order for the store you choose, with a line for each row, ready to check and mark as ordered. It does not change the supplier's price list | A column with the supplier's code and a quantity column. A price column is optional |
Step 1: upload the file
Choose the supplier, choose price list or order, and upload the file. Only CSV is accepted, up to 10MB and 20,000 rows. Columns separated by commas, semicolons, tabs or pipes all work, and title lines above the column headings are skipped.
Open it in Excel, choose File → Save As, pick CSV, and upload the CSV. Excel workbooks (.xlsx and .xls) are refused with the same instruction. Google Sheets and Numbers can export CSV too.
Step 2: match the columns
Every supplier names their columns differently, so you tell the import which column is which. It makes a first guess from common headings — Part No, Item Code, Stock Code or SKU for the supplier's code; Price Ex GST, Trade Price, Dealer Price or Wholesale for the price; EAN, UPC or Barcode; RRP; Qty Ordered; Order No — and shows the first rows of the file so you can check it. Change any column that is wrong.
| Field | Used for |
|---|---|
| Supplier SKU | The supplier's own code. Required; a row without one is skipped |
| Cost | The price you pay. Required for a price list, optional for an order |
| Description, Brand | The supplier's name for the item, and the brand used when suggesting a match |
| Barcode (EAN/UPC) | Matching to your products' barcodes. A barcode that fails its check digit is ignored |
| RRP | The recommended retail price, for the optional price update below |
| Pack size, Minimum order | Rounding the quantities suggested when you order from low stock |
| Our SKU, Our barcode | For suppliers whose file carries your codes as well as theirs |
| Quantity, Order number | Order imports only |
You also say whether the prices include GST. A heading such as Price Inc GST or Cost Ex GST sets this for you; otherwise it follows the supplier's own setting. Prices are stored the way your costs are: excluding GST if you are registered for GST, including it if you are not.
Saved mappings
Save the column choices under a name and the next file from that supplier with the same column headings — in any order — is mapped for you. Each supplier keeps its own saved mappings, and they can be renamed or deleted from the supplier.
Step 3: check the preview
Before anything is saved, the import runs as a dry run and shows what it would do: how many rows matched a product, how many need you to choose, how many matched nothing, which rows have problems, and which prices have moved. The first 200 rows are listed with their match. On any row you can pick the product yourself, create a new product from it, or skip it.
- A blank cell never wipes anything: it leaves what is already stored alone.
- If the same supplier code appears twice in a price list, the first line is used and the second is listed as a problem.
- The preview can be applied for 24 hours. Changing the file, the columns or the GST setting after the preview means running it again.
How rows are matched to your products
The import tries these in order and stops at the first that finds a product:
- The supplier's code — a product already linked to this supplier under that code.
- Your SKU, when the file carries it.
- The barcode. A valid EAN or UPC is compared with your products' barcodes, allowing for the leading zeros different systems add. Barcodes are not always unique, so when more than one product has it you are asked to choose.
- A name suggestion — a product whose name is almost the same, from the same brand. This is only ever a suggestion: it is never linked unless you confirm it on that row. Companies with more than 20,000 products get no name suggestions.
Only active products are matched by SKU, barcode or name. A row that matches nothing stays as a supplier item with no product; a later import or your own choice can link it.
What an import never changes
A price list records what the supplier charges, not what your stock cost you, so it never changes the cost of an existing product. Cost only moves when you receive a delivery (or edit it yourself). See Receiving stock.
An import never changes stock levels either, and a new purchase order still starts from the last price you actually paid that supplier.
Updating your selling price from the RRP
If a price list has an RRP column, you can choose, for that one import, to update selling prices from it. Your selling price always includes GST, so an RRP column headed as excluding GST (for example RRP Ex GST) has GST added first; any other RRP column is used as the GST-inclusive shelf price, exactly as it appears in the file. The check step shows each matched product's selling price now and what it becomes, and how many would change. Unless you choose it, selling prices are not touched.
Creating products for rows that match nothing
Rows that match nothing can be turned into new products in one go, in a price list or an order. You choose the category they go in. Each new product takes the row's description as its name, the supplier's price as its starting cost, the RRP (if any) as its selling price, and this supplier as its preferred supplier. Without an RRP (an order confirmation never has one) a new product starts at a $0 selling price, so set its price before you sell it. A supplier code that appears on several rows becomes one product.
- New products count towards your plan's product limit, and one import creates at most 2,000. Rows past either limit are kept without a product (a supplier item, or an unmatched order line), and the result says how many.
- A row with no description cannot become a product.
- Rows with a name suggestion or more than one barcode match are never created automatically — choose on the row.
Importing an order
Choose the store the delivery is coming to. The order number comes from a mapped column, or you can type it in. If a line has no price, it uses the last price you paid that supplier, then their price-list price, then the product's cost, and warns you if none of those exist. An order holds up to 200 lines.
Lines that match nothing are kept on the draft with the supplier's code and description, so nothing on their order is lost. Each one needs a product chosen in the order before the order can be received.
Price-change alerts
When a price list moves the supplier's price for one of your products by 5% or more, or $2 or more, your head-office store gets one notification for that import, naming the first few products. Every change is kept in that supplier's price history, with the price before and after. A product's first price from a supplier is not counted as a change.
Past imports and reverting one
Each supplier lists its applied imports with what they did. Open one to see its price changes, largest first. An import can be reverted:
- supplier items it added are removed;
- supplier prices it changed go back to what they were, unless a later import has changed them since, and its price history is removed;
- if you choose, products it created are deleted — or made inactive if they have already been sold, ordered or moved.
Reverting does not undo selling prices set from the RRP, or codes, descriptions, barcodes, pack sizes and minimum orders it updated on items that already existed. The draft order from an order import is removed by deleting the draft.
Supplier columns in the product import
The inventory CSV in Settings → Data Import also accepts three optional columns: supplier_name, supplier_code and supply_price. The example file and the export include them on plans with supplier imports.
supplier_namefinds the supplier, adding it if it is new. It becomes the product's preferred supplier only if the product has none; otherwise it is saved as another supplier for that product.supplier_codeis that supplier's code for the product. A code the supplier already uses for a different product is not saved, and the row says why.supply_priceis the supplier's price excluding GST, like thecostcolumn. It is recorded as their price, never as your cost.
Blank cells leave what is stored alone. On the Free plan these three columns are ignored and the rest of each row imports as normal.
More than one supplier for a product
A product's edit screen lists all its suppliers: the preferred one and any others you buy it from, each with their code, their price excluding tax, pack size and minimum order. Price-list imports fill this in, and you can add, change or remove a supplier there by hand. Changing a supplier's price there is kept in the price history too, and never changes the product's cost. This list is on every plan.
Who can import
Importing and reverting need purchasing.manage and a supervisor or admin role; managing saved mappings needs purchasing.manage only. One import per supplier can be applied each minute.
Supplier price-list and order imports are included on Growth and Multi Store. Suppliers, purchase orders, receiving and bills stay on every plan. See Plans and pricing.