Import what you buy
Bring in every purchase item at once instead of adding them one by one.
What you get
- A CSV import that fills your purchase catalog with items, categories, incumbent suppliers, and contract terms in one pass.
- Optional columns for renewal dates and committed contract pricing, so guardrails and renewals start working immediately.
- A row-level preview before anything commits, so a bad row never silently corrupts your catalog.
Importing your purchase catalog
- Go to Settings → Purchase-catalog import.
- Download the sample CSV if you want a template, or prepare your own with the required columns:
name,category,unit_cost,uom. - Add the optional columns that matter to you:
product_id,pack_qty,monthly_volume,renewal_date,incumbent_supplier,sku_mpn,search_query, plus contract-term columns (contract_supplier,contract_effective_date,contract_end_date,contract_renewal_date,contract_notice_window_days,contract_auto_renewal,contract_committed_unit_price,contract_committed_volume,contract_uom,contract_currency) if you have them. - Upload the file. The preview shows every row before you commit, with any skipped rows and the reason (a missing counterparty, for example) called out.
- Commit the import. New items appear immediately on your purchase catalog; a check will price-check them on the next run, scheduled or manual.
Tips
- Fill in
incumbent_supplieron import if you already know it — it sets the item's primary supplier link, saves you a manual edit per item and lets savings comparisons start from an accurate baseline. An item without a primary supplier has no baseline supplier. - Add
renewal_datefor anything on a recurring agreement so Renewals has something to show from day one. - How many rows you can import in one file is capped by your plan tier — check Settings → Usage if a large file is rejected.
- Re-importing the same
product_idupdates that item rather than duplicating it, so a corrected CSV is safe to re-upload.
Suppliers per item
A purchase item can carry several suppliers, each with its own cost, pack size, SKU, lead time and minimum order. Mark one as primary: the primary supplier's cost is the item's unit cost. Open an item to add suppliers, change the primary or deactivate one. Your plan sets how many suppliers each item can carry.
Importing supplier links
Use a second CSV to add or update the suppliers linked to your purchase items in bulk: the cost, pack size, SKU, lead time and minimum order each supplier quotes. Workspace owners and admins can import supplier links.
- Go to Settings → Purchase-catalog import and choose the Supplier links tab.
- Prepare a file with one row per item and supplier. The required columns are
item_keyandsupplier. The optional columns areunit_cost,pack_qty,uom,supplier_sku,lead_time_days,moq,statusandis_primary, in any order. Other columns are ignored and listed in the preview. - Upload the file. The preview shows how many rows will be added, updated or left unchanged, how many new suppliers will be created, and the first 50 rows, and it calls out each row that needs attention with its reason.
- Commit the import. The suppliers appear on each item right away; open an item to see them.
How the file is read:
item_keyis the product ID of the purchase item, the same value as theproduct_idcolumn of the item import.supplieris the supplier's name. A name that matches a supplier you already have, ignoring capitalization and spacing, reuses it; a new name creates a new supplier. A name that already belongs to a different kind of source, such as a competitor, is refused.- A blank cell leaves the stored value unchanged; it never clears one. To clear a value, edit the supplier on the item.
- Rows are added or updated. A supplier that is not in the file is never removed or deactivated; to stop using one, set its
statustoinactive. - A file with any problem imports nothing: fix the rows the preview lists and upload the file again. Re-uploading the same file is safe, because rows already imported are left unchanged.
statusisactive,observedorinactive. A new link can start with any status. An existing link can go from observed to active or inactive, from active to inactive, and from inactive back to active; every other change is refused.is_primaryisTRUEorFALSE. An item has at most one primary supplier, and that supplier must be active. To change the primary, setis_primarytoTRUEon the new one and the previous primary is demoted. If an item has no primary yet, the first new active supplier for it in the file becomes the primary. You cannot deactivate or unmark the primary while the item has other active suppliers unless the file names a new primary. The primary supplier's cost is the item's unit cost.- Your plan limits how many suppliers each item can carry (inactive ones do not count) and how many suppliers your workspace can have in total; new suppliers in the file count toward that total. A file that would go over either limit is refused with the reason on the row, and nothing is written. An item that is already over its limit, after a plan change for example, can still be updated or have suppliers deactivated, but it cannot gain a supplier.
unit_cost,pack_qtyandmoqare plain numbers above zero, written with a period as the decimal separator and no currency symbols or thousands separators.lead_time_daysis a whole number of days.uomis one of the standard units of measure, the same list as the item import. A file can hold up to 25,000 rows and 5 MB.
Tip: start from an export. Use Export supplier links on your purchase catalog, edit that file and upload it again; rows you did not change are reported as unchanged.
Exporting your catalog
The header of your purchase catalog table offers two CSV exports. Workspace owners and admins can use them.
- Export CSV: downloads your items with the same columns as the item import:
product_id,name,category,unit_cost,uom,pack_qty,monthly_volume,renewal_date,incumbent_supplier(the primary supplier's name),sku_mpn,search_queryand thecontract_*contract-term columns, followed by a read-onlymeasured_monthly_volumecolumn that the import ignores. The file re-imports as it is, so you can edit it and upload it again. An item that has no cost or unit of measure yet is exported as it is and has to be completed before it will import. - Export supplier links: downloads one row per item and supplier in the format of the supplier-links import:
item_key,supplier,unit_cost,pack_qty,uom,supplier_sku,lead_time_days,moq,status,is_primary. The primary supplier comes first for each item. Importing this file back changes nothing.
To copy your catalog into another workspace, import the Export CSV file first, then the supplier-links file.
To keep a spreadsheet from running text as a formula, any text that starts with =, +, - or @ is exported with one leading apostrophe, and the import removes it again, so names such as +12V adapter come back unchanged.
Go further
- Set up suppliers to track — the market side of every comparison a check runs.
- Track contract renewals — what the contract-term columns unlock once imported.
- Set buying guardrails — rules that apply to every item you import.
- Sample data vs your data — see the shape of a populated purchase catalog before you import your own.

