Unified Pricing Management Part 1
Introduction
Unified Pricing Management in Dynamics 365 Finance and Operations provides a centralized framework to define, manage, and execute pricing strategies across products, customers, and sales channels. This document introduces the key concepts of Unified
Pricing Management, including price structures, pricing attributes, price groups, discounts, charges, rebates, and the basic setup required to make pricing logic work effectively.
Learning Series Roadmap
This document is Part 1 of the Unified Pricing Management learning series. The goal of this series is to build the foundation first and then gradually move into detailed configuration, examples, and end-to-end pricing scenarios.
| Part | Focus |
| Part 1 | UPM fundamentals, pricing attributes, price component codes, and pricing trees and basic setup |
| Part 2 | Base price, trade agreements, multiple price component codes, Margin adjustments |
| Part 3 | Discounts |
| Part 4 | Charges and Basics of Rebates |
What You Will Learn in Part 1
- Understanding the purpose of Unified Pricing Management
- Learning how price attributes influence pricing decisions
- Understanding how UPM computes the final price
- Reviewing the basic setup sequence required before advanced pricing rules are configured
What is Unified Pricing Management?
Unified Pricing Management (UPM) is a centralized pricing framework in Dynamics 365 Finance and Operations that helps businesses define, manage, and execute pricing rules across customers, products, sales channels, and order scenarios. It brings together base prices, margin adjustments, discounts, charges, and rebates into a structured pricing
sequence so the system can calculate the most relevant sales price based on defined attributes and business rules.
The Pricing structure
Pricing Components

Price attributes
Defines the Price keeping in mind the
- Item (Product Attribute)- Product Category, Brand, Product
- Customers (Customer Attribute)- Based on customer group, Region in which customer resides
- Sales Order Header (Order Attribute)
- Sales Order Line (Order Attribute)
The above elements are kept in mind while mapping the below attributes
In Unified Pricing Management, price attributes are the criteria the pricing engine uses to select the right pricing rule for a sales order or line. They come from customer, product, order header, and order line data, and are grouped into header and line attribute groups. These groups are combined with pricing component codes (explained below), while ranking determines priority when multiple combinations match. In short, price attributes turn business segmentation—such as region, customer group, product category, brand, color, delivery method, or quantity—into executable pricing logic for prices, adjustments, discounts, charges, and rebates.
Price Attribute Group
These attributes can be used individually or in combination with a price group.
A price attribute group is a reusable set of attributes used to decide when a pricing rule applies. It groups customer, product, order header, or order line details so the pricing engine can find the right rule.
Defining a Price Attribute group
- Selection of Source Attributes (Customer, Order, Product)
- Selection of Specific Attribute within source (Customer group, Product category, Sales order Line level-Method of Delivery)
- Grouping of Attributes and Ranking for order header and line level which will eventually determine the price
This can be defined along any level of the Pricing component as defined above making the framework highly configurable
Header attributes

Line attributes

Price Group (Optional)
A price group is used to bundle pricing conditions, such as customer group, sales channel, order type, or delivery method, so the same pricing rule or promotion can be applied
consistently.
In Unified Pricing Management, price groups make pricing setup easier by grouping related conditions together. Instead of updating each trade agreement, price adjustment, or
discount separately, you can link them to a price group and manage the pricing logic in one place.
It can be bundled based on: –
- Product for a specific customer
- Channel pricing- Online vs Offline
- Affiliations and Loyalty

Note: Price group only works across the top three pricing components (Price, Margin Adjustments and Discounts)

Computing the Price
Finding the Sales Price of the Item

Applying Margin Component Price Adjustments
Once the Price is determined, the next step is defining the required Margin. This can be a set amount or Percentage, Quantity based and bundled with other margin components. These are Adjustments can be applied to the price at the time of order, before discounts or charges are factored in.
Applicable Discounts

Discount Concurrency Control for Discount compounding: Set of Rules on how these discounts can be applied. This is covered in more details in the MCPA and discounts section.
- Exclusive: Cannot be clubbed with any other With Multiple exclusive discount facility, the highest discount will be used
- Best Price: Considers multiple discounts for customers and ensures that the best price is applied
- Compounded: Multiple discounts to be Also defines how compounding is to be applied. Is it based on original price or already compounded amount
- Always Apply: Discount is always applied irrespective of other Always applied last in sequence
- Price Attribute Ranking

Charge Attributes
- Can be applied based on Fixed amount, Percentage or Unit based
- Applies automatically after discounts
- Can be applied on Sales Order Header or Line level
- Can be tired or based on total order Attributes of Charges
- Delivery Charges- Based on Mode of Delivery (Standard, Expedited )
- Method of payment – Cash on delivery vs Online Payment
- Miscellaneous – Based on Order type, Product Category and Customer group
Rebates
- Revenue based vs Sales Quantity Based
- Calculation can be per invoice, Specific period, lifetime agreement
- Can be Value based, Quantity based and lumpsum rebates
- Methods: Flat, Tiered, Incremental Tiered, Fixed amount
Formulae set
| Stage | Formula | Purpose |
| 1. Base sales price |
Searched Price |
Identifies the applicable base price for the item based on pricing setup and matching attributes. |
| 2. After margin adjustment | Searched Price + Margin Adjustments | Adds configured margin adjustments before discounts and charges are applied. |
| 3. After discount | Searched Price + Margin Adjustments – Discounts | Applies eligible discounts based on pricing rules and discount behavior. |
|
4. After charges |
Searched Price + Margin
Adjustments – Discounts + Charges |
Adds applicable charges such as delivery, payment, or miscellaneous charges. |
| 5. Final price after rebates | Searched Price + Margin
Adjustments – Discounts + Charges – Rebates |
Reflects the final price impact after applicable rebate considerations. |
This will be covered in many details in the upcoming portion of the learning series
This is an introduction to Unified Pricing management at ground level to build an
understanding around endless possibilities. We will dive deep into each of these in the upcoming sections
Enabling Pricing Management

