The Rule Builder included in Shopware 6 allows you to create individual rules based on conditions, which can be used, for instance, to calculate shipping costs or customer-specific product prices.

By accessing the menu item **Settings** > **Shop** > **Rule Builder** you will receive an overview of all rules that have already been created. The overview is divided into several columns that immediately show you the following information:

**Name (1)**Contains the name stored for the rule. For instance this name is used in the administration for assigning the rule in other modules**Description (2)**Shows the (optional) description of the rule, including more information about the use of the rule, if applicable.**Priority (3)**The priority indicates whether a rule is applied before another rule, if relevant. The higher the priority, the sooner it is executed.**Creation date (4)**The rule was created on this date.**Status (4)**Indicates whether the rule is valid, only valid rules can be used. Rules created through the administration are checked for validity and can only be saved if all mandatory fields are filled with valid values.

In this section we explain how to create rules and which conditions and operators you can use.

At the end you will also find various examples of common scenarios that you can use as a foundation for your own rules.

A rule consists of at least one **condition**, but can also contain several conditions which are connected by an **AND / OR** - link. Furthermore it's possible to add a **subcondition**.

When creating the condition, depending on the condition you select, various operators are available to define the condition in more depth. In order to create a new rule, click on the button **Create rule**.

Afterwards the following mask opens.

In the general settings of the rule you specify a **name **and set the **priority **of the rule.

With the priority you can define which rule should be executed first if there are several existing rules. These will be processed based on there priority. (A rule with priority 5 is executed before a rule with priority 3, but after a rule with priority 9)

Additionally, you can store a description text. For instance this could explain what this rule is used for.

This description is only displayed in administration and is not visible in the frontend.

You can specify the **type **of rule to make this rule available only in certain program modules, e.g. for shipping costs.

You can then save your settings via the **Save** button and, if necessary, create a duplicate of the rule directly via **Save and duplicate**.

Most conditions are defined in more detail using additional operators.

The available operators vary between conditions and not all options are available for every condition.

The functions of each operator is explained below.

**At least one**

The conditions applies if one stored value match.**All**

The conditions applies if all stored values match.**Is Equal to**

The condition applies if the stored value is equal to the value entered.**Is not Equal to**

The condition applies if the stored value is not equal to the value entered.**Is one of**

The condition applies if one of the stored values matches the specification.**Is none of**

The condition applies if none of the stored values match the specification.**Is greater than**

The condition is met if the corresponding value is greater than the value defined here.**Is greater than / equal to**

The condition is met if the corresponding value is equal to or greater than the value defined here.**Is less than**

The condition is met if the corresponding value is less than the value defined here..**Is lower than / equal to**

The condition is met if the corresponding value is equal to or smaller than the value defined here.

The following conditions are available

You can use the operators "*Is one of*" or "*Is none of*" for the billing country condition.

Example: Canadeda

*Is one of*

The condition is met if Canada is specified as the billing country.*Is none of*

This condition applies if a billing country other than Canada has been selected.*Is empty*

The condition is fulfilled if there is no billing country.

For the zip code of the delivery address you can first select whether it should be numeric or alphanumeric.

For alphanumeric zip codes you can use the operators "Is one of", "Is none of" and "Is empty". For numeric zip codes you can use the operators "Greater than", "Greater than/equal", "Less than" and "Less than/equal".

Example: 48612, 48624, 48683

*Is one of*

This condition applies if the postcode of the billing address is 48612, 48624 or 48683.*Is none of*

This condition applies if the postcode of the billing address is not 48612, 48624 or 48683.*greater than*

This condition applies if the postcode of the billing address is greater than the choosen postcode.*less than*

This condition applies if the postcode of the billing address is less than the choosen postcode.*greater than/equal*

This condition applies if the postcode of the billing address is greater than or equal the choosen postcode.*less than/equal*

This condition applies if the postcode of the billing address is less than or equal the choosen postcode.*Is empty*

The condition is fulfilled if there is no billing postal code.

You can use the operators "*Is equal to*" or "*Is not equal to*" for the billing street condition.

Example: Ebbinghoff 10

*Is equal to*

This condition applies if Ebbinghoff 10 is stored as billing street.*Is not equal to*

This condition applies if Ebbinghoff 10 is not stored as billing street.*Is empty*

The condition is fulfilled if there is no billing street.

You can use this to check whether it is a business customer.

You can choose between the options "*Yes*" and "*No*".

Example:

