The CSV tools let you create or update listings in bulk using a spreadsheet instead of entering each one by hand. You can export your current listings, build a file from a template, or import new data.
The tools on the Products page
You will find three options on the Products page:
- Import: upload a CSV file to create or update listings.
- Export: download the listings you select as a CSV.
- Download the CSV template: a starter file with the column headers and a couple of sample rows.
Importing
- Click Import on the Products page.
- Upload your CSV file, or drag and drop it.
- A preview grid shows every row. Errors show in red and warnings show in orange.
- Fix any values right in the grid before you import.
- Click to import. Larger files finish in the background, and you get an email when they are done.
A few things to know:
- The file must be a CSV. Save your spreadsheet as CSV before uploading.
- The first row must hold your column headers.
- Any single row error rejects the whole file. Warnings do not block the import.
- Only one import can run at a time.
What each column means
sku
A unique code that matches a row to an existing listing. Leave it blank and one is generated for you.
title
The listing name. If blank, it defaults to the SKU.
description
Listing details. Optional.
tags
Optional labels, for example: lps, sps, soft.
status
One of published, unpublished, archived, or deleted. Defaults to published.
bidStart
When the auction opens. Use the format YYYY-MM-DD HH:mm:ss or MM/DD/YYYY.
bidEnd
When the auction closes. Defaults to one week after bidStart.
startBidAmount
The opening bid, in dollars.
minIncrementAmount
The smallest allowed bid increase, in dollars.
reservePrice
The lowest price you will accept. Leave it blank for no reserve.
price
The Buy Now price. If left blank, it defaults to 1 dollar above your reserve price.
image
The full image URL, starting with http:// or https://. To add more than one image, use the same SKU on separate rows.
overwriteExisting
Controls whether an update is applied. It is not part of exports, so you add this column yourself.
How the overwriteExisting flag works
When you import a row whose SKU matches something already in your account:
- A brand new listing is always created, so the flag does not matter.
- For an existing listing, a value of TRUE, true, 1, or yes updates it.
- For an existing listing, a blank cell or FALSE skips the row.
One important exception: a listing that has already sold, meaning it is part of a paid order, is never overwritten, even with overwriteExisting set to TRUE.
Exporting
- Check the boxes next to the listings you want.
- Click Export, and the CSV downloads to your computer.
- The export uses the same columns as import, minus overwriteExisting.
- Dates appear in your account time zone. If a listing has several images, the export puts them all in one image cell, separated by commas.
- Importing works the other way around: it reads one image per row. So if you export a listing that has several images and want to import it back, split those images into separate rows that share the same SKU first.
A common workflow is to export your listings, edit them in a spreadsheet, set overwriteExisting to TRUE, and import the changes back.
Good to know
- Prices are always in dollars, for example 25.50 dollars, never in cents.
- Blank cells fall back to their defaults.
- All dates and times use your account time zone.
- Keep your SKUs stable. Because matching is by SKU, changing a SKU makes the importer treat the row as a brand new listing.
- Your import results arrive by email with the status of each row: created, updated, skipped, or error.