Your analysis is accurate. Out-of-the-box (OOTB) Dynamics 365 Sales currently handles optional products within bundles by adding their individual prices to the bundle’s total, which conflicts with your need to maintain a fixed bundle price regardless of included items.
To achieve your pricing and document requirements, you'll indeed need a custom solution. Setting products as "optional" within the bundle lets you remove them in opportunities, but their prices will aggregate with the bundle’s, affecting both the displayed price in the opportunity and any generated documents.
Defining each product’s price (condition 1) is straightforward, but including them as required products in bundles limits their removal in an opportunity, conflicting with condition 3. Conversely, marking products as optional allows their removal but introduces the issue of their prices being added to the bundle price, which conflicts with conditions 3 and 4.
For document generation, where only the bundle price should be visible, setting products as optional may result in displaying their individual prices, which you want to avoid.
To address this, implementing a custom price engine is indeed a suitable approach. Here’s how it could help:
Control the Opportunity Pricing Logic: The custom pricing engine can override the default behavior, allowing you to skip the sum of optional product prices in the bundle, so the bundle maintains its fixed price.
Document Customization: You could customize the document generation process to exclude optional product prices, ensuring that only the fixed bundle price appears.
Here’s a high-level approach:
Custom Pricing Engine: Implement a custom pricing engine that overrides the default behavior during the Opportunity to Order process. This engine would set the price of optional products to zero within the bundle context, ensuring only the bundle price is considered.
Custom Document Generation: Use a custom document generation solution to control how prices are displayed. The custom engine can prevent optional product prices from appearing or being added in any documents, displaying only the bundle price as required.
This setup would give you the flexibility to meet all four conditions in the Opportunity-to-Order process.
Stay up to date on forum activity by subscribing. You can also customize your in-app and email Notification settings across all subscriptions.
André Arnaud de Cal... 291,228 Super User 2024 Season 2
Martin Dráb 230,056 Most Valuable Professional
nmaenpaa 101,156