You are currently viewing the article on an older Shopware version!


The menu item promotions offers you a module with which you can create discount actions for your sales channels. Within this module you can create rules to set up restrictions for the promotions, as well as limit the promotion to a certain time frame.


The discount module shows you an overview of all your currently running or configured promotions.
Within this mask you can a create new promotions or view existing promotions.
By clicking on the symbol to the right of an existing promotion, the context menu opens, which offers you the options to edit or remove the existing promotion.

Create a new discount promotion

To create a new discount action you have to click on the button Create action within the mask.
This opens a new mask where you can now set the basic configuration for a new discount promotion.

The advanced configuration regarding rules and discount definition can be defined in the tabs Conditions and Discounts. These are available as soon as the action has been saved for the first time.


In the sub-tab General you will find all general data about your discount promotion.
You can edit them here and adapt them to your wishes. Name: Here you can give your promotion a name / a description.
Sales channels: Here you can assign the discount promotion to your sales channels.
This allows you to set different promotions for different shops. At least one sales channel must be added in order for the promotion to be redeemed.
Valid from / Valid to: You can use these fields to define whether your promotion should run for a limited time and, if so, from when to when.
Quantity: The Quantity field comes in two versions, both of which allow you to limit the use of this promotion by a maximum redeemable number. One is the total number of redeemable actions and the other is the number of redeemable actions per customer.
Do not combine with: At this point you can add existing promotions that should not be combined with this new discount promotion.

Promotion codes: If you don't want to activate the promotion globally, you can have it activated with a promotion code, which your customers have to enter in order for it to take effect.
You can switch this option to active by clicking on "Use action codes".
General promotioncode: This field indicates what the promotion code for this discount promotion is. If individual codes are to be used, this field is automatically greyed out.
Use individual promotion codes: With individual codes each customer has a unique code to use for this discount promotion. Each code can only be redeemed once. If the button is active, the button "Manage individual action codes" is displayed.
Manage individual promotion codes: This button opens a new window. Here, the individual promotion codes can be created and managed.
Using the text field Pattern, the template can be defined according to which criteria the respective promotion codes should be structured. The variables %s and %d can be used here to use any upper and lower case letter (%s) or digit (%d). The pattern "code-%s%s%d" would thus generate codes as shown in the screenshot below.
The Number field determines how many codes should be generated.
The Save and Generate Codes button then creates the codes accordingly and lists them in a table afterwards. 
The dotted button in the right column of the codes allows you to delete the respective code or to display the customer details of the customer who has redeemed the code.

Please note that you cannot change the Action Codes section after the action has been used in an order for the first time.


The Preconditions sub-tab allows you to apply defined rules from your Rule Builder to limit your discount action based on given conditions.

Here you can specify conditions for your target group, the shopping cart or even the entire order. Within the shopping cart conditions, entire product sets can also be created using product rules and certain set group properties.

Please note that you cannot change the conditions after the promotion has been used in an order for the first time.

Target group:

The configuration of the target group allows you to apply Rule Builder rules to determine which customers of your shop are entitled to benefit from the created promotion.
The customer rules drop down menu lists all existing Rule Builder rules that refer to customers or allows you to define new Rule Builder rules for them.

Using the button Assign individual customer to promotion, you can also define which customers can actually use this action without having defined rules for it in advance. If the button is active, another sub menu is displayed. Here you can use the drop down menu to search for and add customers, who are then listed in the table below and can be removed from there.

Qualified Shopping carts:

In the area of shopping baskets - similar to the target group - Rule Builder rules can also be used to specify conditions that apply to the content of the shopping basket. These can be conditions such as "Goods with a total value of 100 Euro or more are in the shopping cart" or "There are at least 3 products in the shopping cart".
Furthermore, a product set can be specified here, which can consist of different set groups if the button Promote sets of products is activated.

Product sets:
Product sets are a powerful tool for creating complex, product-related conditions that apply to multiple products at once or that require a given combination of products to be in the shopping cart in order to meet these discount conditions.
Concrete examples that can be implemented with the help of product sets or set groups can be found in the Examples section below. 
A set group is defined by four properties.
Mode: Specifies whether the entry in the Value field is based on the number of items in the shopping cart (quantity), the gross price to be achieved by this set group (value (gross)), or the net price (value (net))
Value: Entries made here indicate the number or value of products that must be achieved to fulfill the conditions for this set group.
Sorting: Indicates whether products are assigned to the set group in ascending or descending order, depending on their purchase price.
Product rules: At this point further Rule Builder rules can be applied, which must be fulfilled in order for products to become part of this set group.

