Skip to main content

Bulk Upload a Vendor's Product List

How to add or update many of a vendor's products at once, including monthly price updates, from a spreadsheet or the vendor's Products export.

Written by Souha Alameddine

You can add or update many of a vendor's products at once from a spreadsheet, instead of entering each product one at a time. This creates or updates the specific products that vendor sells you: SKU, pack size, price, tax rate and order guides.

Bulk upload is scoped to one vendor at a time, and it's available to nutrition directors and other district-level accounts with full pantry access.

Quick answer

  • Start from a vendor's Products tab. The template, the export and the upload all live there, scoped to that one vendor.

  • Updating prices? Export, edit, upload. The Products export uploads straight back in. Change the prices in it and upload it, no template needed.

  • Every product must already exist in your Pantry. Bulk upload records what a vendor sells and at what price; it doesn't create new pantry items. A row that can't be matched to an existing item shows as an error instead.

  • Nothing saves until you confirm. Gaia checks the file first and shows you what's new, changed, unchanged, or an error.

1. Get the template or export your current products

Open the vendor's page and go to its Products tab.

  • To update products you already have (a monthly price list, for example), click Export CSV. The export has every column the upload needs, including Gaia Code, pack size, order guides and tax rate, already filled in.

  • To add new products, download the import template. Its Pack Size Unit and Packaging Unit columns have dropdowns with the units in your district.

If your vendor sends a price list in their own format, see Use AI to Get a Vendor's Product List Ready for Bulk Upload.

2. Fill in & upload the file

Each row is one product this vendor sells. Include:

  • Gaia Code: the pantry item this product belongs to. This is the most reliable way to match a row, and it works for items with no manufacturer, like fresh produce. You'll find it in the Products export and in the Pantry export.

  • Manufacturer and Manufacturer Code: only needed when Gaia Code is blank. Both must match the pantry item exactly. See How rows are matched below.

  • Vendor Code: the vendor's own product or item number.

  • Pack Size Amount, Pack Size Unit and Packaging Unit: required on every row, even if you're only updating the price. Packaging Unit is what you order in, usually a case. Pack Size Amount and Pack Size Unit are what's inside one, for example 6 #10 can. Use unit names from the template's dropdowns.

  • Price: the price for one Packaging Unit, for example the case price.

  • Order Guides (optional): leave it blank to keep a product on the order guides it's already on. If you fill it in, the product ends up on exactly the guides you list, separated by commas, using the guide names as they appear in Gaia.

  • Tax Rate (optional): a plain number, for example 9.5. Leave it blank to keep the current rate.

Type values into the cells, don't use formulas. A cell with a formula doesn't read correctly on upload. If your file has a Vendor Name column, every row has to be for this vendor; a row for a different vendor shows as an error.

From the same Products tab, upload your filled-in file. Both .xlsx and .csv work.

How pack sizes are saved

Each vendor product uses one of its item's packagings, for example "case = 6 #10 can." When you upload a row:

  • If the item already has that packaging at that size, Gaia uses it.

  • If the item doesn't have that packaging yet, Gaia creates it, just for that item.

  • If the item already has a packaging with the same name at a different size, the row isn't saved. Gaia tells you which size is already there. Use a different Packaging Unit name for the new size, for example "case of 4 #10 cans."

Once a vendor product uses a packaging, that packaging's size is locked, so the vendor's other products and your past orders stay correct. If a vendor changes its pack size, give the new size its own packaging.

3. Review the preview

Gaia previews the file before anything saves. Rows land in one of four groups:

  • New: products this file will add for this vendor.

  • Changed: products this file will update, for example a new price or pack size. The preview shows the old and new value for each change.

  • Unchanged: products that matched with nothing different.

  • Error: rows Gaia can't read or can't match to an existing pantry item, for example a Gaia Code that isn't in your district, a Gaia Code and manufacturer that point to different items, or a unit name Gaia doesn't recognize. These are skipped rather than creating a new item on your behalf.

If you're only updating prices, almost everything should be under Changed or Unchanged. A product you expected under Changed that shows under New usually means its Vendor Code in the file doesn't exactly match the one in Gaia, for example an extra space or a typo. Confirming would add a second product instead of updating the first, so cancel, fix the Vendor Code (or clear it on that row), and upload again.

4. Confirm or Cancel

When the preview looks right, confirm to apply it. Rows that errored aren't saved; fix those in your file and upload again.

Upload another file takes you straight back to the upload, and Close returns you to the Pantry.

5. How rows are matched

Matching happens in two steps.

First, every row has to resolve to an active item in your Pantry. If the row has a Gaia Code, Gaia uses it. If Gaia Code is blank, it matches on Manufacturer and Manufacturer Code together, and exactly one item must have that pair. An inactive item counts as not found. A vendor's product always has to attach to a pantry item you already have, so a row that doesn't match one errors rather than creating a new pantry item.

Once a row resolves to a pantry item, Gaia checks whether this vendor already sells you that item. It matches on the Vendor Code first; if that's blank, it uses this vendor's one product for that item. A match updates that product; no match creates a new one.

If two of this vendor's products for the same pantry item have the same Vendor Code, Gaia can't tell which one a row means, so the row is added as a new product. Update those by hand, or remove the duplicate first.

Related Articles

Did this answer your question?