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
////////////////////////////
...
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
LWC component for Price book ?