The following example illustrates how set groups can be used:

In this example, we use the product rule "T-Shirt" (which ultimately contains a selection of T-shirts - previously defined in the Rule Builder). So as soon as there are three T-shirts (since 3 is defined as value and quantity as mode) in the shopping cart, a set group of these T-shirts is formed. It doesn't matter whether it is the same T-Shirt three times or three different T-Shirts.
If there would be four matching T-shirts in the shopping cart, the three cheapest T-shirts (since they are sorted by "price ascending") will be combined into a set group. The fourth, most expensive T-shirt remains "separated".
If there are six matching T-shirts in the shopping cart, two groups of this set are formed. First the three cheapest and then the three most expensive. For further T-shirts, the same principle would apply.

Qualified orders:

Under Qualified orders it is possible to enter general conditions that must be met by this order in order to be eligible for the discount. A condition could be, for example, the use or exclusion of certain payment or shipping methods.

Currently, there is no clear separation of the Rule Builder rules between the respective condition types (target group, shopping baskets, set groups, qualified orders).
This means, for example, that the condition shopping basket rules actually expects rules that only refer to the shopping basket, such as items in the shopping basket or shopping basket value
Conditions for set groups expect rules that refer directly to products, such as items of the category or items with quantity.
Currently, it is still possible to select rules for the "wrong" condition. For example, product rules for shopping cart conditions or shopping cart rules for set group conditions.
This means that the condition can never be fulfilled and the action can never be triggered.

Links to the conditions:
In order to effectively use the discount functionality of Shopware 6, it is necessary to understand how the respective conditions are linked to each other and to themselves.
Each condition type (target group, shopping baskets, set groups, qualified orders) can consist of one or more conditions. For example, for shopping baskets, there may be the condition "shopping cart worth 100 Euro or more" and the condition "5 or more items in the shopping cart". In this case, it would already be sufficient if one of the conditions is fulfilled in order to consider the shopping cart condition as valid. These conditions are therefore OR-linked to each other.
However, if there are conditions for several types of conditions - for example, one condition for the target group and one for the shopping cart - both must be fulfilled. Condition types are therefore AND-linked.
In summary, every type for which there are conditions must be fulfilled in order for the discount campaign to be redeemable. If there are several conditions for a type, it does not matter which of them is fulfilled.


The sub menu item discounts allows you to determine to what extent a discount is played out here.
You can distinguish between percentage, i.e. proportional, and absolute discounts.
You can enter a value for these here and determine to what they should be applied.

It is possible to run several discounts at the same time via a discount promotion. To add another discount simply click on the button Add discount.

Please note that you cannot change the conditions after the promotion has been used in an order for the first time.

Apply to: Here you can specify on which products the discount should be granted. On the entire shopping cart, on the shipping costs, on the entire product set (i.e. on all existing set groups) or on one of the existing set groups defined in the conditions in the shopping carts section
Apply to range of specific products: You can also have your discount applied to selected products of a specified product rule if you activate this button. This will bring up the additional options Product Rules, Sort by, Apply to and Maximum amount of usages.
Product rules: In this way it is possible to further reduce the discount on certain products. To explain the difference to the product rules in the conditions, the following example: If in the shopping cart conditions the rule is set that there must be black T-shirts in the cart, then the condition is fulfilled as soon as there is a black T-shirt in the cart. This does not mean, however, that the discount only applies to this black T-shirt, but could theoretically be applied to the entire shopping cart.
If you would now apply the discount to selected products in the discount settings and apply the product rule for black T-shirts again here, the discount would really only be granted for black T-shirts, even if there are other items in the shopping cart that are still calculated normally.
Sort by: If there are several products on which a discount can be granted, the products to be discounted are sorted by price in ascending or descending order. This setting becomes more important in combination with the settings Apply to and Maximum amount of usages.
Apply to: If there are several products for which a discount is granted, it can be specified here that, for example, a discount is only granted for every second/third/etc product. The order is determined by the Sort by (price ascending or descending) setting.
Maximum amount of usages: Maximum amount of usages allows you to determine the maximum number of products for which a discount can be granted. For example, if there are six products in the shopping cart but you specify that only five products can be discounted, only these five products will be discounted. The Sort by setting would determine whether these are the five cheapest or most expensive products.
Type: Here it is specified whether the discount should be an absolute discount, a percentage discount or a fixed price or fixed unit price. If you decide on a fixed price or fixed unit price, the price cannot be higher than the non-discount/normal total or unit price.
Value: This field indicates the actual value of the discount. For example, if you enter 20 here, a basic discount of 20 euros would be granted, or a discount of 20% or a fixed (unit) price of 20 euros, depending on the type selected.
Maximum discount: If a percentage discount is specified as the type, the Maximum Discount field is displayed. You can use this field to specify an upper limit for the discount so that the discount percentage cannot exceed the amount specified here.

