Always
If you don’t want to set any condition, select Always. The rule will run every time for everyone, without checking any conditions.
Previous all conditions invalid
When all previous conditions are invalid in the previous rule block, i-e the previous rule block did not run, this condition becomes true, ensuring the action is triggered only if none of the earlier conditions are met.Available only when at least one previous rule block exists.

Customer
New customer
This condition becomes true if the customer is a new customer, i-e the customer has not previously spent any amount in the store to buy products.
Repeat customer
This condition becomes true if the customer has previously spent any amount in the store to buy products.
Customer total previous spent
This condition checks the customer’s total previous spent amount against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the customer’s total previous spent amount is greater than or equal to the entered amount)
- is less than or equals (Matches when the customer’s total previous spent amount is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 500 → Matches customers who have spent 500 or more in total on previous purchases.

Email address
This condition checks the customer’s email address against specific criteria, based on one of the following sub-conditions:- contains (The email address includes the entered value)
- does not contain (The email address does not include the entered value)
- is empty (No email address is provided)
- is not empty (An email address is provided)
- is (The email address exactly matches the entered value)
- is not (The email address does not exactly match the entered value)
For example, contains @gmail.com → Matches any email address ending with “@gmail.com”.

For example, is empty → Matches when the email field is blank.

Order Details
Order total amount
This condition checks the order’s total amount against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the order’s total amount is greater than or equal to the entered amount)
- is less than or equals (Matches when the order’s total amount is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 600 → Matches orders with a total amount of 600 or more.

Order subtotal amount
This condition checks the order’s subtotal amount against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the order’s subtotal amount is greater than or equal to the entered amount)
- is less than or equals (Matches when the order’s subtotal amount is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 699 → Matches orders with a subtotal amount of 699 or more.

Order tax amount
This condition checks the order’s tax amount against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the order’s tax amount is greater than or equal to the entered amount)
- is less than or equals (Matches when the order’s tax amount is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 50 → Matches orders with a tax amount of 50 or more.

Order duty amount
This condition checks the order’s duty amount against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the order’s duty amount is greater than or equal to the entered amount)
- is less than or equals (Matches when the order’s duty amount is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 80 → Matches orders with a duty amount of 80 or more.

Order total weight
This condition checks the order’s total weight against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the order’s total weight is greater than or equal to the entered weight)
- is less than or equals (Matches when the order’s total weight is less than or equal to the entered weight)
For example, is less than or equals 5 kg → Matches orders with a total weight of 5 kilograms or less.

Order total one time purchase weight
This condition checks the total weight of one-time purchase items in the order against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total one-time purchase weight is greater than or equal to the entered weight)
- is less than or equals (Matches when the total one-time purchase weight is less than or equal to the entered weight)
For example, is greater than or equals 10 lb → Matches orders where the total weight of one-time purchase items is 10 pounds or more.

Order total subscription weight
This condition checks the total weight of subscription items in the order against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total subscription weight is greater than or equal to the entered weight)
- is less than or equals (Matches when the total subscription weight is less than or equal to the entered weight)
For example, is greater than or equals 5 kg → Matches orders where the total weight of subscription items is 5 kilograms or more.

Total discount amount (any discount type)
This condition checks the total discount amount in the order (any product or order discount) against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total discount amount is greater than or equal to the entered amount)
- is less than or equals (Matches when the total discount amount is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is less than or equals 50 → Matches if the total discount amount of the order (any type) is 50 or less.

Total discount percentage (any discount type)
This condition checks the total discount percentage in the order (any product or order discount) against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total discount percentage from any type of discount in the order is greater than or equal to the entered percentage)
- is less than or equals (Matches when the total discount percentage from any type of discount in the order is less than or equal to the entered percentage)
For example, is less than or equals 15 → Matches if the total discount percentage from any discount type in the order is 15% or less.

Order total discount amount
This condition checks the order total discount amount against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total discount amount for the order is greater than or equal to the entered amount)
- is less than or equals (Matches when the total discount amount for the order is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is less than or equals 75 → Matches if the total discount amount for the entire order is 75 or less.

Order total discount percentage
This condition checks the order total discount percentage against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the overall discount percentage applied to the entire order is greater than or equal to the entered percentage)
- is less than or equals (Matches when the overall discount percentage applied to the entire order is less than or equal to the entered percentage)
For example, is less than or equals 15 → Matches if the total discount percentage applied on the order is 15% or less.

