Restricted Products

This article is intended for advanced users and our partners as it requires advanced web development or Salesforce admin or programming knowledge. While the functionality is part of StoreConnect, we do not provide end user assistance to implement it beyond our help documentation. If you need help or are unsure on how to do this, you can hire one of our StoreConnect partners.

Restricted Products is a feature that allows you to prevent customers from purchasing (or even from seeing) certain products, at a very granular level without having to resort to creating custom price books for each customer. Approval to see and buy can then be granted on a per customer basis.

What can you do with it?

In situations where customers need approval to purchase, you can:

In situations where a customer DOES have approval to purchase, you can:

How do you configure it?

Creating a Restricted Product

Restricting Products works via the Pricebook Entry object and each of the following fields will need to be added to the Pricebook Entry page layout:

A product will be restricted if Restricted is ticked. If this is the only setting set, then the Product will not show on the Store if this Pricebook is in effect (assigned to Store or an Account etc).

If Display If Restricted is also ticked, then the product will be restricted but will show on the Store. If will be able to be found via search and customers will be able to view the product’s page.

If Restricted Text is provided, it will be shown instead of the product’s price. This is how you can show a restricted product but not disclose it’s price.

Creating a Placeholder Product

What are Placeholder Products?

Placeholder products, are products you can configure to show instead of a restricted product, so that you can show some generic details about the product when the customer is not approved to purchase it.

To configure a placeholder, create a product that can otherwise be visible on the Store (eg active, master, available on etc) and then assign it to the restricted product via the Product2.Placeholder For Id lookup field.

When the restricted product is visible on the Store, but the customer is not approved to purchase, the placeholder will show in place of the restricted product.

Without approval to buy a restricted product:

  • Visiting the URL for the restricted product will redirect to the placeholder
  • The placeholder itself will not show up in any search results unless standing in for it’s restricted product
  • The restricted product is included in the searchable product list, so searching for it will work, but the placeholder will be shown in the results instead
  • The placeholder is excluded from the searchable product list, so searching for it won’t work

With approval to buy a restricted product:

  • Visiting the URL for the placeholder product will redirect to the normal product
  • Searching works as above

Approving a Customer to Buy a Restricted Product

The other side to restricting products, is allowing certain customers to purchase them. That is done via the Permitted Restricted Product object.

Permitted Restricted Product:

Use the Account_Id, Product_Id and Store_Id to configure who this approval applies to, for what Product or Product Category, and on what Store.

Supply the date range for when this approval is valid. Customers will not be able to purchase products using this approval, outside of these dates.

Configure whether the customer can purchase a limited number of items using Approved Quantity, or whether they can purchase an unlimited amount via the Unlimited checkbox.

In general, these values should be set when creating the approval and not be changed later, although you can. For instance you could reduce the Approved_Until__c date to make the approval end faster, or reduced the Approved_Quantity__c etc. It is up to you to make sure you don’t put it into a weird state, although if you do it will only really affect your reporting, it won’t incorrectly affect the purchasability on the Store.

This field keeps track of how many items have been purchased already. As this number increases, the remaining quantity the customer can purchase goes down (unless it is unlimited). You shouldn’t change this number, as it is a calculated value.

How do you manage it in Salesforce?

When a customer makes an order for a Restricted Product, your order processing team will be able to see whether the customer has approval to purchase the item (in the ordered quantity) before it is shipped.

If you need to process a refund, you should follow your own internal refund procedure, however for restricted products, you will also need to void the items on the order so they are not registered as actual purchases. This will free the items up for that customer to re-purchase should they still have approval.

Tracking Restricted Product Purchases

When an order is placed for a Restricted Product, our system creates a Permitted_Restricted_Item__c record for each affected OrderItem. This allows your staff to see what orders have been placed for restricted products and to modify them as needed. These records are what drives the incrementing of the Permitted_Restricted_Product__c.Purchased_Quantity__c field.

Voiding a Purchase

If the order is declined or cancelled, you will need to manually void the corresponding Permitted Restricted Item record. Doing so will result in a reduction of the Permitted Restricted Product.Purchased Quantity field.

Table of Scenarios

Options Results
Restricted? Display if Restricted? Approval? Placeholder? Restricted Text? Product Shown Can Buy? Price Shown
TRUE FALSE FALSE N/A N/A None NO N/A
TRUE TRUE FALSE TRUE N/A Placeholder NO Placeholder Price
TRUE TRUE FALSE FALSE PRESENT Master NO Restricted Text
TRUE TRUE FALSE FALSE BLANK Master NO Normal Price
TRUE N/A TRUE N/A N/A Master YES Normal Price
FALSE N/A N/A N/A N/A Master YES Normal Price
 

 
Back to Documentation