The four rules that cover most of it
Every Magento migration we have seen comes down to these four adjustments:
Common Scenarios:
- Lowercase headers: name, sku, price and qty are valid values but Shopify's importer expects Title, Variant SKU, Variant Price and Variant Inventory Qty.
- Semicolon images: Magento separates image URLs with semicolons; Shopify wants commas in a single Image Src column.
- Configurable products: the parent record and its simple variants must be joined into parent-child rows.
- Weight and dimensions: Magento exports weight as a string with units; Shopify needs a plain number in Grams.
Fix headers and joins locally
ShopTools renames Magento's lowercase headers, converts semicolon-separated images to commas and flags configurable products that still need joining - in the browser, with no upload.
Features:
- Lowercase header map: name/sku/price/qty renamed to Shopify columns
- Image separator fix: Semicolon-separated paths become comma-separated URLs
- Weight cleanup: Unit strings converted to plain numbers for Grams
The conversion sequence
- Rename name, sku, price and qty to their Shopify equivalents.
- Replace semicolons in the image column with commas.
- Join configurable products with their variants using the SKU linkage.
- Strip units from weight values so Shopify accepts them.
Before and after
- Before: name: Leather Backpack, sku: LB-200, price: 89.00, qty: 12 After: Title: Leather Backpack, Variant SKU: LB-200, Variant Price: 89.00, Variant Inventory Qty: 12
- Before: image: /media/a.jpg;/media/b.jpg (semicolons) After: Image Src: https://store.com/media/a.jpg,https://store.com/media/b.jpg
Who this helps
- Magento merchants modernizing: Move off Magento 1/2 without data loss
- Agencies handling complex migrations: Correct joins for configurable products
Frequently Asked Questions (FAQ)
- Why does Shopify reject my Magento CSV?
- Usually because of lowercase headers (Shopify expects Title case), semicolon-separated images or missing parent-child rows for configurable products.
- Do I need to convert semicolons to commas?
- Yes. Shopify's Image Src column expects comma-separated URLs; Magento exports them with semicolons.
- How do configurable products import?
- They need to become a parent row with variant rows under the same Handle. Importing them flat creates duplicate products.
- Is my data safe?
- Yes - processing happens in your browser, and the output CSV downloads directly to your device.