Cart Details
Any product discount amount
This condition checks the discount amount applied to any product in the order against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the discount amount on any product is greater than or equal to the entered amount)
- is less than or equals (Matches when the discount amount on any product is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 50 → Matches if any product in the order has a discount amount of 50 or more.

Any product discount percentage
This condition checks the discount percentage applied to any product in the order against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the discount percentage on any product is greater than or equal to the entered percentage)
- is less than or equals (Matches when the discount percentage on any product is less than or equal to the entered percentage)
For example, is greater than or equals 10 → Matches if any product in the order has a discount percentage of 10% or more.

Total product discount amount
This condition checks the total product discount amount in the order against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total discount amount for a product is greater than or equal to the entered amount)
- is less than or equals (Matches when the total discount amount for a product is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is greater than or equals 100 → Matches if the total discount amount for any product in the order is 100 or more.

Total product discount percentage
This condition checks the total product discount percentage in the order against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the total discount percentage for a product is greater than or equal to the entered percentage)
- is less than or equals (Matches when the total discount percentage for a product is less than or equal to the entered percentage)
For example, is greater than or equals 20 → Matches if the total discount percentage for any product in the order is 20% or more.

Cart Has Any Items
Product tag
This condition checks the product tag in the order against specific criteria. It will become true if any product in the cart has the entered Product Tag value, based on one of the following sub-conditions:- has value of (Matches when the product tag has the specified value)
- does not have value of (Matches when the product tag does not have the specified value)
- has any other value besides (Matches when the product tag has any value except the entered one)
- does not have any other value besides (Matches when the product tag has only the entered value and no other)
For example, has value of NewArrival → Matches when the product tag is NewArrival.

Product tags
This condition checks the Product Tags against specific criteria. It will become true if any product in the cart has the entered Product Tag value, based on one of the following sub-conditions:- Has any of these values (Matches if the Product Tags have at least one of the entered values)
- Does not have any of these values (Matches if the Product Tags have none of the entered values)
- Has any other value besides these values (Matches if the Product Tags have a value that is not among the entered values)
- Does not have any other value besides these values (Matches if the Product Tags have only the entered values and no others)
- Has number of values greater than or equals (Matches if the count of Product Tags is greater than or equal to the entered number)
- Has number of values less than or equals (Matches if the count of Product Tags is less than or equal to the entered number)
You can only use this condition with the same values throughout the rule. If
you want to use different values in different rule blocks, you should switch
to condition set 3, 5, or 6 which allow more flexibility.
For example, Does not have any of these values: summer, clearance → Matches if the Product Tag does not include “summer” or “clearance”.

For example, Has number of values less than or equals 4 → Matches if there are four or fewer Product Tags.

Line item property
This condition checks the properties attached to a line item against specific criteria, based on one of the following sub-conditions:- Has any of these values (Matches when the specified line item property contains any of the entered values)
- Does not have any of these values (Matches when the specified line item property does not contain any of the entered values)
- Has empty value (Matches when the specified line item property exists but has no value)
- Does not have empty value (Matches when the specified line item property exists and contains a value)
- Has number of values greater than or equals (Matches when the specified line item property contains a number of values greater than or equal to the entered number)
- Has number of values less than or equals (Matches when the specified line item property contains a number of values less than or equal to the entered number)
1
Enter property key
Enter the property key in the “Enter key” field.
2
Enter value(s)
Enter the value(s) to match (where applicable).
3
Choose comparison option
Choose the comparison option from the dropdown.
Use * wildcard to match partial values. For example, value* will match
value123, VALUETEST etc.
Example for “Has any of these values”: > Key:color> Values:red, blue→ Matches line items where thecolorproperty is eitherredorblue.

Example for “Does not have empty value”:
Key:engraving
→ Matches line items where theengravingproperty exists and contains some text (e.g., “Happy Anniversary”).

Example for “Has number of values less than or equals”:
Key:size
Number:2
→ Matches line items where thesizeproperty has 2 or fewer distinct values (e.g.,S, M).

Cart has one time purchase product
This condition checks whether the cart contains at least one product that is a one time purchase. If present, the condition is considered met.
Cart has no one time purchase product
This condition checks whether the cart contains no products that are one time purchases. If no one time purchase products are present, the condition is considered met.
Shipping
Selected shipping method
This condition checks the customer’s selected shipping method against specific criteria, based on one of the following sub-conditions:- contains (The selected shipping method includes the entered value)
- does not contain (The selected shipping method does not include the entered value)
- is (The selected shipping method exactly matches the entered value)
- is not (The selected shipping method does not exactly match the entered value)
For example, contains Express → Matches any selected shipping method that includes “Express”.

