top of page
  • Sebastian Sieber

#5 - D365 Project Operations Advent Calendar: Discover the powerful Role Pricing

Updated: Dec 17, 2023

Welcome back to Day number five of our little project - the Dynamics 365 Project Operations Calendar! Come in and find out what is on the menu today 🎅🏼

fifth day of Advents calendar

Let's talk about pricing - Price Lists in Project Operations

In case you follow the series you may already have an idea after yesterday we will talk about pricing soon.

In case you have some Sales knowledge, everything happens on the same table. The pricing is crucial to overview costs and margins for the project planning and estimation. Final pricing for invoicing will be applied with the approval of time entry records and the creation of Actuals.

Different Context Types of Price Lists

In total, we have three different options to define the context of a price list:

  • Sales - Prices offered, quoted and later invoiced to the customer

  • Cost - Defines your costs facing the Sales Prices for profitability

  • Purchase - Foundation for Subcontractor Handling (optional)

You can only set the context of the price list once with create the price list - an update later is blocked.

Example Cost Price List

You can find the Price Lists in the Sitemap of your Project Operations Model Driven App in the Sales Section.

Role Prices and Date effective Price Overrides

The main concept to determine pricing is based on Resource Roles, e.g. Consultant. So each Consultant resource is sold for the same price and also costs the same price.

Of course, you can make more adjustments and set up certain scenarios.

Cost price list role prices

In our example, we have a look at the cost price list. As you can see we define a Price for each Role. Also, we have an empty line in the top, in order to define pricing for every Role and Scenario not listed here - and as a fallback price.

The second thing we can see in the list, it's possible to add Roles multiple times for different scenarios.

multi-select of role prices

The Consultant Role is added in total three times. Once without a Resourcing Unit, once with the Demo, and once with the Europe Resourcing Unit. All with different pricing.

Depending on the employee unit - defined on the Bookable Resource and Project Team Member - the cost price will differ for the Consultants.

Even using multiple currencies on the same price list (base here is US Dollar) is possible.

Furthermore, you can as well add Markups and define Category and Material prices all in one price list.

With all these different options you're able to set up the pricing structure highly individual for your business process. If the out-of-the-box metrics are not enough and you are pricing as other and additional parameters, you can extend this with custom values too.

In addition to the already given possibilities a recently added feature can help to reduce the amount of different price lists and scenarios - Role Price Override.

Here you can select a time frame where the original pricing receives a percentage update. So you can act quickly and dynamically on new market situations or structure the pricing across the organization by defining a specific Resourcing Unit per override.

Add role price overrides

Once you select one or more Role prices in the list, you will find the option Add Role Price Override in the top right corner. Click it to open up the quick create form and add the override.

define role price overrides

You can choose the Effective From date - the start date of the new pricing rule.

Set the Price Change Percent - that's the ratio the price will be adapted to, starting from the date you choose. As you can see, you can use negative values for a cheaper cost price or positive values to increase the price. Both work perfectly fine.

In case the override price should be only applicable to a certain Unit in your organization you can define this on the Scope lookup.

It's possible to set up multiple Role Price Overrides for the same Role Price - everything is handled based on the start date, so be clear about it. In case you have multiple overrides with the same date for the same role price, the system will pick the one that got created first.

In our scenario, we have a discount of 10% for all Front End Developers in the Europe section of the company.

In my case, I now switched the Form to the Price Level form and with that, I have access to the nested grid view to always have an eye on my overrides:

overview of role price overrides

Small hint: In case you don't want to provide the override as a percentage value, you can also open the desired Role price and add the Role Price Override there - it enables you to choose the exact price amount:

How to define Date Effective Overrides without percentage values

How to define Date Effective Overrides without percentage values

With this set of tools and a well-defined concept of role prices, you should be able to set up the pricing in a maintainable manner.


Worth mentioning are the Parameter Settings in your environment. You will find them in the Settings Area of the Project Operations Model Driven App

Project Parameter settings

This settings record provides you with different options on how to handle pricing updates and how you would like price lists to default during quotation and contract creation.

Pretty sure that this will be individual to your use cases but what you should avoid is performing a full copy of your price list with each Quote and Contract. It will create massive amounts of price lists with all the different role prices over the years which costs time in creating and money for storage.

Last, but not least - there is no exchange rate handling on the CE (Customer Engagement) side, same as taxation. This is a task for the ERP.

In case you do use the Project Operations Integrated deployment with Finance and Operations you will have these capabilities, otherwise, that's something to be handled somewhere else.

Hope you enjoyed this little ride on pricing and it can give you an idea of how to set up role pricing in your organization. Already thrilled to see what happens tomorrow! 😊🎅🏼


bottom of page