Note: Product variations require a separate licence, charges apply.
To enable this tick the following two setting in Site Settings > Ecommerce > Variations & Sage > 

Enable Product Variations & Enforce unique product codes


Product Variations are used in a number of different ways in the system:


The underlying purpose is to ensure that all  the combinations of a product's options have unique product codes which are used as a key identifier for synchronisation and integration. In addition, stock levels and costs are also stored at the variation code level. 


Stock Levels 

Stock levels are automatically calculated from the variation level upwards so stock updates should ONLY take place on the variation record where they are in use. 


You can view stock levels for all products in Exports > Product Variations (either all products or just products with variations) or via your integrated warehousing system instead.



For example, if you have product option groups for colours and sizes you could set up variations for each individual combination of size and colour which is in effect its own product, and then hold a product code/stock/cost against each of these combinations e.g. red size 10, red size 12 etc. Each combination is called a product variation.


Changing the Display Of Product Options In Site Settings


You can simplify the display of product options and variations on the product page so that some option fields are hidden where they need to be filled in on the variation record instead.


Tick to enable this in Site Settings > Ecommerce > Hide Product Option Fields Used In Variations  (This hides some option fields that need to be entered on variations instead)


This is how it will then look in the product > options tab:



Price & weight are calculated from each product option that forms the combination.


Examples of how this works with stock control

Stock is held for the 3 different situations that exist for products:

  1. Products with no options - same as now.
  2. Products with only one option group - variations and options will be the same value but you use variations to change stock qty and it gets displayed in options.
  3. Products with multiple option groups - this one needs getting your head round because we have all possible combinations of the different groups to contend with.


1. Products with no options



Hint: When options/variations are in use a message appears to direct you to the options tab to view stock


2. Products with only one option group


3. Products with multiple option groups


*store them below in the variation matrix.


The options are acting as a way on the front end to prevent selling items that aren't in stock. Variations are holding the actual stock quantity against all possible combinations resulting in unique parts each of which requires a unique product code and against which we  update stock qty. 


Using Product Addons

If you have options that are actually products that can be sold separately - these will be better set up as addon products.


Stock Reporting For Products With Variations

To get your stock qty's when using variations you will use the product variations export to see stock levels.


Product Variations & Product Bundles/Bill Of Materials (BOMs)

Variations are used when setting up product bundles and BOMs if the bundle uses component's with options.
Read more about product bundles / BOMs


Product Variations & Integration Into Accounting Systems & Multi Store

Product Variations must be entered for integrations with accounting systems such as Sage and Multi Store management for any product that has options, even if it's a single option group. You can also hold a matching product code used in the Accounting system in the Previous Codes field for continuity of reporting using the Afinitis BI tool.


Entering Product Variations

You set these up in Product Manager > Edit Product after you first enter your options, from which variations are created.

Alternatively you can use the export/import facility described below.


Product Variation Export / Import

To save time creating and populating variations from your options, you can export your data via Export Manager> Product Variation, update it and then re-import it via the Import System.


The export creates an 'option codes' column of all combinations which can guide you in filling out the product code in the 'variation code' column plus you can enter stock and costs for each variation.


The export can provide either variation combinations (i.e. only products that have product options) or all products (whether they have product options or not). Once completed you can import the data back in via the Import System (product variations).


You can also choose to export a trade group price column - this is used if you wish to import this data into a 3rd party system like Unleashed.


Important note: After importing the data back in, if you want to make additional updates you will need to re-export a fresh file. Do not use the same CSV as before as it might cause duplicate variations to be added.


Product Issues Report 

You can run this in Report to find products that have issues relating to:


  • Duplicate Codes
    Normally you will be using unique product codes and this will identify any products with the same code.
    If you have deleted a product and then re-used the same code, go into the deleted product and append the product code with -DEL to make it different e.g. ABC1234 > ABC1234-DEL

  • Duplicate Variation Codes
    Amend all duplicate codes, you should only have unique variation codes.

  • Product Options Without Variations
    You need to add variations to these to make sure the product can go into Tradebox on an order.

  • Product Variations Without Options
    You need to delete these variations if there are no longer any options on the product.
    If there are missing options, you need to add them to match the variations you still wish to 

Tip: If you are looking to get a list of products with options and group prices combined in one report use the Product Prices (New / columns mode) report via Admin > Reports