*Yes*

The condition is met if the client is a business customer.*No*

The binding is met if the customer is not a business customer.

With this condition, you can query the customer's e-mail address. The operators available to you are equal and not equal. You can either query exactly one address such as info@shopware.com or use "*" as a placeholder and query address ranges such as *@shopware.com.

Example: info@shopware.com

*Equal*

The condition is valid if the customer email address corresponds to info@shopware.com.*Not Equal*

The condition is not valid if the customer's email address is info@shopware.com.

If you use the customer group as a condition, you can choose between the two extended operators "*Is one of*" and "*Is none of*".

Example: Net price customer group

*Is one of*

The condition is met if the customer is assigned to the net price customer group.*Is none of*

The condition is met if the customer is not assigned to the net price customer group.

Check if the customer is a newsletter recipient. The choices are "Yes" and "No".

With this condition you check whether the customer is currently logged in to the store or not. For example this can be used to offer logged in customers a special shopping experience that is unavailable for customers that are not logged in.

Example:

*Yes*

The condition is met if the current customer is logged in.*No*

The condition is met if the current client is not logged in.

The customer number is available for a precise restriction.

Here you can choose between the operators "*Is one of*" or "*Is none of*".

Example: 12345, 23456

*Is one of*

This condition applies if it is one of the customers with the customer number 12345 or 23456.*Is none of*

This condition applies if the customer does not have one of the customer numbers 12345 or 23456.

In addition to the customer number, you can also check for the customer surname.

You can use one of the options "*Is equal to*" or "*Is not equal to*".

Example: Müller

*Is equal to*

The condition is met if a customer is logged in with the surname Müller.*Is not equal to*

The condition is met if a customer is logged in with a different surname than Müller.*Is empty*

The condition is fulfilled if there is no last name.

If you have created custom fields for customer, you can query their contents here. To do this, first select the custom field Set and the custom field it contains. Then you select Equal or Not equal and the value of the custom field.

Example: Text field and the value "Customer_with_special_properties".

*Is equal to*

The condition is valid if a product has the selected text field with the value "Customer_with_special_properties".*Is not equal to*

The condition is not valid if a product has not filled this custom field or there is another content in it.

The condition deviating shipping addresses refers to a shipping address that differs from the billing address, therefore the options "*Yes*" or "*No*" are available.

The system checks here whether the customer has selected the option "Delivery address differs from billing address".

Example:

Billing address - Sample street 123, 12345 Sample city

Delivery address - Test route 45, 45678 Test location

*Yes*

This condition applies because the billing and delivery address are different*No*

This condition does not apply, as the billing and delivery address are the same.

The Customer Tag condition allows you to check whether a customer is assigned a certain tag (keyword). For this purpose you can use the operators "Is one of" and "Is none of".

Example: Tag "VIP-Customer"

*Is one of*

The condition is fulfilled if the "VIP customer" tag is assigned to the customer.*Is none of*

The condition applies if the keyword "VIP customer" is not assigned to the customer.*Is empty*

The condition is fulfilled if there is no customer tag.

Allows you to check how many days have passed since the customer's last order.

Example: 10

*Is equal to*

The condition is met if exactly 10 days have passed since the last order.*Is greater than*

The condition is met if more than 10 days have passed since the last order.*Is greater than / equal to*

The condition is met if 10 or more days have passed since the last order.*Is less than*

The condition is met if less than 10 days have passed since the last order.*Is lower than / equal to*

The condition is met if 10 days or less have passed since the last order.*Is not equal to*

The condition is met if the days since the last order does not match 10 days.*Is empty*

The condition is fulfilled if there are no last orders.

This option checks whether it is a guest account. You have the operators "Yes" and "No".

This gives you the option to check for new customers as a condition.

The options "*Yes*" and "*No*" are available for this purpose and you can thus, for instance, enable a payment method only for customers who have already ordered once in your shop.

Definition of a new customer:

A customer is declared as a new customer if the date of the first login matches the current date.

*Yes*

This condition is met if the customer is a new customer.*No*

This condition is met if the customer is a returning customer.

Check the number of previous orders of your customer.

Example: 5

*Is equal to*

The condition is met if the customer has placed 5 orders so far..*Is greater than*

The condition is met if the customer has placed more than 5 orders so far.*Is greater than / equal to*

The condition is met if the customer has previously placed 5 or more orders..*Is less than*

The condition is met if the customer has placed less than 5 orders so far.*Is lower than / equal to*

