Below are two classes that can be added to any Sitecore commerce plugin that will enable promotions that are applied based on the tags or templates assigned to the product.

The tagging example provides a very flexible way of applying a promotion.

These two classes enable the following two business scenarios :-

  1. I would like to apply a promotion to all products and or product variants that have the following tag applied…
  2. I would like to apply a promotion to all products that implement a specific Sitecore item template…

Both examples set the price to X dollars i.e. a set amount but the code can easily be modified to enable percentage or set amount off the existing price.

To enable to functionality follow these steps :-

  1. Create new classes named based on the example code in your new plugin or one of the existing sample plugins such as “Sitecore.Commerce.Plugin.AdventureWorks”.
  2. Copy the code below over the new classes.

Your project should look something like this…

tag pricing 1.png

The new functionality will automatically become available in the promotions user interface as they implement the correct interfaces.

Go to the pricing and promotions manager and create a new promotion, you should see the new options in the benefits drop down list.

Note : You will need to apply the tags to the variant not the product if you are using variants.

A promotion that enabled the business scenario outlined above should look like this…

tag pricing 2.png

The tag example…

The Item template (product definition)…