Selected shipping method price
This condition checks the selected shipping method’s price against specific criteria, based on one of the following sub-conditions:- is greater than or equals (Matches when the selected shipping method’s price is greater than or equal to the entered amount)
- is less than or equals (Matches when the selected shipping method’s price is less than or equal to the entered amount)
Enter the amount in your store currency. Settings > Store Details > Store
Currency
For example, is less than or equals 50 → Matches orders where the selected shipping method price is 50 or less.

Selected shipping type (Ship/Pickup)
This condition checks the “Ship vs Pickup in store” selection on the checkout page, as shown below.
- is (Matches if the Delivery selection is exactly as the entered value)
- is not (Matches if the Delivery selection is different from the entered value)
Example: is not: Pickup → Matches if the selected shipping type is anything other than “Pickup”, i-e it is “Ship”.

Shipping method price
This condition checks the shipping method’s price based on the selected shipping name criteria and price comparison rule. You can configure it using the following options: Shipping name criteria:- shipping name contains (Matches when the shipping method name includes the entered text)
- shipping name is (Matches when the shipping method name exactly matches the entered text)
- any shipping method (Matches regardless of the shipping method name)
- price is greater than or equals (Matches when the shipping method price is greater than or equal to the entered amount)
- price is less than or equals (Matches when the shipping method price is less than or equal to the entered amount)
For example,shipping name contains Express+price is greater than or equals 200→ Matches orders with a shipping method name containing “Express” and a shipping price of 200 or more.

Shipping methods available
Used to check if the given shipping methods are actually available on the checkout page, based on one of the following sub-conditions:- Has any of these values (Matches if the checkout page contains at least one of the listed shipping methods)
- Does not have any of these values (Matches if the checkout page does not contain any of the listed shipping methods)
- Has any other value besides these values (Matches if the checkout page contains shipping methods other than the listed ones)
- Does not have any other value besides these values (Matches if the checkout page contains only the listed shipping methods and no others)
- Has number of values greater than or equals (Matches if the number of shipping methods available on the checkout page is greater than or equal to the specified number)
- Has number of values less than or equals (Matches if the number of shipping methods available on the checkout page is less than or equal to the specified number)
Use * wildcard to match partial shipping method names. For example, Stand*
will match Standard, standard shipping etc.
For example, Has any of these values: Express Delivery, Standard Shipping → Matches if at least one of the selected shipping methods is available.

For example, Has number of values greater than or equals 3 → Matches if three or more shipping methods are available.

Localization
User language
This condition checks the language selected by the customer, based on one of the following sub-conditions:- Has any of these values (Matches if the customer language is from the given list)
- Does not have any of these values (Matches if the customer language is not from the given list)
- Has any other value besides these values (Matches if the customer language is not from the given list)
- Does not have any other value besides these values (Matches if the customer language is from the given list and no others)
For example, Does not have any of these values: English, French → Matches if the field does not contain “English” or “French”.

Shipping Address
Shipping address is empty
This condition becomes true if the shipping address fields are empty.
Shipping address is not empty
This condition becomes true if the shipping address fields are not empty.
Full name (First name + Last name)
Used to compare the customer’s full name with one or more specific values, counts, or states, based on one of the following sub-conditions:- Contains (Matches if the full name contains the specified value or partial value)
- Does not contain (Matches if the full name does not contain the specified value or partial value)
- Is empty (Matches if no name is entered)
- Is not empty (Matches if any value is entered in the name field)
- Is (Matches if the full name exactly matches the specified value)
- Is not (Matches if the full name is not exactly the specified value)
- Has no of characters greater than or equals (Matches if the total character count in the name is greater than or equal to the specified number)
- Has no of characters less than or equals (Matches if the total character count in the name is less than or equal to the specified number)
- Has only (Matches if the full name contains only the allowed character type from the dropdown)
- Does not have only (Matches if the full name contains characters other than the allowed character type from the dropdown)
For example, Does not contain: Test → Matches if the name does not contain “Test” anywhere.

- English characters (Allows only A–Z and a–z)
- English characters + accent variants (Allows A–Z, a–z, plus accented characters like é, ñ, ö)
For example,
has only: english characters→ Matches if the customer’s name contains english characters only.

For example, Has no of characters greater than or equals 10 → Matches if the full name contains 10 or more characters.

For example, Is empty → Matches if the full name field is left blank.

