Best Practices Using Pricebooks and Products

Best Practices Using Pricebooks and Products

Define your Product:

A Product is a service or item that the company sells to the customers. Once you have added the Products, you can set the price of the product per unit based on your business. In Salesforce, Product is a Standard object having standard fields and tabs. You can add your custom fields to customize Product object as per your business requirement. Products can be added to the Opportunity allowing you to have an correct inventory and also make your forecasting accurate.

What is Price Book:

The Price Book will provide the list of products and their prices per unit. You can create multiple price books to maintain different prices for the same product based on your business needs. Salesforce will always provide your a Standard Price Book. The moment you add a Product into Salesforce and set the price of the Product, that Product will go into Standard Price Book. But you can create Custom Price Book as well.

Important Notes on Creating Products:

  1. Permission needed to create Products are “read” and “create” permission on Product object.
  2. You can create Products by cloning an existing Product. But if you don’t have sharing access in any of the Price Books, then entries for that Price Book and Product combination will not be created. Similarly if you have read-only access on any fields, value of that field will not be carried over to the cloned record.
  3. It is recommended to not have more than 2,000,000 products otherwise it may impact the performance.
  4. Products always needs an active Price Book so that you can add the product to that Price Book.
  5. Product object is having a standard field – Product Currency. This field holds the currency of the product. In a multi currency organization, if the product currency is different from user’s currency, then product currency will be converted into user’s currency and both the values will be displayed. (Converted amount will be displayed in parentheses).

Sharing Price Books:

  1. Admin or user with with “Edit” permission on Price Book can share the same with more users, groups, roles and territories.
  2. You can’t make it more restrictive.
  3. Sharing option will only be available when the OWD of Price Book is either “No Access” or “View Only”.

Want to remove Price Books? Need to know below points:

  1. You can delete, deactivate or archive Custom Price Books. It is having no impact on other Custom Price Books. These action will impact Opportunity and Quotes.
  2. You need to change association with Opportunity or Quotes before removing an associated Price Book.
  3. For Standard Price Book, you can deactivate the same, but can’t delete or achieve it.
  4. You can’t delete a Price Book while it’s in use on Opportunities or Quotes. Trying to do the same will create a list of Opportunities or Quotes where the Price Book is being used.
  5. You can deactivate a Price Book while it is being used in Opportunities or Quotes. Managing Entries is also possible for deactivated Price Books and you can re-activate the same as well.
  6. You can archive a Price Book even if it being used in Opportunities or Quotes. Archived or Deleted Price Books can’t be recovered.

Want to remove Products from Price Books?

  1. You can remove Products from a Price Book as long as that Price Book + Product combination is not being used in any existing Opportunity or Quotes. Removing Products from a Price Book will not impact other Price Books where the same Products are listed as well.
  2. If a Product + Price Book combination is being used in any of the existing Opportunity or Quotes and you want to remove the Product from that Price Book, you have three options, which is explained here (See Image Below)
Important Note – While associating Products with an Opportunity, you need to select the Price Book first. An Opportunity can have Products only from one Price Book.

Relationship between Product, Price Book and PricebookEntry


  1. Products are represented by Standard Object – Product2.
  2. PriceBooks are represented by Standard Object – Pricebook2
  3. Each Pricebook can have zero or more entries. Each of these entries are stored inside the Standard Object – PricebookEntry. Each entry in PricebookEntry defines the cost of the Products in a particular currency.
  4. These three objects – Product2, Pricebook2 and PricebookEntry will only be available if Product is enabled in the organization.

Data Model - PricebookEntry

The PricebookEntry is the Junction Object between Product and Price Book. (See Image Below)

Data Model - OpportunityLineItem

The OpportunityLineItem is the Junction Object between Opportunity and PricebookEntry.  Below is the flow diagram depicting the process to load Products and setup PriceBook through API.

    • Related Articles

    • Best Practices - Salesforce Changesets

      What are the requirements for change sets utilization? Sending of these messages necessitates a deployment connection , which means that they can be sent only, like earlier mentioned, between ventures that are affiliated to each other. However, the ...
    • Salesforce - Sandbox Management Best Practices

      Common use cases for each type of sandbox and recommended best practices Developer - may be refreshed every day, does not include any data automatically but allows 200 MB of data to be imported or created. The most agile and plentiful sandbox type ...
    • Lead Management Tips And Best Practices

      Companies that use Salesforce to boost their sales funnel and close more deals soon discover that they need to do more than just track sales performance and create multiple pipeline dashboards. Rather, this process begins with the creation of a ...
    • Improve performance and speed in Lightning Experience

      If you or your Users are experiencing slow page-loading times when using Lightning Experience, it may be related to one or more of the following issue types. Geographical Device Browser Salesforce organization configuration issues Please review issue ...
    • SalesForce - Web to Lead Forms (OID Protection)

      NOTES OF CAUTION WHEN USING THIRD PARTY VENDORS/FORMS When using a third party form/vendor, the vendor must HIDE the SalesForce Org ID (OID). If the OID is compromised by a BOT etc., you will never be able to stop Spam as the Bots will send directly ...