Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunityDoc feedbackLog In
GitHubNuGetDev CommunityDoc feedback


## Restrict product by group



The screen displays the ultimate result for the product ("Shown" or "Hidden") at the top of the screen. A list of all applicable restriction groups displays below, demonstrating how the system arrived at the ultimate result.

  1. Go to **Catalog** \> **Validation Tool**.

  2. Select a Website from the drop-down.

  3. Type a Customer Number or Company Name in the **Customer** search box to select a customer.

  4. Type a Product Number or Product Title in the **Product** search box to select a product.

  5. Click **Validate**.

Use the Validation Tool to confirm if a product is or is not visible to a customer. To determine the visibility of a specific product for a specific customer:

## Validation tool

Because restriction groups are based on customer Bill To/Ship To fields, the user's cart must be revalidated every time a change is made to the user's selected Bill To/Ship To. The user's cart is revalidated if the user adds an item to their cart, then changes their Bill To/Ship To. The cart also is revalidated if the user adds an item to their cart, then changes their Bill To/Ship To so the warehouse changes and backorders are not allowed.

## Cart validation

  1. Go to **Catalog** \> **Restriction Groups.**

  2. Click **Add Restriction Group**.

  3. Enter the **Restriction Group Name** (required), and an optional description.

  4. Click **Continue**.

  5. Next, select affected customers. Enter rules using the Rules Engine, and/or select specific customers.

    Note

    The **Customer Bill To Fields** rule type only applies to customers where the Bill To toggle = YES. Similarly, the **Customer Ship To Fields** rule type only applies to customers where the Ship To toggle = YES.

    1. If using the rules engine to enter rules, select a **Rule Type**, then fill in the appropriate fields.

    2. Alternately, choose not to use the rules engine, and click **Select Customers** under the Specific Customers header to handpick customers affected by the restriction group. Select one or more customers, then click **Assign**. Click **Done** to save.

  6. Click **Select Customers** under the Exclude Customers header to choose customers who fit the rules, but are excluded from the restriction group. Select one or more customers to exclude, then click **Assign**. Click **Done** to save.**Note:** Either rules must be entered, or specific customers selected, in order to continue. Restriction groups cannot be created with excluded customers only.

  7. Click **Continue**.

  8. Next, choose restriction options.

    1. **Hide selected products** – "Hide" overrides products with a default setting of "Show." If products are in multiple restriction groups, "Hide" overrides "Show."

    2. **Show selected products** – Restriction groups with "Show" override products with a default setting of "Hide."

    3. **Show only selected products** – If products are in multiple restriction groups, "Show Only" overrides all other groups and product default settings. This can be used to display a limited catalog.

  9. Choose which websites the restriction group applies to. If the restriction group should not apply to all websites, choose **Select websites**, then click **Assign Websites** to choose a websites.

  10. Click **Continue.**

  11. Next, select the products affected by the restriction group. Enter rules using the rules engine, or select specific products.

    1. If using the rules engine to enter rules, select a **Rule Type**, then fill in the appropriate fields.

    2. Alternately, choose not to use the rules engine, and click **Select Products** under the **Specific Products** header to handpick products affected by the restriction group. Select one or more products, then click **Assign**. Click **Done** to save.

  12. Click **Select Products** under the Exclude Products header to choose products that fit the rules, but are excluded from the restriction group. Select one or more customers to exclude, then click **Assign**. Click **Done** to save.

  13. Click **Continue.**

  14. Finally, click the **Active** toggle to activate the restriction group. Restriction groups are not live until the product index is rebuilt, either manually or with an integration job. Click **Rebuild Product Index** to rebuild the index manually.

  15. Finally, click the **Active** toggle to activate the restriction group. Restriction groups are not live until the product index is rebuilt, either manually or with an integration job. Click **Save and Rebuild Product Index** to rebuild the index manually.

  16. Click **Save**.

