Understanding the Shopify Template
The information provided is based on Shopify's Help Center articles related to CSV import, available here.
Shopify expects different table compositions and behaviour depending on whether the product is a single product or if there are variants under it.
In both cases, the unique identifier for that product is the Handle
, which is generated from the Product Name
for simple products, and the Parent's Product Name
for variants. Effectively, all variants will hence have the same Title
and Handle
values.
Variant Products will take multiple rows grouped under the same Handle
. The parent's data will determine the Title
and Body (HTML)
, as well as the Images
and other SPU-level fields.
Learn more about Product Variants in Trustana.
Trustana transforms your product information when exporting so it matches their template logic.
Example:
Legend: colouring for highlighting purposes only.
Green shows a variable product with many variant products (one per row)
Light blue shows a simple product.
Product Data Mapping Logic
Header Name | Description | Simple Product | Variable/Variant Product |
Handle | Handles are unique names for each product. They can contain letters, dashes, and numbers, but no spaces, accents, or other characters, including periods. Handles are used in the URL for each product. |
| Parent's |
Title (Mandatory) | The title of your product. |
User mapped
| Parent's
|
Body (HTML) | The description of the product in HTML format. |
| Parent's
|
Vendor | The name of the store as you entered it when you created your Shopify account. | Empty (Shopify auto-assigns) | Empty (Shopify auto-assigns) |
Product Category | A label that describes the type of product and is used to calculate a product's tax rate in the United States. This label must be taken from the predefined standardized list of product categories. | Empty (Shopify auto-assigns from Google Category value) | Empty (Shopify auto-assigns from Google Category value)
|
Type | A label that describes the category of a product. This label doesn't need to conform to any predefined format. | Empty | Empty |
Tags | A comma-separated list of tags used to tag the product. |
Empty | Parent's |
Published | Indicates whether a product is published on your online store. | False | False |
Option1 Name | If a product has an option, then enter its name. For example, Color. | Empty | Parent's |
Option1 Value | If a product has an option, then enter its value. For example, Black. | Empty | Product value for the Tier 1 variation |
Option2 Name | If a product has an option, then enter its name. For example, Size. | Empty | Parent's |
Option2 Value | If a product has a second option, then enter its value. For example, Large. | Empty | Product value for the Tier 2 variation |
Option3 Name | If a product has a third option, then enter its name. | Empty | Parent's |
Option3 Value | If a product has a third option, then enter its value. | Empty | Product value for the Tier 3 variation |
Variant SKU | The SKU of the product or variant. This is used to track inventory with inventory tracking services. |
|
|
Variant Grams | The weight of the product or variant in grams. |
Convert to grams |
Convert to grams |
Variant Inventory Tracker | Include your inventory tracking for this variant or product. | shopify | shopify |
Variant Inventory Qty | The number of items you have in stock of this product or variant |
|
|
Variant Inventory Policy | How to handle orders when the inventory level for this product or variant has reached zero. | deny | deny |
Variant Fulfillment Service | The product or variant fulfilment service used. | manual | manual |
Variant Price | The price of the product or variant. Only include the price and don't include any currency symbols. For example, 9.99. |
No currency conversion. |
No currency conversion. |
Variant Compare At Price | The "Compare-at Price" of the product or variant | Empty | Empty |
Variant Requires Shipping | The option to require shipping. | Empty (Shopify auto-assigns) | Empty (Shopify auto-assigns) |
Variant Taxable | Apply taxes to this variant | Empty (Shopify auto-assigns) | Empty (Shopify auto-assigns) |
Variant Barcode | The barcode, ISBN, or UPC of the product. |
|
|
Image Src | Enter the URL for the product image. |
| Parent's
Variant products are empty. |
Image Position | Enter the number that represents the order in which you want the image to display on the product's page. | 1-25 based on | 1-25 based on Parent's |
Image Alt Text | Alt (alternate) text describes an image and is an important part of a product description. |
or Empty |
or Empty |
Gift Card | Indicates whether the product is a gift card. | false | false |
SEO Title | The SEO Title is found on a product's details page under the Search engine listing preview header in the Page title field. |
or Empty |
or Empty |
SEO Description | The SEO description is also found on a product's details page under the Search engine listing preview header in the Description. |
or Empty |
or Empty |
Google Shopping / Google Product Category | If you currently use a Google product category, then you can use it as your Shopify product category |
|
|
Variant Image | The URL for images of variants. | Empty |
|
Variant Weight Unit | Valid values are g, kg, lb, and oz. | g | g |
Variant Tax Code | Shopify plus only - using Avalara | Empty | Empty |
Cost per item | How much it costs you for the product or variant. |
|
|
Status | Indicates whether a product is available to your customers. |
or draft |
or draft |
Important columns: when products do not have data
Header Name | Mapped Trustana Attribute | Failover Logic |
Handle | Hyphenated | Never exports empty
|
Variant Price |
| 0 |
Variant Inventory Qty |
| 0 |
Image Position |
| Cover = 1 |
Status |
| Draft |
Image Handling
Uploading your images to Trustana generates a unique URL for each image asset. This is then used when exporting to the Shopify template. Shopify then will download the image from the Trustana server and add it to the correct SKU on your Shopify account, making the image import process completely seamless.
The current export version supports:
1-25 image (
Img Src
) per product (it creates one row per image)1 Image (
Variant Image
) per variant product
Shopify Requirements
Format: PNG, JPEG, PSD, TIFF, BMP, GIF, SVG, HEIC, and WebP
Maximum Resolution: 5000 x 5000 px or 25 megapixels. For square product images, a size of 2048 x 2048 px usually looks best
Maximum Size: Under 20 MB
Source: Shopify Help Center
Output File
Filename: Shopify[Currency]-YYYYMMDDHHMMSS.csv
For example, "ShopifySGD-20231226170123.csv"
This will be downloaded to your browser's configured Downloads folder.
What happens next?
Please follow Shopify's Help Center Article on how to import products using a CSV here.
Shopify will send your registered user's email address an email confirming the import's success or indicating what went wrong.
You may look up the error messages on the e-mail with their troubleshooting guide here.
Once successfully imported, please review the product information before publishing it to your storefront, especially if it was not a first-time import. Shopify has a specific way of handling bulk edits from CSV imports, make sure you are aware of their override policy.