Solution
Price Book
A price book is a list of products and their prices.
A price book entry is a product with its price as listed in a price book. Each price book entry specifies a currency for the price.
Use Single Price book for Both Currencies ( USD / CAD)
Based on Opportunity Currency, only related records will be shown for addition on particular Quote / Opportunity
You can add products, quote line items, or order products from a single price book only.
Price Book Management
In case of a price change, it is recommended to create a new price book by Cloning the current price book for historical data management and analytics.
To Clone price books with related product entries, Salesforce provides this feature in Classic Mode. This feature may be added in lightning mode by Salesforce in the near future.
Price Book Selection
Prices can be updated by going to Price book and price book entries records.
/////////////////////////////////////////////////
Customize the Clone button. How many hours?
4-6 hours
////////////////////////////
Out of box
How to clone
We can use Classic mode to clone price books with related price book entries. I saw few Flow options to do this inlightningg too but need to test that.
How to update?
We can do manual updates from product objects or update price book entries through the Data loader.
Can one Price Book have two entries for the same product, with different currencies?
Yes, we can have two entries for the same product for different currencies
If a product has two price entries, for two different currencies, would an Opportunity or Quote automatically select the right price entry based on the currency of the Opportunity or Quote?
Yes, based on opportunity currency, it will only show selected currency-based product prices.
To improve the user experience.
Customize the Clone button. How many hours?
4-6 hours
What else do we need to do? How many hours?
Automate Currency, Price book on Opportunity. Also, start date / end date to be added on price book.
Should we use one price with duplicate price entries or two price books for different currencies?
Two price books with different currencies will be more feasible and easy to maintain.
Suggested Changes
...
Add currency on the Price book header
...
Customize the Clone option on Lightening to allow clone with related records ( Price book entries)
...
Only allow price book entries for header currency
...
The currency code should be editable on Price book entries
...
General Design
Always use the Standard Price Book to manage the current active prices.
On the same Standard Price Book, we can store both CAD and USD prices.
To archive the Standard Price Book, you can go to the Classic interface (out of box Salesforce behavior) to clone both header and price entries. Then you can update the Standard Price Book with new prices.
For all existing opportunities, the Price Book will stay the same.
The existing products on the opportunity would keep the old prices.
If you want to use the new price, you must delete the product on the opporutntity, then add it again.
If you want to add a product to the opportunity, that product will use the new price.
By default, if the opportunity’s currency is CAD, you will only see CAD price entries from the Standard Price Book. If the Opportunity’s currency is USD, you will only see USD price entries from the Standard Price Book.
Clone a Price Book
To clone a Price Book with Price Entries, you must go to the Salesforce Classic interface.
In the Salesforce Lightning interface, you can only clone the Price Book header, without Price Entries.
We can customize the Clone button in the Salesforce Lightning interface to copy both header and lines in the Salesforce Lightning interface - it will take about 4 hours to do.
Step 1 - Go to the Classic interface. Navigate to the Standard Price Book. Click the Clone button.
...
Step 2 - Change the Price Book’s Name and Description to something like “Archived as of 012924,” then click the Save button. Salesforce should copy all Price Entries to the new Price Book.
...
Add a New Standard Price Entry
In the Salesforce Lightning, you must go to the Product page to add a new Standard Price.
...
You can choose CAD or USD as the currency.
...
Edit a Standard Price Entry
You can edit the price either on the Product page, or on the Price Book Entry page.
...