## Create a restriction group

  1. In the Admin Console, go to **Catalog** \> **Products**

  2. Select **Edit** next to a product.

  3. Select the **Product Restrictions** finger tab.

  4. Select either the **Show** or **Hide** radio button next to Default Visibility. Restriction groups that affect the product override this setting based on the behavior hierarchy (see above).

To modify the product restrictions setting:

Note

All products are set to **Show** by default.

The Product Restrictions setting determines if individual products are set to appear or not appear on the website by default. These values can be overridden by restriction groups. Products with **Hide** as their default value are hidden from the website unless overridden by **Show** or **Show Only** restriction groups. Products with **Show** as their default value are shown on the website unless overridden by **Hide** restriction groups.

## Import/export restriction groups

You can import and expert restriction groups by specifying the child collection through the CustomerAdditions, CustomerExceptions, ProductAdditions, and ProductExceptions fields. You can find these options under **Catalog** >** Restriction Groups**.

Use these steps to import restriction groups:

  1. Click the** Upload** icon.

  2. Select **Restriction Groups**.

  3. Choose your file.

  4. Change any **Import Options**, if desired.

    1. **Validate file before importing** – Set to **No** by default. The process imports each record individually, records any potential errors, and then removes the record. Any errors display in a downloadable file.

    2. **Ignore blank cells** – Set to **Yes** by default. This prevents the system from importing blank cells and overwriting existing data with null values.

    3. **Update existing records** – Set to **Yes** by default. If yes, any imported records that match existing records update the existing records. If no, the system records an error for any record already existing in the database. This setting is intended to allow importation of new records only.

    4. **Ignore modified date** – Set to **No** by default. Exported records include the ID and modified timestamp. If you re-import these records with changes, the system checks if the record was changed subsequent to the export and, if it was, records an error unless this setting is set to yes. If the modified date is not in the spreadsheet, this setting has no impact.

  5. Click **Import**.

Use these steps to export restriction groups:

  1. Click the **Download** icon.

  2. Set **Restriction Groups** as what you would like to export.

  3. Select the columns to export.

  4. Click** Export**.

## Product Restrictions Setting

Note

In the event where multiple show only groups apply to the same customer, the products in all "show only" groups will be displayed to the users.

  • With all restriction groups active, customers in show only restriction groups only see the products in the groups (show only wins and every other product/group is hidden)

  • With only show and hide groups active, customers in both restriction groups do not see products in the group (hide wins)

  • With no groups active, the default product behavior determines if the product is available on the site

This is how the hierarchy looks in practice:

  • Hide restriction group \> Show product setting

  • Show restriction group \> Hide product setting

  • Hide restriction group \> Show restriction group

  • Show Only restriction group \> All settings (if product is in multiple restriction groups)

Customers and products both can belong to multiple restriction groups. Use this behavior hierarchy to determine which customer/product setting prevails.

## Restriction group behavior hierarchy

Hero Heating and Cooling (HHC) carries various types of industrial coolant. Since these coolants are considered hazardous materials, HHC cannot ship them to their customers in Canada. HHC creates a restriction group hiding all products in the Industrial Coolant category from customers whose Country data field equals Canada.

### Use case 2: hazardous products

Note

For one-time ship-to addresses, the rules engine will properly assess whether location-based restrictions apply or not. This is true whether there are separate Bill-To and Ship-To addresses or when the Ship-To equals the Bill-To address.

HHC sells HVAC products in the upper Midwest region of the United States, as well as parts of Southern Canada. One of their vendors, Vendor A, has signed a distribution contract with HHC, on the contingency that Vendor A's products are sold only in the state of Minnesota. HHC marks all of Vendor A's products with a default behavior of "hide," then creates a restriction group showing those products to customers with the Customer Ship To StateId of Minnesota.

### **Use case 1: state-specific products**

To allow products to be affected by restriction groups, ensure the **Restrictions by Item** Setting is set to **YES.**

Use Restriction Groups to prevent or allow website users to view/purchase specific products. Restriction groups can be thought of as "exception groups"; they are assigned to customers to provide an exception for the way products generally are viewed/purchased. Customers and products may belong to multiple restriction groups.