First name
Used to compare the customer’s first name with one or more specific values, counts, or states, based on one of the following sub-conditions:- Contains (Matches if the first name contains the specified value or partial value)
- Does not contain (Matches if the first name does not contain the specified value or partial value)
- Is empty (Matches if no first name is entered)
- Is not empty (Matches if any value is entered in the first name field)
- Is (Matches if the first name exactly matches the specified value)
- Is not (Matches if the first name is not exactly the specified value)
- Has no of characters greater than or equals (Matches if the total character count in the first name is greater than or equal to the specified number)
- Has no of characters less than or equals (Matches if the total character count in the first name is less than or equal to the specified number)
- Has only (Matches if the first name contains only the allowed character type from the dropdown)
- Does not have only (Matches if the first name contains characters other than the allowed character type from the dropdown)
For example, Is not: Jane → Matches if the first name is anything except “Jane”.

- English characters (Allows only A–Z and a–z)
- English characters + accent variants (Allows A–Z, a–z, plus accented characters like é, ñ, ö)
For example,
has only: english characters→ Matches if the first name contains english characters only.

For example, Has no of characters greater than or equals 5 → Matches if the first name contains 5 or more characters.

For example, Is empty → Matches if the first name field is left blank.

Last name
Used to compare the customer’s last name with one or more specific values, counts, or states, based on one of the following sub-conditions:- Contains (Matches if the last name contains the specified value or partial value)
- Does not contain (Matches if the last name does not contain the specified value or partial value)
- Is empty (Matches if no last name is entered)
- Is not empty (Matches if any value is entered in the last name field)
- Is (Matches if the last name exactly matches the specified value)
- Is not (Matches if the last name is not exactly the specified value)
- Has no of characters greater than or equals (Matches if the total character count in the last name is greater than or equal to the specified number)
- Has no of characters less than or equals (Matches if the total character count in the last name is less than or equal to the specified number)
- Has only (Matches if the last name contains only the allowed character type from the dropdown)
- Does not have only (Matches if the last name contains characters other than the allowed character type from the dropdown)
For example, Is not: Smith → Matches if the last name is anything except “Smith”.

- English characters (Allows only A–Z and a–z)
- English characters + accent variants (Allows A–Z, a–z, plus accented characters like é, ñ, ö)
For example,
Has only: English characters→ Matches if the last name contains English characters only.

For example, Has no of characters greater than or equals 5 → Matches if the last name contains 5 or more characters.

For example, Is empty → Matches if the last name field is left blank.

Company
Used to compare the customer’s company name (The company name field on the checkout page) with one or more specific values, counts, or states, based on one of the following sub-conditions:- Contains (Matches if the company name contains the specified value or partial value)
- Does not contain (Matches if the company name does not contain the specified value or partial value)
- Is empty (Matches if no company name is entered)
- Is not empty (Matches if any value is entered in the company name field)
- Is (Matches if the company name exactly matches the specified value)
- Is not (Matches if the company name is not exactly the specified value)
- Has no of digits greater than or equals (Matches if the total number of digits in the company name is greater than or equal to the specified number)
- Has no of digits less than or equals (Matches if the total number of digits in the company name is less than or equal to the specified number)
- Has no of characters greater than or equals (Matches if the total number of characters in the company name is greater than or equal to the specified number)
- Has no of characters less than or equals (Matches if the total number of characters in the company name is less than or equal to the specified number)
- Has only (Matches if the company name contains only the allowed character type from the dropdown)
- Does not have only (Matches if the company name contains characters other than the allowed character type from the dropdown)
For example, Contains: Tech → Matches if the company name contains the word “Tech”.

- English characters (Allows only A–Z and a–z)
- English characters + accent variants (Allows A–Z, a–z, plus accented characters like é, ñ, ö)
For example,
Has only: English characters→ Matches if the company name contains English characters only.

For example, Has no of characters greater than or equals 10 → Matches if the company name contains 10 or more characters.

For example, Is empty → Matches if the company name field is left blank.

Phone number
Used to compare the customer’s phone number (The phone number field on the checkout page in shipping address) with one or more specific values, counts, or states, based on one of the following sub-conditions:- Contains (Matches if the phone number contains the specified value or partial value)
- Does not contain (Matches if the phone number does not contain the specified value or partial value)
- Is empty (Matches if no phone number is entered)
- Is not empty (Matches if any value is entered in the phone number field)
- Is (Matches if the phone number exactly matches the specified value)
- Is not (Matches if the phone number is not exactly the specified value)
- Has no of digits greater than or equals (Matches if the total number of digits in the phone number is greater than or equal to the specified number)
- Has no of digits less than or equals (Matches if the total number of digits in the phone number is less than or equal to the specified number)
For example, Contains: 123 → Matches if the phone number contains “123” anywhere.

