Shopify product CSV column documentation
This document explains what each of the columns mean in a typical CSV file meant to create or update products in Shopify.
This document is an FAQ for our Shopify app: “PH CSV Import & Inventory Update“.
This document is a work in progress. A lot of column names are going to be missing as I’m working through this. Since there are a ton of Shopify column names, this is going to take a while.
Tip: An easy way to do learn the meanings of each of those column names is to create 2-5 products in Shopify, then use the “Export” CSV function in the app, then you can examine which columns have the values that you put in for each product.
NOTE: if you are trying to troubleshoot errors that come up when you try importing your CSV file, you may want to read through the troubleshooting guide that explains the most common errors that people see.
Product Category
This is also known as the taxonomy of the product.
This category MUST be one of the taxonomies listed in this file:
- ENGLISH: https://ecomapps.programmerhat.com/csv-import/inc/shopify_product_taxonomy.txt
- GERMAN (last updated Feb 2022. It is outdated): https://ecomapps.programmerhat.com/csv-import/inc/taxonomy_de.txt
- TURKISH (last updated Feb 2022. It is outdated): https://ecomapps.programmerhat.com/csv-import/inc/taxonomy_tr.txt
- Please talk to support if you need german or turkish taxonomy to be updated to the July 2024 version.
- Please talk to support if you need taxonomies for other languages.
The most common error related to this column is for the CSV file to have a category/taxonomy that is not found in any of the above files.
Sales Channel
Curiously, this column is not documented in Shopify’s official documentation for each column. This is one of the important reasons we why are creating our own official documentation for each column in a product CSV file.
You use this column to specify which channels you want to publish the product to.
The channel name must be valid. Usually valid names are “Google”, “Youtube”, “Online Store”.
Don’t worry if you get the channel name wrong….the app will throw up an error message with a list of the valid publication names it expected you to use.
Here’s an example CSV file you can use. We use it to test the column: https://ecomapps.programmerhat.com/csv-import/csv/test_channel.csv
We’ve noticed that if the “status” of the product is “active” (and by default it is active), then the “Online Store” channel will always be active. You can make the status of the product “draft” to prevent “Online Store” channel from being automatically added.
Also if you want to have multiple channels for a product, you’d wanna comma-delimit the channels, like this: “Online Store, Google & YouTube”.
Published
This column expects a boolean value — either “true” or “false”.
If “true”, the product will be published to online store sales channel.
If “false”, it won’t be published to online store sales channel.
It is worth nothing that it IS a bit redundant with the “Sales Channel” column.
Track Inventory?
The column name to use is “is variant tracked?“. Possible values in the column are either “true” or “false”. Example CSV file: https://ecomapps.programmerhat.com/csv-import/csv/test_inventory_tracked.csv
Then you should see 1 product’s inventory is tracked, while 1 product’s inventory is not tracked. See screenshot:
Harmonized System code
Example CSV file used to set the “Harmonized System code” for a product:https://ecomapps.programmerhat.com/csv-import/csv/test_hs_code.csv
Metafield Columns (special format required!)
Metafield column name needs to be in a special format: “Metafield: <key>.<name> [type]”. For example: “Metafield: csvapp_namespace.csvapp_key [single_line_text_field]”
Variant Metafield Columns (special format required!)
Here’s an example CSV that creates a metafield on the product with handle “example-hat-1”: https://ecomapps.programmerhat.com/csv-import/csv/metafield_regression.csv
Variant metafield column name needs to be in a special format: “Variant Metafield: <key>.<name> [type]”. For example: “Variant Metafield: csvapp_namespace.csvapp_key [single_line_text_field]”
Here’s an example CSV that creates a variant metafield on the product with title “CSV app – test variant metafield”, and with tag “csv”: https://ecomapps.programmerhat.com/csv-import/csv/test_variant_metafield.csv
images_comma_delimited
NOTE: this is a special column created only for the Shopify app “PH CSV Import & Inventory Update“.
This special column “images_comma_delimited” allows you to list image URLs separated by commas.
The normal columns “image 1”, “image 2”, etc, allow for only one URL.
We did not update the app to auto-separate the “image X” columns by comma due to commas being allowed in URLs. For example, there could be a image URL like “https://example.com/image1,2.jpg”, in which case, splitting by comma would erroneously result in two invalid image URLs of “https://example.com/image1” and “2.jpg”.
Hence the need to create a special column to handle the case where user wants to have multiple image URLs separated by commas.
variant1
NOTE: this is a special column created only for the Shopify app “PH CSV Import & Inventory Update“.
An example usage of this column is if you had a column named “Color”, and one product row has comma-delimited variant names such as “Blue, Red, Green”.
In this case, the app will magically create 3 variants “Blue”, “Red”, “Green” for that product row.
This special column was needed because how Shopify normally wants user to specify variants is totally different from this.
Shopify wants users to create one CSV row for each variant. For 3 variants, that means 3 CSV rows.
This special column allows users to create just one row with variant values (such as “Blue, Red, Green”) for each product.
1 Comment
FAQ for import CSVs into Shopify using "PH CSV Import, CSV Export app" - ProgrammerHat
August 19, 2024[…] Please read our official documentation for each column in a CSV file for creating/updating products. […]