The condition is met if the customer has placed 5 or less orders so far.*Is not equal to*

The condition is met if the customer has placed any number of orders other than 5.

As a condition you can also check for the shipping country.

Here, you use "Is one of" or "Is none of" to define whether the countries deposited are evaluated if they match or if they do not match.

Example: Switzerland, USA

*Is one of*

This condition applies if Switzerland or the USA is selected as the accounting country.*Is none of*

The condition is fulfilled if the shipping country is not Switzerland or USA.*Is empty*

The condition is fulfilled if there is no shipping country.

For alphanumeric zip codes you can use the operators "Is one of", "Is none of" and "Is empty". For numeric zip codes you can use the operators "Greater than", "Greater than/equal", "Less than" and "Less than/equal".

Example: 48612, 48624, 48683

*Is one of*

This condition applies if the postcode of the shipping address is 48612, 48624 or 48683.*Is none of*

This condition applies if the postcode of the shipping address is not 48612, 48624 or 48683.*greater than*

This condition applies if the postcode of the shipping address is greater than the choosen postcode.*less than*

This condition applies if the postcode of the shipping address is less than the choosen postcode.*greater than/equal*

This condition applies if the postcode of the shipping address is greater than or equal the choosen postcode.*less than/equal*

This condition applies if the postcode of the shipping address is less than or equal the choosen postcode.*Is empty*

The condition is fulfilled if there is no shipping postal code.

It is also possible to use the shipping street as a condition.

Here you can choose between the operators "Is equal to" and "Is not equal to".

Example: Ebbinghoff 10

*Is equal to*

The condition applies if Ebbinghoff 10 is deposited as the invoice street.*Is not equal to*

The condition is fulfilled if the invoice street is not Ebbinghoff 10.*Is empty*

The condition is fulfilled if there is no shipping country.

Checks the total amount of done orders of the customer.

*Is equal to*

The condition is met if the total value of the shopping cart is exactly 49.99.*Is greater than*

The condition is met if the total value of the shopping cart is above 49.99.*Is greater than / equal to*

The condition is met if the total value of shopping cart is 49.99 or more.*Is less than*

The condition is met if the total value of the shopping cart is less than 49.99.*Is lower than / equal to*

The condition is met if the total value of the shopping cart is 49.99 or less.*Is not equal to*

The condition is met if the total value of the shopping cart is not 49.99.

Select the currency(ies) to be considered for these conditions.

The currencies which are defined under Settings > Currencies can be selected.

As operator you can choose between "*Is one of*" or "*Is none of*".

Example: Euro, Pound

*Is one of*

The condition is met if euro or pound are used as currency.*Is none of*

This condition is met if neither euro nor pound are selected as currency.

The condition is valid within the set date range.

A distinction is made between the options "*Including timestamp*" and "*Excluding timestamp*".

*Including timestamp:*Both the date and the time are being taken into account.

The condition is valid from 23.05.2019 06:00 until 31.05.2019 22:00.*Excluding timestamp:*Only a start and an end date are selected here.

The condition is valid from 23.05.2019 up to 31.05.2019.

You can use this to check for a weekday.

An exact definition is possible using the operators "*Is equal to*" and "*Is not equal to*".

Example: Wednesday

*Is equal to*

The condition is met if the current weekday is Wednesday.*Is not equal to*

The condition is met if the current weekday is not Wednesday.

You can check the language of your shop wiht the operators "Is one of" and "Is none of".

Select one or more of the existing sales channels here.

Additionally, you can choose between the operators "*Is one of*" or "*Is none of*".

Example: main shop

*Is one of*

This condition only applies if the purchase is made through the main shop.*Is none of*

This condition is applicable if the purchase is not made through the main shop.

With this condition you can check if there is a **Gross** or **Net** price.

Here you define a time period in which the condition applies.

Example: 06:00 - 22:00

- The condition is valid between 06:00 and 22:00.

Item

Using the positions you can check certain products.

You can use the operators "*At least one*", "*All"* and"*Is one of*", "*Is none of*". Multiple selection of products is possible.

Example: Enormous Copper Cubicide

*At least one*

The conditions applies if one stored value match.*All line items*

The conditions applies if all stored values match.*Is one of*

This condition applies to the product 'Enormous Copper Cubicide.*Is none of*

The condition is met if the product "Enormous Copper Cubicide" is not included in the query.

