# Commerce segmentation predicates

Abstract

Overview of the Commerce segmentation predicate and the IContactCommerceInteractionProvider methods.

The Commerce segmentation predicate targets customers who purchased a specific product where you define the product ID. To do this, a list of orders is retrieved from the CommerceInteractionCache using the IContactCommerceInteractionProvider interface. The results are filtered using the defined segmentation rule.

The IContactCommerceInteractionProvider interface contains the following methods:

Description

Methods

Retrieves the last order ID from the Commerce Interaction cache.

string GetContactLastOrderId();

Retrieves the list of orders from the Commerce Interaction cache.

IEnumerable<Order> GetContactOrders(Contact contact);

Retrieves the list of carts from the Commerce Interaction cache.

IEnumerable<Cart> GetAbandonedCarts(Contact contact);

Retrieves the list of visited categories from the Commerce Interaction cache.

IEnumerable<VisitedCategory> GetVisitedCategories(Contact contact);

Retrieves the list of visited products from the Commerce Interaction cache.

IEnumerable<VisitedProduct> GetVisitedProducts(Contact contact);

The Commerce segmentation predicate Where Contact Purchase Product with ID is located at sitecore/System/Rules/Definitions/Elements/Commerce - Contact.

For example, when you use the segmentation predicate "where the contact purchased product with ID" in a rule to define a segment in the List Manager, you are able to see the contacts who fulfill the rule.