Common discount examples

In the following, we list the most common discount campaigns using a corresponding example.

Temporary "20% off everything but..."

The aim of this promotion is to grant a time-limited discount on all articles except for a certain range of products.

In the sub-tab General we first assign the name of this discount action, set it active and specify the sales channels for which this action is valid. In the fields Valid from and Valid until we specify the period of the action. Then we save this action for the first time.

Since this action should apply to "all" products, we do not need to specify any conditions in the Preconditions tab. The exception rule for articles that are not to benefit from this promotion will be defined later in the tab Discounts.

In the tab Discounts we apply the discount to the entire shopping cart. The button Apply to specific range of products is set active.
In the drop down field Product rules, which is now available, we click on the item Create new rule.
A new modal opens, which is basically similar to the Rule Builder view. Here we assign an appropriate name for the rule, define the priority and optionally a description.
As a condition we select the option Line item as an example. The operator is none of and then we add all products that we want to exclude from the discount action. Then we save the new rule. More detailed information on how to use the Rule Builder can be found in the corresponding documentation.

Next you need to click on the drop down field Product Rules and this time we select the rule we just created. This way we have ensured that the discount action is applied to all products in the shopping cart except for the products just defined in the rule.
In the Type field we select the percentage option. In the value field we specify the percentage. In our example, this would be 20. If required, the maximum discount value field can be used to set an upper limit for the discounted amount. Then we click Save again to complete the configuration of the discount promotion.

At this point the question could arise why we have included the exception in the product rules for discounts and not as a condition for shopping baskets and/or set groups.
If we had included the same product rule as a condition for the shopping cart, this would mean that the discount action can no longer be triggered once there is even one product in the shopping cart that has been defined as an exception.
So if there were also products in the shopping cart that were actually eligible for discount, they would no longer be eligible for discount either. The exception products would first have to be removed from the shopping cart again, so that the condition is "true" again and the discount campaign is valid.

Promotions with a minimum order value

In this example, we create a discount campaign that can only be triggered when a certain minimum order value is reached. In our example this would be from an amount of 100 Euro or more.
When creating the promotion, we start with filling out the relevant fields such as name, sales channels, promotion period in the General tab, set them active and save them to unlock the Preconditions and Discounts tab.
In order to create a promotion that should only be triggered when a certain minimum order value is reached, it is sufficient to define a shopping cart rule in the qualified shopping carts section of the Preconditions tab.
In the shopping cart rules drop down menu we select the option create new rule to open the Rule Builder Modal.
Here we assign a name for the rule and set its priority.
Depending on your own preferences, two condition types can now be considered for this promotion - the types goods price or cart amount
The former only considers the actual value of all products in the shopping cart. Other items such as shipping costs or discounts (e.g. other discount campaigns, vouchers) or surcharges (e.g. C.O.D. charges) of any kind are not considered. The type shopping cart amount considers the actual total amount including all non-product related items.
Once you have selected the type that suits you, you still select the right operator. In our example this is the greater/equal operator.
We enter 100 as the value here as an example. Then we save the settings to create and apply the rule.
Finally, in the tab discounts, you define the discount that suits you and save the promotion to apply the changes.

Apply discounts in the Storefront

Depending on the discount configuration, it may first be necessary to activate the discount by entering a code.
This is possible in the OffCanvas shopping basket and in the normal shopping basket view by entering the code in the field Enter voucher code (1), then confirming the entry by clicking on the tick button (2).

OffCanvas shopping cart

Shopping cart

After successful entry the discount (1) is listed in the article overview.

OffCanvas shopping cart

Shopping cart

Was this article helpful?