Here you can check whether the available stock of a position still corresponds to a certain value.

Example: 50

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the available stock of an item is exactly 50.*Is greater than*

The condition is met if the available stock of an item is greater than 50.*Is greater than / equal to*

The condition is met if the available stock of an item is greater than or equal to 50*Is less than*

The condition is met if the available stock of an item is less than 50.*Is lower than / equal to*

The condition is met if the available stock of an item is lower than or equal to 50.*Is not equal to*

The condition is met if the available stock of an item is not 50.

Using the operators "*At least one*", "*All*" and "*Is one of*", "*Is none of*" you can check whether a product is assigned to a certain category. The structure of the category tree is taken into account. So if you select a category here, the conditions also apply to the sub categories below.

Example: The category structure is "Catalog #1 > Food > Baked Goods". The product is assigned to the category Baked Goods. In the condition, we will check the category Food.

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is one of*

The condition is met because the category of the product in the category tree is subordinate to the category from the condition.*Is none of*

The condition is not met because there is a relationship with the category.*Is empty*

The condition is fulfilled if there is no linked category in this line item.

Using the operators "*At least one*", "*All*" and "*Is one of*", "*Is none of*" you can check whether a product is assigned to a certain dynamic product group.

Example: The product is assigned to the dynamic product group "small smartphones".

*Is one of*

The condition is met because the dynamic product group includes the product.*Is none of*

The condition is not met because the product is not assigned to the dynmaic product group.*Is empty*

The condition is fulfilled if there is no linked dynamic product group in this line item.

Here you can check whether the stock of a position still corresponds to a certain value.

Example: 50

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the stock of an item is exactly 50.*Is greater than*

The condition is met if the stock of an item is greater than 50.*Is greater than / equal to*

The condition is met if the stock of an item is greater than or equal to 50*Is less than*

The condition is met if the stock of an item is less than 50.*Is lower than / equal to*

The condition is met if the stock of an item is lower than or equal to 50.*Is not equal to*

The condition is met if the stock of an item is not 50.

This allows you to check whether a position is a promoted. To manually promote a product, you can activate product promotion in the product settings.

You can choose between "*At least one*", "*All"* and "*Yes*", "*No*" as operators.

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Yes*

The condition is met if a product is promoted.*No*

The condition is met if there are no promoted products.

You can use this condition to determine if you want to check for new products.

The available operators for this are "*At least one*", "*All*" and "*Yes*", "*No*".

In order for a product to be marked as new, the publication date must be maintained and may not be more than 30 days old.

Example:

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Yes*

The condition is met if at least one of the queried products is declared as new.*No*

The condition is met if no product from the query is considered new.

Using the type of an item you can query whether a product or a discount or surcharge, e.g. in the shopping cart, is available.

You can use "*At least one*", "*All*" and "*Is equal to*", "*Is not equal to*" as operators.

Example: discount / surcharge

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if there is at least one item with a discount or surcharge.*Is not equal to*

The condition is met if there is no item with a discount or surcharge.

Allows you to check the quantity of a specific product in the shopping cart. For this purpose, you select the product that is to be queried. In addition, you then define an operator and the desired quantity.

Example: Product "Sleek Wool Wasabi Fresh" with the quantity 5

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if there are exactly 5 "Sleek Wool Wasabi Fresh" products in the shopping cart.*Is greater than*

The condition is met if there are more than 5 "Sleek Wool Wasabi Fresh" products in the shopping cart.*Is greater than / equal to*

The condition is met if there are 5 or more "Sleek Wool Wasabi Fresh" products in the shopping cart.*Is less than*

The condition is met if there are less than 5 "Sleek Wool Wasabi Fresh" products in the shopping cart.*Is lower than / equal to*

The condition is met if there are 5 or less "Sleek Wool Wasabi Fresh" products in the shopping cart.*Is not equal to*

The condition is met if the shopping cart does not contain the product "Sleek Wool Wasabi Fresh" 5 times.

Example: 5

*Is equal to*

The condition is met if the subtotal is exactly 5.*Is greater than*

The condition is met if the subtotal is greater than 5.*Is greater than / equal to*

The condition is met if the subtotals is 5 or more.*Is less than*

The condition is met if the subtotal is less than 5.*Is lower than / equal to*

The condition is met if the subtotal is 5 or less.*Is not equal to*

The condition is met if the subtotal does not equal 5.

The price of the positions refers to the price of a single product. There are various operators available for the comparison.