Once the above feature is enabled, Pricing Management as a module starts appearing

Based on the discussions we have had above, let us validate the setups required to see Pricing management operate in full swing
Setups
Creating Attribute Types
In the pricing context, attribute types are important because they provide the base structure for creating attributes such as Region, Brand, Color, Customer Segment, or
Delivery Method. Once an attribute is created from an attribute type and marked as usable for pricing, it can be considered by the pricing engine while evaluating price rules,
discounts, charges, or other pricing conditions
Navigation: Product Information Management > Setup > Attribute types
The attribute type needs to be named. The data of the type can vary from text, Boolean
integers etc. In this example, we have the fixed list enabled and the fixed values are defined under values section

To make this attribute visible to the Pricing engine it is important to enable the flag ‘Can be used as price attribute’ Under Attributes form
Creating Attribute
Navigation: Product Information Management > Setup > Attribute
The attribute is linked to the attribute type defined above. The flag is enabled for the pricing engine to consider this attribute as shown below

When Pricing Management is enabled in the Pricing Management Parameters (Pricing Management > Setup), these attributes can be mapped on the customer master as shown below.


Creating Product Attribute and Assigning It to Released Products

The same is assigned to the Released Products item 1000 (through Procurement category)


Setting Up Pricing Attribute Groups
Defining a Price Attribute group
- Selection of Source Attributes (Customer, Order, Product)
- Selection of Specific Attribute within source (Customer group, Product category, Sales order Line level-Method of Delivery)
- Grouping of Attributes and Ranking for order header and line level which will eventually determine the price
Navigation: Pricing Management > Setup > Pricing attribute groups

The attribute can be defined at the header and line level. The Header and line level decide whether the Customer is the source for the attribute and/or the product and the tables from where these attributes can be mapped
If the Sales Order matching scope is Header, the customer attributes and sales order header attributes can be defined and ranked
If the Sales Order matching scope is Line, the Product attributes and sales order Line attributes can be defined and ranked
The attributes can be filtered out based on tables as shown below

For the initial examples, we will be defining the basic Customer source data and Product data for the pricing.
For Customer our pricing will depend on
- Customer Region
For the Product, our pricing will depend on
- Color

Creating Price Component Code
Navigation: Pricing Management > Setup > Pricing component codes Price component code defines the pricing component being configured
During price resolution, the system evaluates the price component code against the
defined header and line price attribute groups to determine all valid price attribute group combinations. Each combination carries a rank, and the system always prioritizes the highest ranked combination first, provided a matching price agreement line exists, to determine the unit price on the sales order line.


Other types of Pricing agreement codes
- Base Price – Purchase Price
- Base Price – Sales Price
- Base Price – Inventory Price
- Margin component code
- Discount
- Auto Charges
- Rebates Management
- Shipping Discounts
Pricing Tree
In UPM, a price tree is more than just a priority ladder. It defines the pricing sequence — the order in which the pricing engine evaluates each type of price component (base price,
adjustments, discounts, charges, etc.) to calculate the final sales price on a sales order.
Defining a pricing tree
Navigation: Pricing Management > Setup > Pricing component codes> Pricing Trees

Select the price component code by clicking New on the price component code list, select the price component code and define the pricing sequence as a base setup. Once the Tree is defined, enable the same.
With the above setup, the trade agreement should be prioritized over Base Price and pricing component code should also be considered.
We will visualize the impact of different price components in the next part of this learning series.
Key Takeaways from Part 1
- The purpose of Unified Pricing Management and how it centralizes pricing decisions in Dynamics 365 Finance and Operations.
- The role of price attributes and price attribute groups in making pricing rules more flexible and attribute
- How UPM calculates the final sales price using base price, margin adjustments, discounts, charges, and
- The basic setup sequence required before configuring advanced pricing
Coming Up Next
This completes Part 1 of the Unified Pricing Management learning series. In this section, we built the foundation by understanding the purpose of UPM, the role of price attributes, the pricing calculation flow, and the basic setup sequence.
In Part 2, we will go deeper into base prices, trade agreements, MCPA price component codes, pricing trees, and how different pricing components influence the final sales price through practical examples.
Related Posts
Leave a Reply Cancel reply
You must be logged in to post a comment.
Categories
- Advanced Warehouse Management (4)
- Expense Management Process (1)
- Free In Person Trainings (2)
- Free Microsoft Training Videos on YouTube (19)
- Intensive Microsoft Bootcamps: Learn Fast, Learn Smart (11)
- Inventory Management (1)
- Life Cycle Services (1)
- Microsoft Copilot Studio (4)
- Microsoft D365 Security (1)
- Microsoft Dynamics 365 Finance and Operations (25)
- Microsoft Dynamics Finance (28)
- Microsoft Dynamics HR & Payroll (4)
- Microsoft Dynamics Retail & Commerce (2)
- Microsoft Dynamics Supply Chain Management (23)
- Uncategorized (5)
