Skip to content

Upload prices by CSV

Steps for

How it works

Upload a CSV file to set exact prices on a manual price list, or to set specific prices for some products on an automatic price list. For single changes, the Price editor is quicker.

A CSV (comma-separated values) file is a plain spreadsheet format. Any spreadsheet tool can save a sheet as a CSV file, usually from its File menu. In Google Sheets, for example, go to File > Download > Comma Separated Values (.csv).

Uploading prices by CSV

Prepare the file

One row per SKU and price
(this flows forward)

Choose the file

For one price list, or several with Bulk upload
(this flows forward)

Check your upload

See which rows are ready and which will be skipped
(this flows forward)

Import

Signed-in customers see the new prices

Prepare your CSV file

Start from a template:

You can also get a template in the upload window: click Download template.

The simplest file has 2 columns, SKU and Price. It has a header row (the column names), then one row per SKU. Prices are per unit, for example 14.99:

example.csv
sku,price
123-abc,14.99
124-abc,12.99
125-abc,15.99
126-abc,99.99

The template writes the column names as SKU and Price. Column names aren't case-sensitive, so sku and price work too.

Before you upload, check that:

  • The price list exists. If not, create a price list first.
  • Every SKU matches a product SKU in your store exactly, and the product is active.
  • No SKU has spaces before or after it. A space stops the SKU matching. In Excel or Google Sheets, the TRIM function removes them.
  • The header row is the first row, and uses the column names shown below.
  • Prices are numbers only, such as 14.99, with no currency symbol.
  • The file is saved as CSV, not as a spreadsheet file such as .xlsx.

CSV columns

Most uploads need only SKU and Price. Add the other columns for specific features.

ColumnWhat it containsRequired
skuThe product SKU as set up in your eCommerce platform or backend system.Yes
priceThe unit price for the SKU, for example 14.99. Don't include a currency symbol such as $ or £.Yes
qtyThe quantity this price applies from, for quantity pricing. If you use it, every row needs a quantity, and every SKU needs a row with a quantity of 1. An empty cell fails the import. Leave the column out and every price applies from a quantity of 1.No (defaults to 1)
unit_of_measureThe unit the quantity belongs to, such as box or pallet, for unit of measure pricing. Letters and numbers only, with underscores as separators, such as pallet_box.No
price_list_slugThe handle of the price list to update, for bulk uploads.Only for bulk uploads
display_tax_rateThe tax percentage (0 to 100) used to show prices with tax included, for tax-inclusive price display. It applies to the whole SKU on the price list, so use the same rate on every row for a SKU: conflicting rates fail the import. A blank cell leaves the SKU's rate as it is, so you can give it on just one of its rows.No

For example, a file with price breaks, units and display tax rates:

example.csv
sku,price,qty,unit_of_measure,display_tax_rate
ABC-123,10.00,1,each,20
ABC-123,9.00,10,each,20

Upload prices to a price list

  1. Go to Pricing,Price lists (opens in your SparkLayer Dashboard in a new tab) and click Upload next to the price list (or Upload CSV in its ⋯ menu). The Upload prices to window opens, named after the list.
  2. Choose your CSV file, or drop it into the window.
  3. Under Check your upload, check the number of rows ready, and the reasons for any rows that will be skipped (see Skipped rows).
  4. Click Import. The button shows how many prices it imports, for example Import 240 prices.
More detail
  • Importing sets the prices for the SKUs in the file. Everything else on the list stays as it is.
  • To fix a problem first, click Choose another file.
  • If the price list isn't assigned to a customer group yet, assign it so customers can see the prices.

Upload prices to several price lists at once

Use Bulk upload to update several price lists from one CSV file, for example the same products in several currencies.

  1. Find the handle of each price list you want to update. It's shown under the price list's name at Pricing,Price lists (opens in your SparkLayer Dashboard in a new tab), for example Handle: base-uk.

  2. Add a price_list_slug column to your CSV file and enter the handle on each row. You can add as many rows as you need for each price list:

    example.csv
    sku,price,price_list_slug
    123-abc,7.99,base-uk
    123-abc,10.99,base-us
    789-abc,5.99,base-uk
    789-abc,7.99,base-us
  3. At Pricing,Price lists (opens in your SparkLayer Dashboard in a new tab), click Bulk upload at the top of the page. The Bulk upload prices window opens.

  4. Choose your file, check the rows under Check your upload, then click Import.

Under Check your upload, the ready banner shows how many prices go to each list.

Once the prices are imported, assign the price list to a customer group if it isn't already.

Skipped rows

Rows with a problem are skipped, and the rest still import. Check your upload shows your file's name and how many rows are ready, for example "238 of 240 rows ready", and lists each skipped row with a reason.

ReasonWhat to do
No SKUAdd the SKU to the row.
SKU … isn't in your catalogueCheck the SKU exists in your store, matches exactly and the product is active.
Price "…" isn't a number (no currency symbols)Enter the price as a number only, such as 14.99.
No price list with the handle "…"In a bulk upload, check the price_list_slug matches a list's handle exactly.

If you see This file can't be used, the first row doesn't have the right column names. The first row needs SKU and Price (or SKU, Price and price_list_slug for a bulk upload). Click Download template to see the layout, then Try another file.

Update or remove some prices

ToDo this
Update some pricesUpload a CSV file with only the SKUs and prices you want to change. SparkLayer updates those prices and keeps the rest.
Remove one product's priceIn the Price editor, open the variant and click Remove next to the price.
Remove every price from a price listOpen the ⋯ menu next to the price list and click Clear, then Clear prices. On an automatic list, the automatic rule stays.
Download a price list's pricesOpen the ⋯ menu next to the price list and click Download CSV.

A row with a blank price doesn't remove that SKU's price. To remove a price, use the Price editor, or clear the price list.

Troubleshooting

Next steps

Was this page helpful?

Last updated