Skip to end of metadata
Go to start of metadata


  • This feature must be switched on for your site by Commerce Vision
  • You can also request for variant products to be hidden in search results on your site. (See 'Hide Child Products from Product Search' below).


Product Variants allows you to organise certain products as variants of a single master product for online display and search purposes on your site. Let's use an example to explain the feature, for instance, with a Colour / Size scenario.

Imagine that product CV149 is a High-vis Safety Vest. It's available in several different sizes and colours:

  • 'CV149SMYY' might represent size small, colour yellow
  • 'CV149MDYY' is size medium, colour yellow.
  • In fact, when you list all the possible colour and size combinations, you might have upwards of 20 SKUs just for this one product.

But uploading and maintaining 20+ variations for dozens of products on your site isn't very efficient. The end result would probably overwhelm your customers, too.

That's where Product Variants come in. Instead of putting all 20+ variations on the web, you can display one product (the 'master') online, and then allow your customers to select from available variants (the 'child' products).

Understanding the Master product

Why use Master product? 

It is important to understand the role a Master product plays. Think of the master product as a virtual product - something that is actually not available for sale. As it can't be purchased, it doesn't require a price or availability. Its role is a kind of a 'hero' product with the power to group together variants - those products that can actually be purchased. 

In our example of the High-vis Safety Vest, the style, 'High-vis' may be considered what the 'hero' hinges on since it would play a key part in the customer's decision to buy. And this 'High-vis Safety Vest' 'hero' would typically have other properties such as Colour and Size. 

When our 'hero' Master product is created, we want its images to give the customer a visual indication of the colour range this style may have. Displayed also may be other Master properties like size guides and videos that don't force us to apply all of them to each individual child variant. 

Why do you recommend a Master product as a virtual instead of selecting a variant/child to group such related products? 

In our experience, when using a variant product is used as a Master product, it can create problems that requires a lot of re-working. 

Let's say you picked a green vest as your Master. Here are some issues you may face:

  • Product description will be tricky. Can you keep the description generic or specific since the Child variant code is actually also the Master code? Do you write 'Green high-vis vest' or just 'high-vis vest'? 
  • You can't allocate other colour images to its Product Code. If the product comes in green, red and yellow, and you want to display an image that shows the 3 colours, you cannot simply allocate it to the green variant, Master or not. This can cause confusion for the purchaser.
  • The same goes for availability and price. If the green one has a discounted price because it is discontinued, this can mislead customers into thinking that the red and yellow ones are also discounted. 
  • If the green vest does eventually disappear, product descriptions, images, documents, etc will have to be moved to another variant you now select as the Master.
  • And finally, let's say there is a shortage of green vests. You cannot easily take it offline and sell only the red or blue ones, because the green is the hero. Not without taking the red and blue ones offline with it.

What if we currently don't have a virtual Master product? 

We recommend that you create a Master as a non-depleting stock item for a group of variant products in your ERP system. 
As a suggestion, you can always mark it for identification purposes. For instance, some of our customers have found it useful to start Master product codes with the character 'Z' - i.e. "ZPOLOSHIRT". When they search for it in their ERP system, it is easily locatable at the bottom of the list, and 'Z' tells them this is a virtual product. 

1. Configure Product Variant Settings

