Shero Support

How can we help?


Dynamic Rule Based Product Relations

One of the special features that exists with Magento Enterprise Edition, is the ability to work with rule based product relations. One example of what you can accomplish with rule based product relations is setting up certain customers with a list of related products that can be viewed on the product page. This comes in handy when you want to target certain customers for special promotions or potential upsells or cross sells. 

If you think that certain products are related in some way and can be of interest to customers viewing/buying a particular product, you can relate these products to the particular product. When a customer goes to the product details page of the product, the related products will be shown in a block in one of the sidebars. Up-sells allow you to offer products that are similar to the one that the customer is viewing but are better and more expensive. For example, as up-sells to a particular television you can offer other bigger in size and a better high definition screen. The products offered as up-sells will be shown on the product details page under the description for the particular product that the customer is viewing. Cross-sells are not shown on the product details pages but they are displayed in a separate block on the shopping cart page. An example of a cross-sell would be if the customer is buying wine glasses, the cross-sell could be a bottle of wine. 

In this tutorial, you will learn how to assign a list of related products for a certain segment of customers by use of what is known as Customer Segments.

Creating The Customer Segment

Customer segments are sets of customers you define based on rules that you can use for special rule based promotions. If you want to target customers based on their sign up date, such as those who signed up today, or those who signed up earlier, you can do that by targeting them with specific customer segments. To create a customer segment, select Customers --> Customer Segments in the navigation at the top of the page:

When you visit the Manage Segments page, click on the orange button titled "Add Segment" which is located on the right side of the page.

You will see the following form. 

  1. Fill out the segment name with a title that will be easily recognizable. 
  2. Assign it to the proper website and set it to "Active" as well as determine which type of customers you assign it to. Your customer options are "Visitors and Registered Customers", "Visitors Only", and "Registered Customers Only". Choose the customer selection that you want this related product rule to apply to
  3. Click "Save". If you need to continue to edit, you can click "Save and continue edit" instead. 
  4. When you save the customer segment you will notice two other options available to you on the left side menu titled: "Conditions" and "Matched Customers". 

Click on the "Conditions" tab and you will see the following form which lets you filter through this group of customers. From here you will receive a list of filters. Choose whichever one best applies. 

In my test customer segment I chose the option "Created At".

This means I can going to target customers who were signed up on 2-2-15 (is 2015-02-02 means the date created at must match this date exactly). The other options available to me were:

At this point I need to create the related product rule now that I have created my customer segment.

Creating The Related Product Rule

  1. The first thing you want to do is find the related product rule option in the 'catalog' sub menu of your admin navigation:

 2. You will see it listed in this sub menu - click on the link and you will see a form that allows you to set up your rule.

3. When this form is filled out, and saved, you will see two tabs on the left side navigation. If you click on "Products To Match" you will see a form that lets you determine the products that apply to this unique rule.

In my test related product rule I chose 'Category' and told it to find a category titled "Visible Category"

4. You can choose the categories by clicking on the first icon next to the text field that has the number 5, in my example. This icon is what allows you to browse through all of the categories on your website.

By making this selection I am stating "Show all customers in my specific customer segment related products (i.e products that share a category of the product they are viewing) from the same category selected in this related product rule.

5. At this point I save the rule and I am done. 

You may notice there is a option on the left side menu called: "Products To Display". Choose this if you want to further filter among products in addition to the rule you already set when you create conditions via the 'Products To Match' section. Here is what the 'Products To Display' options look like if you choose to use them:

How To Test If The New Related Product Rule Works

Important Note: Before you start testing if your product rule works or not, make note of the category you use in your product rule. Then go to your website and find any product in that category. Once you click on a product for that category, you will be able to start testing your related product rule.


I created a test customer account and made sure my account was part of the selected 'customer segment' that is associated with this related product rule. There are two scenarios I need to test and confirm work properly:

1. If I am not logged in I should see the following:

In that example, I am not logged in and, because of this, it is not going to load any related products. This is because the rule I created requires a logged in customer. The reason it requires a logged in customer is it is the only way to tell if that customer belongs in the 'customer segment' I created earlier. Being logged in is the only way to detect any information about that user. If one is logged out, there is no customer data to reference. Therefore, the logged out customer cannot qualify to see the end result of this new product rule and will see a default product page.

2. If I am logged in, and my customer qualifies as part of the 'customer segment' I created for this product rule, I should see the following:

You will see the 'Related Products' section. Thanks to the rule I created, I am now able to target specific customers in specific customer segments, and use those segments when I create multiple rule based product relationships.