Example: 30.00

*Is equal to*

The condition is met if the price of a position is exactly 30.00.*Is greater than*

The condition is met if the price of a position is over 30.00.*Is greater than / equal to*

The condition is met if the price of a position is 30.00 or more.*Is less than*

The condition is met if the price of a position is less than 30.00.*Is lower than / equal to*

The condition is met if the price of a position is 30.00 or less.*Is not equal to*

Here you can check whether a product is marked as a sale. The operators "*At least one*", "*All"* and "*Yes*", "*No*" are available for this purpose.

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Yes*

The condition is met if one of the queried products is marked as on sale.*No*

The condition is met if none of the queried products are marked as on sale.

Here you can check the date of creation. The date of creation refers to the time when the product was first created in the shop.

Example: 01.08.2021 at 12:00 hrs

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the creation date of an item is exactly 01.08.2021 12:00.*Is greater than*

The condition is met if the creation date of an item is later than 01.08.2021 12:00.*Is greater than / equal to*

The condition is met if the creation date of an item is later than or equal to 01.08.2021 12:00.*Is less than*

The condition is met if the creation date of an item is earlier than 01.08.2021 12:00.*Is lower than / equal to*

The condition is met if the creation date of an item is exactlythan or equal to 01.08.2021 12:00.*Is not equal to*

The condition is met if the creation date of an item is not exactly 01.08.2021 12:00.*Is empty*

The condition is met if no creation date of an item is set.

If you have created custom fields for products, you can query their contents here. To do this, first select the custom field Set and the custom field it contains. Then you select Equal or Not equal and the value of the custom field.

Example: Text field and the value "Heavy transport".

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is valid if a product has the selected text field with the value "Heavy transport".*Is not equal to*

The condition is not valid if a product has not filled this custom field or there is another content in it.

With the operators "*Yes*" and "*No*" you can check whether the shopping cart currently contains articles that are marked as free of shipping costs.

*Yes*

The condition is met if there are articles in the shopping cart that are free of shipping costs.*No*

The condition is met if there are no articles in the shopping cart that are free of shipping costs.

There are various operators available to you for checking the height of a product. Note that the height always refers to a single product. A summation does not take place.

Example: 350

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met when a product is exactly 350 in height.*Is greater than*

The condition is fulfilled if a product is higher than 350.*Is greater than / equal to*

The condition is met if a product is 350 or higher.*Is less than*

The condition is met if a product is smaller than 350.*Is lower than / equal to*

The condition is met if a product is 350 or smaller.*Is not equal to*

The condition is met if a product is not 350 high.*Is empty*

The condition is fulfilled if there is no height in this line item.

There are various operators available to you for checking the length of a product. Note that the length always refers to a single product. A summation does not take place.

Example: 475

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if a product is exactly 475 long.*Is greater than*

The condition is met if a product is longer than 475.*Is greater than / equal to*

The condition is met if a product is 475 or longer.*Is less than*

The condition is met if a product is shorter than 475.*Is lower than / equal to*

The condition is met if a product is 475 or shorter.*Is not equal to*

The condition is met if a product is not 475 long.*Is empty*

The condition is fulfilled if there is no length in this line item.

Allows you to use the list price of a product as a condition.

Example: 15

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the list price of a product is exactly 15.*Is greater than*

The condition is met if the list price of a product is higher than 15.*Is greater than / equal to*

The condition is met if the list price of a product is 15 or higher.*Is less than*

The condition is met if the list price of a product is less than 15.*Is lower than / equal to*

The condition is met if the list price of a product is 15 or less.*Is not equal to*

The condition is met if the list price of a product is not 15.

Enables the manufacturer's specification of the products to be reviewed.

Available options are "*Is one of*" and "*Is none of*". These two options allow a multiple selection.

Example: shopware AG

*Is one of*

The condition is met if the manufacturer is shopware AG.*Is none of*

The condition is met if the manufacturer is not shopware AG.*Is empty*

The condition is fulfilled if there is no manufacturer in this product.

Example: 20,00

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the percentage ratio is exactly 20.00.*Is greater than*

The condition is met if the percentage ratio is over 20.00.*Is greater than / equal to*

The condition is met if the percentage ratio is 20.00 or more.*Is less than*

The condition is met if the percentage ratio is less than 20.00.*Is lower than / equal to*

The condition is met if the percentage ratio is 20.00 or less.*Is not equal to*

