Dynamics Retail Discount Extensibility – Engagement Notes
I have talked to many partners about pricing and discount extensibility, not just for Dynamics 365 for Retail, but also for AX 2012. I thought to share the experience.
Full picture of customer discount scenarios
I often get asked about a specific discount customization, yet I always ask for full discount scenarios. For example, buy a phone and get all its accessories 20% off. In this case, the discount by itself is easy to understand.
The question I would always ask is what happens when there is another discount for the phone or its accessories: do they complete or do they compound?
In the end, we need to understand all of the customer's discount offerings, and how they would expect to handle concurrency. To me, it is paramount for the customer and the partner to understand the full picture. The last thing you want is unexpected behaviors, and there are plenty if we do not think or probe.
The partner would sometimes have to go back to the customer for the answers. It could be tricky, as it could increase the scope of what to deliver for the customer. In the worse cases, it could be like opening a can of worms. The good news is that customers in general would like to have a transparent and easy-to-understand discount setup.
A main part of the full picture is the discount concurrency control model, which we will cover next,
Best price within priority and compound across
We have another model, so in reality, you could choose that one, but the new model, best price within priority and compound across, is simpler, more flexible and easier to understand. From all of my engagements so far, the new model suit the customers better. In fact, I do not see a reason to use the old model. (Prove me wrong if you will.)
Individual discount design
I have covered individual discount design in many posts before. In the end, technically as well as functionally, the goal is to strike a balance between a maintainable complexity and features.
Sample and tests in SDK
The only thing you need to play with pricing sample and tests in SDK is visual studio. Please play with it. You have no excuse not to.
Related: Retail Discount Concurrency Control - Compete Within Priority and Compound Across
Related: Dynamics Retail Discount Extensibility – Sample Test