<p>A blank selection of products or product types will match all products.</p>

<p>Both 'product type' and 'product' conditions need to match for the sale to match the product.</p>

<p>If you selected product type A and a single product from product type B in your conditions, then the sale would not apply to the single product from type B even if added to the cart.</p>

<p>Therefore the condition could be thought of as an AND, meaning that all conditions need to match for the sale to apply.</p>

<p>Let me know if you need further clarification.</p>

CC BY-SA 3.0
2017-02-07T07:45:56.007Z
Take a look at the `Commerce_SaleService::matchProductAndSale` method for the condition checking.
Luke Holder
CC BY-SA 3.0
2017-02-07T08:11:45.497Z
OK, so that confirms my understanding that specifying both product types and specific products would be redundant.
Michael Rog
CC BY-SA 3.0
2017-02-07T08:15:34.213Z
For what it's worth, it would be a nice UI tweak to only show one control or the other at any time, based on a user selection… Because if the user has specified both product types and specific products, the user is probably confused.
Michael Rog
CC BY-SA 3.0
2017-02-07T08:19:27.170Z
Agree it could be confusing. Likely, when we open up sales to all purchasables, the product type condition will be migrated to conditions that can be used by any element, like categories. - since product types are unique to products.
Luke Holder
CC BY-SA 3.0
2017-02-07T07:45:05.893Z
2017-02-07T07:45:05.893Z
Luke Holder
<p>Is it correct to assume that if I set up a Sale with some Specific Products in the Condition, it will not have any effect to also select Product Types in the Conditions of that sale?</p>

<p>i.e. If I select both Product Types and Specific Products, does the sale apply to all the products in the selected types, and <em>also</em> to the selected specific products, or (my current understanding of the "correct behavior") would that sale apply to only the selected specific products?</p>

<plugin-craftcommerce>
Sales that select both Product Types and Specific Products in the Conditions
# Sales that select both Product Types and Specific Products in the Conditions

(Asked by: username_0 on 2017-02-07)

Is it correct to assume that if I set up a Sale with some Specific Products in the Condition, it will not have any effect to also select Product Types in the Conditions of that sale?

i.e. If I select both Product Types and Specific Products, does the sale apply to all the products in the selected types, and *also* to the selected specific products, or (my current understanding of the "correct behavior") would that sale apply to only the selected specific products?

**Tags:** plugin-craftcommerce

---

## 1 answers

### Answer by username_1 on 2017-02-07. Score: 1

A blank selection of products or product types will match all products.

Both 'product type' and 'product' conditions need to match for the sale to match the product.

If you selected product type A and a single product from product type B in your conditions, then the sale would not apply to the single product from type B even if added to the cart.

Therefore the condition could be thought of as an AND, meaning that all conditions need to match for the sale to apply.

Let me know if you need further clarification.

> **Comments:**
> **username_1**: Take a look at the `Commerce_SaleService::matchProductAndSale` method for the condition checking.  
> **username_0**: OK, so that confirms my understanding that specifying both product types and specific products would be redundant.  
> **username_0**: For what it's worth, it would be a nice UI tweak to only show one control or the other at any time, based on a user selection… Because if the user has specified both product types and specific products, the user is probably confused.  
> **username_1**: Agree it could be confusing. Likely, when we open up sales to all purchasables, the product type condition will be migrated to conditions that can be used by any element, like categories. - since product types are unique to products.  

---