The condition is fulfilled if the percentage ratio is not 20.00.*Is empty*

The condition is fulfilled if there is no percentage ratio in this line item.

Using the operators "*At least one*", "*All*" and "I*s one of*", "I*s none of*" you can perform checks on product properties.

Example: XL

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is one of*

The condition is met if a product has been assigned the property "XL".*Is none of*

The condition is met if no product has been assigned the property "XL".

With this condition you can check the purchase price of products. The purchase price here refers to the price of a single product. There is no summation.

There are various operators available for the definition.

Example: 20,00

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the purchase price is exactly 20.00.*Is greater than*

The condition is met if the purchase price is over 20.00.*Is greater than / equal to*

The condition is met if the purchase price is 20.00 or more.*Is less than*

The condition is met if the purchase price is less than 20.00.*Is lower than / equal to*

The condition is met if the purchase price is 20.00 or less.*Is not equal to*

The condition is fulfilled if the purchase price is not 20.00.*Is empty*

The condition is fulfilled if there is no purchase price in this line item.

Enables you to query the publication date of the products.

Example: 08-01-2021

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the publication date of an item is exactly 08-01-2021.*Is greater than*

The condition is met if the publication date of an item is later than 08-01-2021.*Is greater than / equal to*

The condition is met if the publication date of an item is later than or equal to 08-01-2021.*Is less than*

The condition is met if the publication date of an item is earlier than 08-01-2021.*Is lower than / equal to*

The condition is met if the publication date of an item is earlier than or equal to 08-01-2021.*Is not equal to*

The condition is met if the publication date of an item is not 08-01-2021.*is empty*

The condition is met if there is no release date.

Here you can check whether a product is assigned to a certain tag. The operators "*At least one*", "*All*" and "*Is one of*", "*Is none of*" are available for configuring the condition. The tags are added in the product management. You can get further information here.

Example: Testtag1

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is one of*

The condition is met if a product is associated with the tag "Testtag1".*Is none of*

The condition is met if a product is not associated with the tag "Testtag1".*Is empty*

The condition is fulfilled if there is no line item tag.

You can check the tax rates of a product using the operators "*At least one*", "*All*" and "*Is one of*", "*Is none of*". Multiple selection is possible. You can select from already created tax rates in the system using the drop down list.

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is one of*

The condition is met if one of the selected tax rates are assigned to a product.*Is none of*

The condition is met if none of the selected tax rates are assigned to a product.

There are various operators available to you for checking the volume of a product. Note that the volume is calculated from length x width x height and that the volume always refers to a single product. A summation does not take place.

Example: 100

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the result of length x width x height of a product is exactly 100.*Is greater than*

The condition is met if the result of length x width x height of a product is greater than 100.*Is greater than / equal to*

The condition is met if the result of length x width x height of a product is exact 100 or more.*Is less than*

The condition is met if the result of length x width x height of a product is less than 100.*Is lower than / equal to*

The condition is met if the result of length x width x height of a product is exact 100 or less.*Is not equal to*

The condition is met if the result of length x width x height of a product is not 100.

There are various operators available to you for checking the weight of a product. Note that the weight always refers to a single product. A summation does not take place.

Example: 5

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the weight of a product is exactly 5.*Is greater than*

The condition is met if product is heavier than 5.*Is greater than / equal to*

The condition is met if the product weights 5 or more.*Is less than*

The condition is met if product is lighter than 5.*Is lower than / equal to*

The condition is met if the product weights 5 or less.*Is not equal to*

The condition is met if the weight of a product is not 5.*Is empty*

The condition is fulfilled if there is no weight in this line item.

To check the width of a product you can use various operators. Note that the width always refers to a single product. There is no summation.

Example: 750

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if a product is exactly 750 wide.*Is greater than*

The condition is met if a product is wider than 750.*Is greater than / equal to*

The condition is met if a product is 750 or wider.*Is less than*

The condition is met if a product is narrower than 750.*Is lower than / equal to*

The condition is met if a product is 750 or narrower.*Is not equal to*

The condition is met if a product is not 750 wide.*Is empty*

The condition is fulfilled if there is no width in this line item

Allows you to check how many items are in the shopping cart.

There are also various options available.

Example: 8

*Is equal to*

The condition is met if there are exactly 8 items in the shopping cart.*Is greater than*

The condition is met if there are more than 8 items in the shopping cart.*Is greater than / equal to*

The condition is met if there are 8 or more items in the shopping cart.*Is less than*

