Understanding Pricing and Discounts Strategies

Aug 4, 2024

Pricing and Discounts Presentation Notes

Introduction

  • The session covers pricing and discounts and changes made since the last talk.
  • Focus on the pricing engine and upcoming changes, along with extensibility scenarios.

Pricing Overview

  • Pricing Engine:

    • A class library used across various Dynamics 365 clients.
    • Variations in implementation depending on the client (e.g., call center vs. retail server).
  • Price Calculation:

    • Three prices calculated for each product added to a transaction:
      1. Base Price: Property on the product.
      2. Trade Agreement Price: Main pricing set.
      3. Adjusted Price: Retail-specific price.
    • Prices are determined based on context (date, channel, customer group).

Pricing Context

  • Different price groups can be set for:

    • Store/region pricing.
    • Specific customer groups (e.g., seniors, students).
  • Trade Agreements vs. Affiliations:

    • Trade agreements allow setting direct prices for customers but are limited in retail scenarios.
    • Affiliations provide flexibility for customer pricing (multiple affiliations can be applied).

Pricing Priorities

  • Pricing Priority:

    • Allows manual ordering of prices and discounts.
    • Pricing engine optimizes for the lowest price.
  • Trade Agreements:

    • Multiple trade agreements can exist for a channel, with priorities determining which one is used.
    • Price engine uses the highest priority agreement, ignoring lower ones.

Final Price Calculation

  1. Start with the base price.
  2. Search for applicable trade agreements.
  3. If found, use the trade agreement price; if not, use base price.
  4. Look for retail price adjustments and apply the highest priority adjustment to determine the final adjusted price.
  • The adjusted price is always less than the trade agreement price.

Discounts Overview

  • Focus on how discounts are applied to transactions and overlap handling.

  • Discount Priority:

    • Discounts are categorized into non-threshold and threshold discounts.
    • Non-threshold discounts are applied first.
  • Interaction Scenarios:

    • Compound discounts can apply to threshold discounts under certain conditions.

Overlapping Discount Handling

  • Configurable settings to manage overlapping discounts.
  • Different calculation modes based on performance goals (fast, medium, absolute best price).

Recent Changes & Improvements

  • Discounts can now be applied on top of price overrides.
  • Improved performance in discount evaluations through dynamic programming.
  • Enhancements in coupon functionality, allowing for multiple uses and better tracking of coupon codes.

Extensibility and API Updates

  • New options for managing concurrency and priority related to discounts.
  • Encouragement for feedback on scenarios that require unique extensibility.

Conclusion

  • Continuous improvements expected in pricing and discount strategies.
  • Open for questions and feedback from attendees.