For example, Has no of digits greater than or equals 10 → Matches if the phone number contains 10 or more digits.

For example, Is empty → Matches if the phone number field is left blank.

City / Area
Used to compare the City / Area (The City/Area field on the checkout page in shipping address) values with one or more specific values, counts, or states, based on one of the following sub-conditions:- Has any of these values (Matches if the city field contains at least one of the listed values)
- Does not have any of these values (Matches if the city field does not contain any of the listed values)
- Has any other value besides these values (Matches if the city field contains values other than the listed ones)
- Does not have any other value besides these values (Matches if the city field contains only the listed values and no others)
- Has number of digits greater than or equals (Matches if the number of digits in the city field is greater than or equal to the specified number)
- Has number of digits less than or equals (Matches if the number of digits in the city field is less than or equal to the specified number)
- Is empty (Matches if the city field has no value)
- Is not empty (Matches if the city field contains any value)
Use * wildcard to match partial city names. For example, Santo* will match
santo domingo, santodomngo etc.
For example, Has any of these values: Lahore, Karachi → Matches if the field contains either “Lahore” or “Karachi”.

For example, Has number of digits greater than or equals 5 → Matches if the field’s value has five or more digits.

For example, Is empty → Matches if no value is entered for the field.

Province code / State code
Used to compare the Province / State (The Province/State field on the checkout page in shipping address) values with one or more specific values or states, based on one of the following sub-conditions:- Has any of these values (Matches if the province field contains at least one of the listed values)
- Does not have any of these values (Matches if the province field does not contain any of the listed values)
- Has any other value besides these values (Matches if the province field contains values other than the listed ones)
- Does not have any other value besides these values (Matches if the province field contains only the listed values and no others)
- Is empty (Matches if the province field has no value)
- Is not empty (Matches if the province field contains any value)
Add 2 or 3 letter province/state code abbreviation in “ISO_3166-2” format
only.
For example, Does not have any other value besides these values: CA, TX → Matches if the field contains only “CA” or “TX” and no other values.

For example, Is not empty → Matches if any value is entered for the field.

Country
Used to compare the Country (The Country field on the checkout page in shipping address) values with one or more specific countries, based on one of the following sub-conditions:- Has any of these values (Matches if the country field contains at least one of the selected countries)
- Does not have any of these values (Matches if the country field does not contain any of the selected countries)
- Has any other value besides these values (Matches if the country field contains countries other than the selected ones)
- Does not have any other value besides these values (Matches if the country field contains only the selected countries and no others)
For example, Does not have any other value besides these values: Portugal, Poland → Matches if the field contains only “Portugal” or “Poland” and no other countries.

Zip code / Postal code
Used to compare the Zip code / Postal code (The Zip/Postal Code field on the checkout page in shipping address) values with one or more specific zip or postal codes, based on one of the following sub-conditions:- Has any of these values (Matches if the zip/postal code field contains at least one of the listed values)
- Does not have any of these values (Matches if the zip/postal code field does not contain any of the listed values)
- Has value in between these values (Matches if the zip/postal code field value falls within the specified range)
- Does not have value in between these values (Matches if the zip/postal code field value does not fall within the specified range)
- Has any other value besides these values (Matches if the zip/postal code field contains values other than the listed ones)
- Does not have any other value besides these values (Matches if the zip/postal code field contains only the listed values and no others)
- Has only digits (Matches if the zip/postal code field contains only numeric characters)
- Does not have only digits (Matches if the zip/postal code field contains any non-numeric characters)
- Has number of digits in between (Matches if the number of digits falls within the specified range)
- Does not have number of digits in between (Matches if the number of digits does not fall within the specified range)
- Is empty (Matches if the zip/postal code field has no value)
- Is not empty (Matches if the zip/postal code field contains any value)
Use * wildcard to match multiple zip codes. For example, BT* will match BT12,
bt-590 etc. Use ? to match to any single character.
For example, Has any of these values: BT* → Matches all zip/postal codes starting with “BT”.

Another example, Does not have any of these values: 12345, 67890 → Matches if the code is not “12345” or “67890”.

Enter numbers only. All values ranging in between starting value until the
last value will be matched, including the starting and last value.
For example, Has value in between these values: 10000 – 20000 → Matches if the code is between “10000” and “20000”.

For example, Has only digits → Matches digits only (0–9).

Enter numbers only. All values ranging in between given number of digits will
be matched.
For example, Has number of digits in between: 4 – 6 → Matches codes that contain between 4 and 6 digits.

For example, Is not empty → Matches if any value is entered in the field
