{"title":"Restricted products","slug":"restricted-products","url":"https://support.storeconnect.com/articles/restricted-products","url_markdown":"https://support.storeconnect.com/articles/restricted-products.md","subtitle":null,"summary":"Restrict product visibility and purchasing to approved customers using price book entry settings, placeholder products, and per-account approvals scoped to individual products or entire product categories, with quantity and date controls.","type":"Help_Documentation","video_url":"","keywords":"restricted products, restricted, product visibility, customer approval, permitted restricted product, placeholder product, product category, category permissions, pricebook entry, purchase approval","last_modified":"2026-08-21T07:12:35+0000","body_markdown":"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.\n\n### What can you do with it?\n\nIn situations where customers need approval to purchase, you can:\n\n-   Hide a restricted product from a Store\n-   Show a restricted product but not allow customers to purchase it\n-   Show a restricted product but hide its price\n-   Show a restricted product with only some of it’s product data\n\nIn situations where a customer DOES have approval to purchase, you can:\n\n-   Show the restricted product\n-   Limit the quantity the can purchase (or allow unlimited)\n-   Limit the date range during which they can purchase\n-   Approve or reject orders of restricted products in Salesforce based on the customer’s approval\n\n### How do you configure it?\n\n#### Creating a restricted product\n\nRestricting Products works via the `Pricebook Entry` object and each of the following fields will need to be added to the Pricebook Entry page layout:\n\n-   `Restricted` `(Checkbox)`\n-   `Display If Restricted` `(Checkbox)`\n-   `Restricted Text` `(Text(128))`\n\nA 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).\n\nIf `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.\n\nIf `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.\n\n### Creating a placeholder product\n\n#### What are placeholder products?\n\nPlaceholder 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.\n\nTo 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.\n\nWhen 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.\n\n\u003e Without approval to buy a restricted product:\n\u003e\n\u003e -   Visiting the URL for the restricted product will redirect to the placeholder\n\u003e -   The placeholder itself will not show up in any search results unless standing in for it’s restricted product\n\u003e -   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\n\u003e -   The placeholder is excluded from the searchable product list, so searching for it won’t work\n\u003e\n\u003e With approval to buy a restricted product:\n\u003e\n\u003e -   Visiting the URL for the placeholder product will redirect to the normal product\n\u003e -   Searching works as above\n\n### Approving a customer to buy a restricted product\n\nThe other side to restricting products, is allowing certain customers to purchase them. That is done via the Permitted Restricted Product object.\n\n`Permitted Restricted Product:`\n\n-   `Account` `(Lookup)`\n-   `Product` `(Lookup)`\n-   `Product Category` `(Lookup)`\n-   `Store` `(Lookup)`\n\nUse the `Account` field to specify which customer the approval applies to, and `Store` to scope it to a particular store. You then grant access at one of two levels:\n\n- **Individual product** — set the `Product` lookup to approve a specific restricted product for this customer.\n- **Product category** — set the `Product Category` lookup to approve all restricted products within that category for this customer. This removes the need to create a separate approval record for each product in the category.\n\n-   `Approved From` `(DateTime`)\\`\n-   `Approved Until` `(DateTime)`\n-   `Approved Quantity` `(Number)`\n-   `Unlimited` `(Checkbox)`\n\nSupply the date range for when this approval is valid. Customers will not be able to purchase products using this approval, outside of these dates.\n\nConfigure 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.\n\nIn 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.\n\n-   `Purchased Quantity` `(Number)`\n\nThis 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.\n\n### How do you manage it in Salesforce?\n\nWhen 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.\n\nIf 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.\n\n### Tracking restricted product purchases\n\nWhen 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.\n\n### Voiding a purchase\n\nIf 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.\n\n### Table of scenarios\n\n**Options** — Restricted?, Display if Restricted?, Approval?, Placeholder?, Restricted Text?\n**Results** — Product Shown, Can Buy?, Price Shown\n\n| Restricted? | Display if Restricted? | Approval? | Placeholder? | Restricted Text? | Product Shown | Can Buy? | Price Shown |\n|---|---|---|---|---|---|---|---|\n| TRUE | FALSE | FALSE | N/A | N/A | None | NO | N/A |\n| TRUE | TRUE | FALSE | TRUE | N/A | Placeholder | NO | Placeholder Price |\n| TRUE | TRUE | FALSE | FALSE | PRESENT | Master | NO | Restricted Text |\n| TRUE | TRUE | FALSE | FALSE | BLANK | Master | NO | Normal Price |\n| TRUE | N/A | TRUE | N/A | N/A | Master | YES | Normal Price |\n| FALSE | N/A | N/A | N/A | N/A | Master | YES | Normal Price |"}