Importing your CSV into Shopify
The 5-minute version. Screenshots, not jargon.
Last updated 2026-05-03
1. Download your CSV
After your run finishes, you'll get an email titled "Your catalog is ready." It links to your run page on Storeshift. From there, click Download CSV.
You don't have to download the images separately for Shopify import — the CSV references them by URL on our image CDN, and Shopify pulls them in during import.
2. Open Shopify Admin
Sign in to your Shopify store. From the left sidebar:
- Click Products.
- In the top-right, click the Import button.
A modal pops up with a file picker.
3. Upload the CSV
- Click Choose file (or Add file, depending on your Shopify version) and select the CSV you downloaded.
- The filename will look like
storeshift-run-YYYYMMDD.csv. It's plain UTF-8 with the standard Shopify column headers — no conversion needed. - Leave the "Overwrite products with matching handles" checkbox unchecked if this is a fresh import. Check it if you're re-importing to overwrite a previous run (rare).
- Click Upload and continue.
4. Review the preview
Shopify shows you the first product row and counts how many it'll import. If anything looks off, cancel out and either:
- Re-edit on the Storeshift Review page (free re-export of the CSV after edits).
- Open the CSV in a spreadsheet tool, fix the row, save as CSV, re-upload.
Click Import products when it looks right.
5. Wait for processing
Shopify imports row by row, downloading each image as it goes. For 200 products this takes ~3-5 minutes; for 2,000 products, 30-45 minutes. You'll get an email from Shopify when it finishes, and the import status shows in Settings → Apps and sales channels → CSV Import (Shopify's own log of imports done).
6. Verify a handful
Spot-check 5-10 products in your Products list:
- Title reads cleanly, no truncation, no weird characters.
- Body (description) renders correctly — bullet points, headings, no broken HTML.
- Images all loaded (no "image missing" placeholders). If 1-2 are missing, edit the product and click "Add image" — Shopify retries from the same R2 URL.
- Variants (size, color, etc) all show the right SKUs and prices.
- Inventory matches what eBay had.
7. Set the sales channel
By default, products import as draft. To make them live:
- Select all products (or filter by collection).
- Click More actions → Make available on sales channels.
- Pick which channels (Online Store, TikTok Shop, Google Shopping, etc).
For TikTok Shop specifically, also navigate to TikTok Shop → Catalog Sync and tell it to publish. Storeshift surfaces TikTok policy warnings on the Review page so most catalog issues are sorted before you get this far.
Troubleshooting
"Image failed to download"
Shopify hit a transient error pulling the image. Edit the product, delete the broken image, click "Add image", paste the same URL from the CSV — usually works on retry. If it consistently fails for many products, email us; the R2 URL might have rotated.
"Duplicate handle"
Shopify generates a URL handle from the product title. If two products have nearly identical titles, you'll see this. Either:
- Re-export from the Storeshift Review page after renaming one of the duplicates.
- Edit the CSV to give them different "Handle" values (the column shipped with the file).
"Variant SKU is required"
Some Shopify themes / apps insist on SKUs. Storeshift's CSV uses the eBay item ID as the SKU when the seller didn't set one. If your theme complains, the item ID is fine; just confirm the validation, no edit needed.
The import succeeds but products don't show on the storefront
Products are imported as draft by default. Either:
- Bulk-publish: select all → More actions → Make available.
- Re-import with the CSV's "Status" column set to "active" — Storeshift sets this by default; if you edited the CSV, double-check the column wasn't unintentionally blanked.
Need help?
If you're stuck on any step, email hello@storeshift.app with your run ID and a screenshot. We turn around most import questions in under 4 hours during US business hours.