Demos Buy Now

Opencart Product Variation Module

The major benefit of Opencart Product Variation Module is to provide users with multiple choices for product variants like color, size etc. The user is charged according to the product variant which is selected on the product page.

This module allows admin to set multiple variations for a product and the admin may allot different price range for different product variants.

It is always a good option to allow users to select from different combinations of choices. Users seek variety for any type of product. Therefore, keeping the user’s perspective in mind, Opencart’s Product Variation Module may help generate more traffic and increase conversion rates for an online store.


  • Enable\Disable Option tab for the products.
  • Enable\Disable visibility of the Product variations in the front end.
  • SKU for the product variation is created either automatically or manually.
  • Allocate the Reward points for each variation.
  • Admin may manage each product variation separately.
  • Admin may add many product variations and combinations for a single product.
  • Product variation with quantity set as ‘zero’ is disabled in the front end.
  • Customers can view and choose customized Product Variations in the product details page.
  • Customers can buy multiple variations of a single product at the same time.
  • “Product not available!” error shall display if a customer adds an out of stock variation to the cart.
  • The price range is tabulated as per the minimum and maximum price of the product variation.


Installation of Opencart Product Variation Module is easy. Under the module zip, there are 3 folders available, admin, catalog, and ocmod. Upload the admin and catalog folders to root directory of the website.

After uploading the XML file go to Extensions > Modification and click on the refresh field.

In the Admin panel go to System -> Users -> Usergroup and edit ‘Administrator’ group. Select all for both, the Access Permission and Modify Permission, and save it.

Under Extension > Modules, install the Opencart Product Variation module as shown below.

Module Translation

As the Opencart Product Variation Module supports multiple languages so this section will describe how to make the module work in different languages. Please check the following link for language translation

Module Configuration (Admin Management)

After installation, the admin may edit the module configuration under Extensions > Modules > Webkul Product Variation > Edit. 

At the backend, the admin may configure the following:-

  • Status: Admin may Enable or Disable Product Variation Module under the “Status” tab.

  • Show Product Option: Admin may also Enable or Disable Option tab under “Show Product Option”. 

Adding Product Variations

The admin may create variations for a product so that the user may choose from a given set of variations. For example size, color etc.

To add variations for a product one must navigate to Catalog > Products >  Edit > Variation. 

Under the Variation tab, one may add the variations for a product by tapping on the “Add Variation” button.

A pop-up appears which allows the admin to configure product variations for a product. Against the Add a Variation tab, a dropdown list of options appears which may be selected by the admin, as shown in the image below.

Once the variations are created, the admin may set the quantity for the variation, enable or disable the visibility of the variation at the frontend.

The admin may set a specific price for a particular variation, add reward points for the variation, and also set the weight which may be used to tabulate the shipping.

The quantity for the variation must be set by the admin in the Quantity field because if zero quantity is set, then the variation is disabled at the front-end.

The SKU, under ‘Add Variation’ tab displays the variation name. The SKU is auto-generated and is a combination of variation (for instance, large-red ) and the model name of the product. The product variation name may also be updated manually in the SKU section.

Once the variations are created by the end, it may be saved by the admin.

The product variations, once saved by the admin, are automatically added to the Product list. In the image below, you can see that a change in SKU results in a change of Product Name and Model

Front End

On the frontend, the user may search for the required product in the search tab. The product searched by the user is visible on the front end along with its variations, created by the admin.

The user may visit the product page and choose the variations of his choice under “Available Options”.

Here, the Price Range indicates the price under which the product may lie. It is tabulated as per the formula displayed below:-

Price Range = (Product cost + Minimum Variation Cost) to (Product cost + Maximum Variation Cost)


The user may also search for a particular variation in the search tab. A page opens which shall display that particular variation’s product. The user may directly purchase it from there, without having to go through all product variations.

Under “Available Options”, when the user selects the color, the extra charge laid upon that particular color by the admin at the backend is displayed along with the color as shown in the image below.


Adding Variations

The admin may add new variations, even after already creating variations for a particular product. Creating new variations for a product would not affect its existing variations.

These variations may be created by clicking on the Add Variation tab.

The admin may set the quantity, price for the variation, reward points, weight which is required to tabulate the shipping charges after creating the new variations. 

The variations, once created, may be displayed under Catalog>Products. If the admin wishes to edit any variation, he may do so by clicking on the Edit tab against it.

In the image below, one can see the variations added by the user being displayed along with the main product and the existing variations.

The user, as per his choice may select the variation from the list of variations being displayed on the frontend. Once the variation is chosen by the user, he may add the product to the cart and proceed for checkout.

Out of Stock Variations

It is essential for the admin to define some quantity to each product variant at the time of creating it.

If zero quantity for the product variation is set, then it is automatically disabled from the Front-end.

Whenever a user tries to buy an out of stock Product variation, a warning message stating “Product not available!” displays on top of the main product page.

Reward Points

The admin can allocate different reward points to each product variation. The admin can set these points while creating the variations. The product reward points may be calculated as:

Product Cost (Reward Point) = Actual Product Reward Points + Reward Point Overhead 


The user can fill in the billing and delivery details. The user can also select the delivery and payment method to process the order.

Under Confirm Order tab, the user can view the order details for the product that is purchased by the user like product name, model, quantity, price and total amount as shown in the image.After the order is confirmed, a success message would display and the user can also view the order history, under My Account as shown in the image below.



That’s all for Opencart Product Variation Module. If you have any issue, please create a support ticket at –

For further queries and customization discussions, please send an email to


Current Product Version -

Supported Framework Version - 2.0.x.x, 2.2.x.x, 2.3.x.x, 3.x.x.x

. . .

Comments (2)

Add Your Comment

  • Bunch
    Hello, does the product variation SKU override the main SKU?
    This is because I would need the SKU for shipstation which fetches the SKU data from website
    • abhishek oberoi
      Hello Bunch
      In our module, for each product variation a new individual product is created. The SKU for the main product will remain the same and new SKU will be generated automatically for each variation.

      Still, if you have any query or requirement feel free to raise a ticket at –


  • css.php