The condition is met if there are less than 8 items in the shopping cart.*Is lower than / equal to*

The condition is met if there are 8 or less items in the shopping cart.*Is not equal to*

The condition is met if the shopping cart does not contain 8 items.

You can check the quantity of distinct products. You also have significantly more extensive additional conditions at your disposal.

Example: 5

*Is equal to*

The condition is met if a quantity is exactly 750 wide.*Is greater than*

The condition is met if the quantity is wider than 750.*Is greater than / equal to*

The condition is met if the quantity is 750 or wider.*Is less than*

The condition is met if the quantity is narrower than 750.*Is lower than / equal to*

The condition is met if the quantity is 750 or narrower.*Is not equal to*

The condition is met if the quantity is not 750 wide.*Is empty*

The condition is fulfilled if there is no the quantity.

Example: 5

*Is equal to*

The condition is met if the subtotal is exactly 5.*Is greater than*

The condition is met if the subtotal is greater than 5.*Is greater than / equal to*

The condition is met if the subtotals is 5 or more.*Is less than*

The condition is met if the subtotal is less than 5.*Is lower than / equal to*

The condition is met if the subtotal is 5 or less.*Is not equal to*

The condition is met if the subtotal does not equal 5.

It is possible to filter on

Example: Promotion "10 % on everything"

*Is one of*

The condition is met if the promotion is "10 % on everything" for at least one or all items.*Is none of*

The condition is met if the promotion is not "10 % on everything" for at least one or all items.

Here, the check is

*None*

The condition is met if the promotion does' t contain a promotional code.*Fixed*

The condition is met if the promotion contains a fixed promotion code.*Individual*

The condition is met if the promotion contains an individual promotion code.

Example: 3

*Is equal to*

The condition is met if there are 3 promotions in the shopping cart.*Is greater than*

The condition is met if there are more than 3 promotions in the shopping cart.*Is greater than / equal to*

The condition is met if there are 3 or more than 3 promotions in the shopping cart.*Is less than*

The condition is met if there are less than 3 promotions in the shopping cart.*Is lower than / equal to*

The condition is met if there are 3 or less than 3 promotions in the shopping cart.*Is not equal to*

The condition is met if there is a number other than 3 promotions in the shopping cart.

Example: 5

*Is equal to*

The condition is met if the subtotal of the promotion items is exactly 5.*Is greater than*

The condition is met if the subtotal of the promotion items is greater than 5.*Is greater than / equal to*

The condition is met if the subtotal of the promotion items is 5 or more.*Is less than*

The condition is met if the subtotal of the promotion items is less than 5.*Is lower than / equal to*

The condition is met if the subtotal of the promotion items is 5 or less.*Is not equal to*

The condition is met if the subtotal of the promotion items does not equal 5.

Use this condition to check whether a particular payment type is used. Do this by choosing between the operators "*Is one of*" and "*Is none of*". Select one or more of the existing payment methods from a drop down menu.

You can use this, for instance, to not offer payment methods together with certain shipping methods.

Example: Invoice

*Is one of*

The condition is met if invoice is used as the payment method.*Is none of*

The condition is met if a payment method other than invoice is selected.

Use this condition to check whether a particular shipping type is involved. To do this, you choose from the operators "*Is one of*" and "*Is none of*". Then you can add one or more of the existing shipping methods from a drop down menu.

You can use this, for instance, to not offer shipping methods together with certain payment methods.

Example: Express shipping

*Is one of*

The condition is met if express shipping is selected.*Is none of*

The condition is met if no express shipping is selected.

Extensive options are available for checking the grand total.

Please note that no currency is assigned to this condition.

If you want to link this to a currency, you can add another condition for currency linked by AND.

Example: 49,99

*Is equal to*

The condition is met if the total value of the shopping cart is exactly 49.99.*Is greater than*

The condition is met if the total value of the shopping cart is above 49.99.*Is greater than / equal to*

The condition is met if the total value of shopping cart is 49.99 or more.*Is less than*

The condition is met if the total value of the shopping cart is less than 49.99.*Is lower than / equal to*

The condition is met if the total value of the shopping cart is 49.99 or less.*Is not equal to*

The condition is met if the total value of the shopping cart is not 49.99.

The price of the goods in the shopping cart only adds up the prices of the products, no discounts, vouchers or shipping costs are taken into account.

Here you can also choose from a variety of operators

Example: 49,99

*Is equal to*

