PSA – Cost Price Lists

This blog post is one of a series I have created which covers all aspects of Project Service Automation (PSA) which is part of Microsoft’s Dynamics 365. In this post, I will describe cost price list and organisational units.

Organisational Units

An organisational unit is a division of the company. It has multiple purposes in PSA, one of which is to link to the cost price lists that will be used on an opportunity.

You can access the organisational units entity from the Project Service area of CRM. As shown below.

Below you can see that I have created an Organisational unit for the UK division of my demo company. Notice that the currency is pound sterling and is readonly. The currency must be defined when you create the unit and cannot be changed. This is significant as any price lists you associate with the organizational unit must also be in the same currency. Notice that I have added the cost prices for UK resources to this unit. Meaning that whenever we start an opportunity for this division CRM will know what cost prices to apply when calculating the profitability of a potential project.

Cost Price Lists

Cost price lists define the costs of resources based on their role and their organizational unit. For example, in the UK a developer may cost £500 per day. But if an off shore developer from the Indian division of the company is used the cost price might be £200 per day. Let’s look at creating a cost price list, my 2017 price list is shown below.

Before we start adding prices (costs) for specific roles we first need to define several fields. These are itemised below.

Field Description
Name A mandatory field that is simply a text field to describe the purpose of this price list.
Context The context for a cost price list MUST be set to “Cost”. Other options include Sales and Purchase.
Start Date An optional date that defines when these costs become effective.
End Date An optional date that defined when these costs will expire.
Currency A mandatory field that cannot be changed after the price list is created. The currency used here must match the organizational unit that this cost price list will be associated with.
Time Unit Once set the time unit cannot be changed. It will default to hours but you can see in my example that I have changed it to days. This field selects the possible units from the “Time” unit group.

You’ll find some more detail on unit groups later in this post.

Description An optional text field that can be used to describe the purpose of this price list.

Role Prices

Once you have created the cost price list you can add role prices. The concept of a role price is to define the cost of a type of resource per organizational unit. (Or resourcing unit.)

In my example above I have shown that a developer in the UK will cost £550 but using a developer from India will cost £200 per day.

Below you can see the quick create form that is used when adding role prices to an organisational unit. Notice that the units cannot be changed. As all of the prices need to be expressed in terms of the units defined on the cost price list. In my case “days”. Also, the currency for all of the role prices will match the currency defined on the price list.

Unit Groups

In my example the price list I used worked in days. The possible time units can be configured in the unit groups option. In settings navigate to the Unit Groups option, which you will find in the Product Catalog area.

In unit groups, you will find a unit group called “Time”. Mine is shown below. The units option lets you define the units of time that you wish to operate in.

Notice that the base unit is hours. Then a day is defined as 8 hours. You could change this or add additional units. For example, you could add a unit of “Week”, which could be defined as 5 days or maybe 40 hours etc.

Having cost prices defined is an important part of the sales process within PSA, as without these you can never predict the profitability of your projects. Hopefully this post has explained the key concepts involved. J

10 thoughts on “PSA – Cost Price Lists

  1. Pingback: PSA – Opporunities | Microsoft Dynamics CRM and Unified Service Desk

  2. Pingback: PSA – Complete Guide | Microsoft Dynamics CRM and Unified Service Desk

    • Sales price is the price that you’d bill the customer. Cost price is how much the resource costs you. For example, I might hire a contractor and pay them £500 per day. £500 would be my cost price. But I might bill them out to a customer at £800 per day. So £800 would be my sales price. The different between these £300 would be my profit.


  3. Pingback: PSA – Invoicing (Part One) | Microsoft Dynamics CRM and Unified Service Desk

  4. Hey Neil, love your posts, very helpful. I am using a newer version of PSA and Organisation Units no longer have a place on the main setup for to specify the applicable cost price list. Do you know where this is now selected??
    Cheers, Jamie


  5. Hi Neil,

    Will Role price list works for Field service. My requirement is I have to bill customer for a service based on the resource role means

    For example: I have service called car repair in which there is a possibility senior or junior technician assign to that task.

    Depend upon resource role need to finalize the cost.

    Will Role price list works for this scenario


    • I don’t think so as field service price list items have some extensions for billing the first “hour” at a fixed rate or free etc. So a different logic is used. You’d need a service for a senior and a service for a junior.

      I guess this might make sense as in your incident you might also need to allow extra time for the junior. Or associate with different proficiency levels on their characteristics etc.

      Scheduling might also need this sort of information to suggest if a senior or junior is the right type of resource for a particular job.

      Hope this helps


      Liked by 1 person

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s