Variants
To send variants to Shopify, there are several rules that must be taken into account:
RULE 01
If the product has no variants, all mandatory information must be configured in the Product tab within the connector.
RULE 02
If both products and variants exist and repeated fields are detected, the values of the variants will prevail.
RULE 03
Each product or variant must have a unique SKU that identifies it. The connector uses the SKU as the main reference to locate products and variants in Shopify. If the connector detects more than one product or variant with the same SKU, unexpected behavior may occur, such as the creation of duplicates or the overwriting of incorrect items.
RULE 04
Each variant of a product must have a value assigned for all defined variant attributes. If any of the attributes has no content, this attribute will not be synchronized for any of the variants involved. And if this attribute without content already exists in Shopify, it will be deleted.

In the following example we are sending the fields Color and Size as variant attributes. Following the rule described above:
- If variant 1 has values in both fields (Color and Size), it is created in Shopify.
- If variant 2 sends only one attribute (Color) and the second has no content (Size), this last one will not be synchronized in Shopify.
- If the attribute already exists in Shopify and it is now sent empty, it will be deleted from Shopify since the data coming from SL will always overwrite what is different in Shopify in order to maintain data integrity.
- Continuing with the same example, if a variant has attributes Color, Size, and Material in Shopify and we are now sending only Color and Size through the connector, the Material attribute will be deleted from Shopify.
Correct synchronization | Incorrect synchronization |
---|---|
Variant 1 Color: blue Size: XL | Variant 1 Color: blue Size: XL |
Variant 2 Color: blue Size: M | Variant 2 Color: blue
|
Field correlation
To be able to synchronize the variants, the minimum required information must be sent through the mandatory fields:
- title: Variant name
- sku: Reference, for the internal control of the connector.
In addition, as mentioned previously in the rules, at least one attribute per variant must be sent (for example, color or size).
Other fields to map in Variants:
- price: price, accepts decimals
- cost_per_item: manufacturing price or similar
- presentment_prices: price per market and currency sent by table-type field. Check its configuration in Shopify Markets.
- taxable: boolean or text.
- true|yes|sí: the product subject to tax (the VAT of this product).
- false|no: the product without tax.
- images: variant image. Shopify only allows one image per variant. If several are sent, only the first one will be associated.
- variant_alt: alt attribute of the variant image. For more information on its configuration, check Media fields and alt attributes.
- requires_shipping: boolean field. Use true for physical product that requires shipping, otherwise use false (no).
- weight_unit: Dropdown menu of weight unit. Allowed units g, kg, lb, oz.
- Previously managed in the grams field. It is maintained in the connector for backward compatibility, but its use is no longer recommended.
- The weight_unit field does not work if the grams field is active.
- It cannot be mapped with the list-type field. If you want to send it from the same one, it is possible to map it as empty in the connector and apply the formula PRINT(“list_type_field”).
- weight: Weight field, supports decimals. Indicate if the product is marked as a physical product (requires_shipping). Appears when the previous box is checked.
- Previously managed in the grams field. It is maintained in the connector for backward compatibility, but its use is no longer recommended.
- The weight field does not work if the grams field is active.
- template_suffix: The product’s theme/template. One of the existing values must be sent and the themes must be created or purchased previously from Online Store -> Themes. Review more details about management here.
- barcode: barcode
- country_code_of_origin: configurable region or country of origin attribute for customs control. Check the list of possible values in the official Shopify documentation.
- province_code_of_origin: Province of origin code according to ISO 3166-2 (example: ES-V, FR-IDF, etc.)
- harmonized_system_code: The trade code of the item, usually 6 digits.
- country_harmonized_system_odes: same behavior as the fields country_code_of_origin and harmonized_system_code. For more information check the Products article.
status: Status field. Check the specific rules in the Status and visibility article.
To manage inventory, the following fields must be taken into account:
- inventory_quantity: Stock, depending on the location
- inventory_policy: Defines whether customers can place orders when the item is out of stock.
- tracked: To track stock (previously inventory_management).
For more details on the configuration of the aforementioned fields, check the Inventory management section.
Sort variants
The connector allows customizing the order of variants by following the steps detailed below:
1 - Add the field to be sorted in the Variants tab within the connector.

2 - Add the sort_order field in the Products tab of the connector.

3 - Insert the PRINT formula according to the way you want to set the order, following the options explained below.
To create the custom order, the formula must follow this syntax:
PRINT(“field: custom|option1|option2”)
Applying it to the previous example where the order is based on the Size field, the final formula would be as follows:
PRINT("Size:custom|S|M|L|XL")
The system will follow the custom order only for the options specified in the formula. Therefore, it is important to add all possible options of the field, to ensure the desired order is applied. Otherwise, any option not included will maintain its original order.
Another option is to use one of the predefined orders, replacing the “order” in the formula PRINT(“field:order”), for example PRINT("Size:asc"):
- alpha-asc: alphabetically ascending (A-Z)
- alpha-desc: alphabetically descending (Z-A)
- best-selling: by best-selling products
- created: by ascending creation date (newest first)
- created-desc: by descending creation date (oldest first)
- price-asc: by ascending price (low to high)
- price-desc: by descending price (high to low)