The condition is met if the total value of the goods in the shopping cart are exactly 49.99.*Is greater than*

The condition is met if the total value of the goods in the shopping cart are above 49.99.*Is greater than / equal to*

The condition is met if the total value of the goods in the shopping cart are 49.99 or more.*Is less than*

The condition is met if the total value of the shopping cart goods are less than 49.99.*Is lower than / equal to*

The condition is met if the total value of the goods in the shopping cart are 49.99 or less.*Is not equal to*

The condition is met if the total value of the goods in the shopping cart are not 49.99.

You can check the quantity of all products in the cart. You also have significantly more extensive additional conditions at your disposal.

Example: 5

*Is equal to*

The condition is met if a quantity is exactly 750 wide.*Is greater than*

The condition is met if the quantity is wider than 750.*Is greater than / equal to*

The condition is met if the quantity is 750 or wider.*Is less than*

The condition is met if the quantity is narrower than 750.*Is lower than / equal to*

The condition is met if the quantity is 750 or narrower.*Is not equal to*

The condition is met if the quantity is not 750 wide.*Is empty*

The condition is fulfilled if there is no the quantity.

You can check the total quantity of distinct products in the cart. You also have significantly more extensive additional conditions at your disposal.

Example: 5

*Is equal to*

The condition is met if a quantity is exactly 750 wide.*Is greater than*

The condition is met if the quantity is wider than 750.*Is greater than / equal to*

The condition is met if the quantity is 750 or wider.*Is less than*

The condition is met if the quantity is narrower than 750.*Is lower than / equal to*

The condition is met if the quantity is 750 or narrower.*Is not equal to*

The condition is met if the quantity is not 750 wide.*Is empty*

The condition is fulfilled if there is no the quantity.

A summation does take place.. Note that the volume is calculated from length x width x height and that the volume always refers to a single product. A summation does not take place.

Example: 100

*At least one*

The conditions applies if one stored value match.*All*

The conditions applies if all stored values match.*Is equal to*

The condition is met if the result is exactly 100.*Is greater than*

The condition is met if the is greater than 100.*Is greater than / equal to*

The condition is met if the result is exact 100 or more.*Is less than*

The condition is met if the result is less than 100.*Is lower than / equal to*

The condition is met if the result is exact 100 or less.*Is not equal to*

The condition is met if the result is not 100.

Check for the weight of the entire shopping cart.

Example: 2,0

*Is equal to*

The condition is met when the shopping cart weight is exactly 2.0.*Is greater than*

The condition is met if the shopping cart weight heavier than 2.0.*Is greater than / equal to*

The condition is met if the shopping cart weighs 2.0 or more.*Is less than*

The condition is met if product is lighter than 2.0.*Is lower than / equal to*

The condition is met if the shopping cart weights 2.0 or less.*Is not equal to*

The condition is met if the shopping cart weight is not 2.0.

The optional additional filters can be opened with the filter buttonon the right side. A modal for the creation of the subordinate conditions will then open.

Possible subconditions are

- Items in shopping cart
- Item
- Item available
- Item in category
- Item in dynamic product group
- Item in stock
- Item is promoted
- Item marked as "new"
- Item of type
- Item quantity
- Item subtotal
- Item unit price
- Item with clearance sale
- Item with creation date
- Item with custom field
- Item with height
- Item with length
- Item with list price
- Item with manufacturer
- Item with price/list price percentage ratio
- Item with property
- Item with purchase price
- Item with release date
- Item with tag
- Item with tax rate
- Item with volume
- Item with weight
- Item with width
- Shopping cart
- Total quantity of all products

Within a rule, you can link several conditions with each other, which allows you to map even very complex scenarios.

In the case of an AND link, all conditions must apply for the rule to be considered valid.

Avoid querying the same resource in both conditions of an AND operation, as this can lead to problems in the evaluation of the condition.

Only one of the conditions has to match for an OR link to be valid.

You also have the option of creating subconditions. In this case, the system first checks the parent condition and if this is met, the system checks the subcondition(s).

For better understanding we have created an article with some examples in the Tutorials & FAQ section.

Rules can only be deleted if they are no longer used by the system. If you want to delete a rule that is still being used by the system, you will get a message telling you where in the system the selected rule still exists. For example, in the products, shipping costs or in a promotion.

Example:

According to this error message, the rule is still used in two shipping types and one discount promotion. You can click on the link and you will be taken directly to the place where the rule is still used.