This guide will step you through the process of maintaining variants online via the CMS. First, you'll want to ensure the Product Variant feature is configured correctly for your site. 

  1. In the CMS, navigate to Settings → Feature Management.  

  2. In Products & Categories → Product Variants, ensure it is toggled on and click Configure.

  3. Switch the Product Variant Mode to 'Online'. 

  4. Configure the Shared Variant Options settings. With the exception of (e), these settings are shared with Subscription Products that have Master/Child relationships. Changing a setting here or in Subscription Products settings will automatically apply to both features.

    1. Default Display Type: When a Master subscription product has more than one purchasing option, each variant with its values will be offered in the Master Product's page on your website. Select whether the default for displaying selectable values will be a dropdown list or radio buttons.   

      Click here to see an example...

    2. Allow Display Type Override at Variant Value: toggle ON to allow the default display type to be selected individually when each Variant is being configured. 
    3. Add to Cart Mode: select either Master or Child. This determines whether the Master or Child product's Code is used when a Child product is added to the cart. If Master is used, the Child product will be added as a note in the order line. 
    4. Allow Product Matrix Mode: select whether to allow individual products to be set to matrix display mode, using the Product Variant Grid Widget. Default: OFF. 
    5. Allow Display Type Override: select whether to allow the default display type to be overridden on a product-by-product basis. Default: OFF. NOTE - if this setting and 'Allow Display Type Override at Variant Value' are both enabled, the latter will be used.
    6. Allow Child Products As Note Line: select whether to allow child products to be added without a product code. If enabled, the selected variants are added as notes against the master product on the order. Default: OFF. 
    7. Enforce Stock Security for Variants: select whether to allow stock security settings for each child product to apply. Default: OFF. 
    8. Update Master Products With Child Images: select whether to add child images to the master product gallery automatically, so that as the User selects different options, the image will change to reflect them. Default: OFF. (See our guide on Automatic image tagging for variants for further details.
    9. Allow Manual Sort of Products Attributes: select to allow the User to sequence child products by drag-and-drop. Default: OFF.
    10. Enforce Tag Order Comparison: Toggle ON/OFF as required.

  5. Click Save.

The Product Variant feature has now been configured and is ready to use during product maintenance. 

2. Edit Site-Wide Variants (optional)

The CMS stores a site-wide list of Variants (for example, 'Size') and their associated Values ('Small', 'Medium', 'Large') in a table. This lookup table is referenced when you add a child product to a master. 

You can enter new variants and values directly on the Product Maintenance screen when you're setting up products, so this step is not mandatory. New variant/values entered in the Product Maintenance page will automatically be added to the list here, but you may need to come here to edit or correct existing options.

  1. In the CMS, navigate to Settings → Feature Management → Products & Categories

  2. Configure the Product Variant feature. 

  3. Hover over the Options button and select Edit Variants

    Don't see an 'Options' button? Check that the Product Variant Mode is set to 'Online', then click Save.

  4. Click Add and enter a Variant in the input field. In our example we'll add 'Size' as a variant.

  5. Click Save. You'll notice the button updates from 'Save' to 'Values'. 

  6. Click Values and then Add to add a value. Our example values for 'Size' are 'Small', 'Medium', and 'Large'.

  7. Click Save and repeat to add another value. Continue until all values have been entered. 

  8. Click Back to exit values maintenance and return to your Variant list.
  9. You can repeat this process for any other Variants you may require, such as Colour, Capacity, Weight, Length, and so on. 

If you are running version 4.13.00 or later, you can configure your CMS to enable repositioning of your master product variants by dragging each variant in the order you want in the list. Refer to the

Manually Sort the Product Variants in CMS knowledge base article.

3. Add Child Products (Variants) to Master Products

Now let's set up some variants to a Master product!

  1. In the CMS, navigate to Products & Categories → Product Maintenance

  2. Search for the required product and click Edit

  3. At the bottom of the maintenance page, you'll find a section labelled 'Master Product'.  


  4. Toggle On Is Master Product on. The Child Products section with additional maintenance fields will appear.

  5. If Allow Display Type Override is enabled but Allow Display Type Override at Variant Value is disabled, the Display As dropdown appears. This allows the default variant values display mode to be overridden for just this product. NOTE - if Allow Display Type Override at Variant Value is enabled, the default display mode can be overridden for each variant when the first child product is added.  

  6. In the Child Products panel, add the Child Products. You can either link another product by searching and selecting it in the Product Search field, or leave this blank and just add Variant values. NOTE - if you're just using Variant values, the Master Product code will always be used for pricing and Allow Child Products As Note Line must be enabled in Feature Settings.

    The first Child Product

    The attributes of the first Child Product entered will determine how all other Child products have to be entered.

    • If the first Child product is another product, then all other products must be a linked product and not just certain product variant values. 
    • All other Child products must follow the variants used for the first Child product.  

  7. From the Variant dropdown, select the variant name.

  8. If Allow Display Type Override at Variant Value is enabled, then the Display As dropdown appears. This allows you to override the default display mode for this variant by selecting another mode if required. 

  9. In Variant Value, select a value or type in a new one for this Child product. The dropdown list will be populated with values in the lookup table and those previously entered here. 


  10. If there is another variant and value applicable to this Child Product, enter it in the next line, repeating steps 7 -9. 

  11. If there is a third variant required, click the Add Variant button. 

  12. Once all variants have been entered, click Add Child Product

  13. If a Child Product is to be the default variant displayed in the Product List and Master Product Details page, select its Set as Default Child button.

  14. REMEMBER to save any work done to the Master Product section. Click Save at the top of the maintenance page. 

The child product(s) will now be listed below in 'Show Existing Child Product Attributes', along with options to make it active/inactive, remove it or set it as the default child product.

When a product is a child, a message appears on the top of its Product Maintenance page, to alert users that the product is a variant. Its Master product(s) are also listed. You can click on the Master Product name to access its Product Maintenance page. 

Make a child product active/inactive

A child product can be marked 'inactive'. This stops website users from seeing it but it remains saved as a child of the Master product. For example, a particular variant might become temporarily unavailable so you do not want your customers to see this variant for the time being.

  1. If you are already in the 'Master Product' section for the Master product, go to step 4 here. Otherwise, navigate to Products & CategoriesProduct Maintenance, find the Master Product and click Edit.

  2.  Scroll down to the 'Master Product' section.

  3. Click Show Existing Child Product Attributes

  4. Toggle OFF Active for that child product. You can toggle this ON at any time to make the Child product 'Active'.   

  5. Click Save at the top of the page.


Remove a Child product from a Master product

Removing a Child product deletes it permanently from the Master product. 

  1. If you are already in the 'Master Product' section for the Master product, go to step 4 here. Otherwise, navigate to Products & CategoriesProduct Maintenance, find the master product and click Edit.

  2.  Scroll down to the 'Master Product' section.

  3. Click Show Existing Child Product Attributes

  4. Click Remove for the Child product.

  5. Click Save at the top of the page. 

Import Product Variants

To perform a bulk upload of product variants data, you can use the import function. 

  1. Navigate to Settings → Feature SettingsProducts & Categories.

  2. Click Configure the Product Variant feature. 

  3. At the top of the page, hover over the Options button, then select Import Variants

  4. If you would like the CSV file template to work with, click Download Example Template. IMPORTANT - the columns included in the template will change depending on options selected in Feature Settings. Ensure the template used matches the Product Variant Settings. 

  5. Paste your data into the spreadsheet, re-entering the master product ('Parent Product Code') once for every variant combination available. 

  6. Save the file somewhere locally as .csv format.

  7. Select your Import Type from the dropdown: 
    a. Override Imported Only - all master products in the spreadsheet will have their variant data replaced with what's in your spreadsheet. No other products will be affected.
    b. Override All Products - the product data in in the spreadsheet will become the COMPLETE product variant data for your site. Current variants not in the spreadsheet will be deleted.

  8. Click 'Select files...' to browse to your saved .csv file.

  9. The import will process and a notification will advise whether the import was successful. If errors occurred, fix the data and try again. 

  10. To verify a successful import, navigate to Product Maintenance and search for one of the master products on your .csv file. 
  11. Check the variant data to ensure it matches up with what you've just imported.

Hide Child Products from Product Searches (optional)

When a site visitor performs a product search on your site, the default option is to list the master product and any child products with their own product codes: 

Another option is to have child products hidden from search results. When this setting is switched on, only the Master product will be listed: 

When this option is active, the following message will appear next to the 'Display Online' toggle in the Product Maintenance page: 

Switch On/Off Hide Child Products from Searches

If you prefer to have child products hidden from search results switched on or off for your site, please contact Commerce Vision

Related help

Additional Information


Minimum Version Requirements



Product Variant needs to be enabled by CV Support

Self Configurable


Business Function

Products & Categories

BPD Only?




Ballpark Hours From CV (if opting for CV to complete self config component)

Contact Commerce Vision

Ballpark Hours From CV (in addition to any self config required)

Contact Commerce Vision

Third Party Costs


CMS Category

 CMS Products & Categories