Business Central Projects: Resource Cost G/L Posting
- Ken Sebahar

- Nov 4
- 9 min read
Many types of Projects will require the use of resources, such as labor, equipment, or other non-inventory types of costs to complete. Examples of these types of Projects include building a custom machine, or designing a new office. As a matter of fact, many Projects require only labor, such an internal research and development project or a software development project.
When internal labor costs are distributed to Projects, it is very important that the flow of these labor costs are properly recorded on the income statement, especially when Business Central's Project WIP functionality is being used.
In this post, we will walk through the process of applying Resource costs to Projects, focusing our attention on the G/L Entry flow, to verify how the system creates General Ledger Entries to reflect these costs on both the balance sheet and the income statement.
Note: this post will cover the consumption of internal labor to Projects, although the same concepts can be applied to the use of internal machines or equipment, which could also be set up as "Resources" in Business Central.
Scenario Overview
Cronus USA, Inc. has created a new Project to develop a new Cold Lager beer. The Project has been set up as follows in Business Central:

This Project has a single Project Task which will be used to estimate and record all project costs. The total budgeted cost for this Project is $6,000.00. We can see the details of these costs if we drill-down into the Project Planning Lines:

The estimated Project costs are comprised of both Resources (labor and other non-inventory costs) as well as Items that must be used to successfully complete the Project. The expected Resources required to complete this Project are highlighted above.
For this specific Project:
40 Hours of labor is expected for "Project development related tasks"
70 Hours of labor is expected for "Brewery operations (brewing and bottling)
Expected shipping costs of $250.00 is expected.
In this example, the "Budget" Resource lines are created using a generic "LABOR" Resource. This Resource has a defined "Unit Cost" of $50.00/hour. This is a common scenario when building Project budgets because it is not yet known which specific Resources (employees) will be actually be doing the work. The $50.00/hour unit cost assigned to the "LABOR" Resource is an average rate associated with the employees that are part of this team that would typically complete this type of work.
In many cases, several generic labor-type Resources may be created with Business Central when there is a large difference in the hourly rate of two different types of workers. For example, electrical engineers may have an average rate of $60.00 assigned while machine operators may have an average rate of $40.00 assigned. Each type of Resource would then be estimated separately to provide a better estimate of the total cost of the Project.
PART 1: Recording the usage of Resources to a Project
To keep things simple, we will process a single entry for 10 hours of project development hours, for "Recipe formulation" work performed by Mary Dempsey.
The Project Journal page is used to record this entry:

You will notice that the "Unit Cost" on the Project Journal line for Mary is $55.00. This value was defaulted from the "Unit Cost" field on the Resource Card page for Resource No. MARY. Therefore, an actual total cost of $550.00 will be applied to the Project.
The resulting Project Ledger Entry created when the above Project Journal has been approved and posted:

Here is the interesting part: there are no G/L Entries created when "Resource" costs are posted against a Project.
To explain why no entry is posted to the General Ledger, let's focus on this example above where 10 hours of Mary's time has been applied to Project No. J00110.
Mary is an employee of Cronus USA, Inc. Therefore, Mary receives a paycheck each week (it doesn't matter whether Mary is paid on an hourly basis or via a fixed weekly salary). This weekly payroll expense is typically recorded to the General Ledger via a weekly payroll journal entry which will typically debit "Payroll Expense" G/L Account(s) and will credit "Cash".
In many organizations, "Payroll Expense" will include the direct amount paid to Mary plus additional related expenses such as payroll taxes, healthcare plan, retirement contribution, and even payroll processing fees. In this example, this "gross payroll expense" hourly rate for Mary equals $55.00, so this is the "Unit Cost" value assigned to the Resource Card for Mary and the hourly cost used to post labor costs to Projects.
To continue, we will review two different scenarios. In the first scenario, the Project WIP calculations and posting functionality in Business Central is not used. While in the second scenario, Project WIP is used.
The key concept when recording G/L Entries for Project-related labor costs is to ensure that labor expenses are reflected on the income statement in the same period as the revenue. If this concept is not followed, the profitability reflected on the income statement will fluctuate from period to period, creating "lumpiness" in the profit reported on the income statement that does not truly reflect the actual performance of the business during the period.
Scenario 1 - No Project WIP
If Project WIP is not used, then no additional G/L Entries are required beyond the payroll journal entry described above.
In this scenario, the expense for Mary (and all other Resources) will always be recorded through the period payroll G/L Entry and thereby reflected on the income statement in the same month that the Project work was performed.
This scenario is perfectly acceptable for two types of Projects:
1) Internal Projects where there is no revenue to be recognized. In this case, we do not need to worry about matching the recognition of cost with the recognition of revenue, and the actual labor expenses will be recorded on the income statement through the periodic payroll entry.
Full periodic analysis of each Project's activity can still be completed through the use of the Project Ledger Entries that are generated when labor costs are posted against Projects through the Project Journal (using the "Posting Date" assigned to each Project Ledger Entry).
2) Project scenarios where there is revenue to be recognized, and the periodic amount billed to the customer for the period is directly related to the actual Resource hours posted to the Project. For example, if Mary spent 10 hours for a total cost of $550.00 and the customer is therefore invoiced $750.00, then the revenue and expense are recognized in the same period and the income statement properly reflects the activity for the period.
Scenario 2 - Project WIP
If Project WIP is used, then there are additional G/L Entries created within Business Central related to the Resource usage recorded against each Project.
As mentioned above, primary goal of Project WIP is to ensure that Project Sales (or revenue) matches the Project Costs that are recognized in each period.
The specific entries created when Project WIP costs are calculated and posted depends on several factors, including the WIP Method Code that has been assigned to the Project, how the "WIP-Total" field has been set on the Project Task, and what percentage of the Project has been billed and/or costed.
When the Calculate WIP... process is run, how the WIP Entries and WIP G/L Entries are generated is based on two fields on the Project Card: WIP Method and WIP Posting Method.

We will not explain the differences between the various WIP Method Codes in this article. If you would like some additional information on how Business Central uses the WIP Method field to calculate and post Project WIP sales and costs, please refer to these articles:
Microsoft Learn - Understanding WIP Methods in Project Management
Speaking Business Central - Business Central Projects: Understanding WIP Methods
Speaking Business Central - Business Central Projects: The Percentage of Completion (POC) WIP Method Scenario
The WIP Posting Method field setting is very important in determining how WIP Entries and WIP G/L Entries are created, and thereby the ability to fully reconcile Project WIP Entries to the General Ledger.
The options available are:
Per Project
Per Project Ledger Entry
Using the "Per Project" WIP Posting Method
When the "Per Project" option is used, the system will consolidate all types of project costs (Items, Resources, G/L Accounts) and will generate a single summarized entry where all of the costs to be included in WIP are consolidated into a single G/L Entry as follows (assuming costs are being placed into Project WIP Cost:
Debit: Project Posting Group – “WIP Costs Account"
Based on the Project Posting Group assigned to the Project (or Project Task).
Typically defined as an Asset type G/L Account.
Credit: Project Posting Group – “Project Costs Applied Account"
Based on the Project Posting Group assigned to the Project.
Typically defined as a Cost of Goods Sold type G/L Account.

The "Project Costs Applied Account" in this scenario can be considered a contra-COGS type account that will typically carry a credit balance. The balance in this account effectively represents the total dollars of project costs that have been applied to projects and transferred into "Project WIP". Eventually, when the WIP Method determines that costs are to be recognized, these costs will be recorded using the "Recognized Costs Account" in the Project Posting Group setup.
The key issue with using the "Per Project" WIP Posting Method is that the system combines all of the types of costs and posts this amount to the General Ledger in a single G/L Account (Project Costs Applied Account). This makes reconciliation of the costs transferred from the COGS section of the income statement to the Asset section (WIP) of the balance sheet very difficult or even impossible, without any way to understand through the G/L Entries that amount of Items that have been transferred to WIP separately from the amount of Resources (labor) that has been transferred to WIP.
Using the "Per Project Ledger Entry" WIP Posting Method
When the "Per Project Ledger Entry" option is used, the system will create separate entries for each individual Project Ledger Entry posted to the Project. This allows for the system to break down the types of project costs (Items, Resources, G/L Accounts) and utilize different setups in the Project Posting Groups as follows:
Debit: Project Posting Group – “WIP Costs Account"
Based on the Project Posting Group assigned to the Project (or Project Task).
Typically defined as an Asset type G/L Account.
Credit: Project Posting Group – “Item Costs Applied Account"
Based on the Project Posting Group assigned to the Project.
Typically defined as a Cost of Goods Sold type G/L Account.
Credit: Project Posting Group – “Resource Costs Applied Account"
Based on the Project Posting Group assigned to the Project.
Typically defined as a Cost of Goods Sold type G/L Account.
Credit: Project Posting Group – “G/L Costs Applied Account"
Based on the Project Posting Group assigned to the Project.
Typically defined as a Cost of Goods Sold type G/L Account.

As you can see from the G/L Entry structure above, this setting will create separate WIP Entries and WIP G/L Entries for each Project Ledger Entry, and these entries will use the appropriate G/L Account based on the type of each Project Ledger Entry record. This functionality provides visibility to the amount of inventory costs that have been transferred to WIP separately from the amount of resource costs (labor) that have been transferred to WIP. Without this breakdown, it can be very difficult to reconcile the financial statements.
Focusing on the Resource entries, ideally the amounts posted to the General Ledger "Payroll Expense" accounts each period (this potentially could include a number of personnel and payroll related accounts) will come close to equaling the amounts credited to the "Resource Costs Applied Account" during the period. This result would be a wash of these entries within the Cost of Goods Sold section. These project costs would all ultimately flow to the Cost of Goods Sold section of the income statement via the "Calculate WIP" process that will debit the "Recognized Costs Account" defined on the Project Posting Group.
A typical issue encountered in the real-world is that the "Unit Cost" on the Resource records has been set too high or too low. The result is that these entries will not wash as expected, resulting in unintended swings in profitability on the income statement. In these cases, either too much or too little in costs are being absorbed into Project WIP (relative to the actual payroll costs incurred through the payroll process each period). If this is the case, conduct a detailed resource cost analysis and adjust the "Unit Cost" on the Resource Card to ensure that the proper amount is being absorbed into Project WIP each period.
While this "Per Project Ledger Entry" WIP Posting Method will result in significantly more G/L Entries each period, it also provides the ability to fully reconcile the Project entries to the G/L entries each period and provides the visibility to the amounts of Item vs. Resource costs absorbed into Project WIP each period.
Finally, while it is possible to reduce the number of Project WIP-related G/L Entries generated each period by changing the "WIP Posting Method" field on a Project-by-Project basis, this will potentially create issues, therefore, I always suggest a single WIP Posting Method be used for all Projects. The good news is that this field setting can be changed so that the future behavior can be changed as needed.
Summary
This topic combines two of the more difficult concepts when setting up Projects: WIP Methods and Project-to-G/L reconciliations. The WIP Method and WIP Posting Method fields set on the Project, as well as the G/L Accounts set on the Project Posting Groups, have an impact on how G/L Entries are generated when using Project WIP.
Congratulations if you made it to this point and understand everything in your first pass. If not, consider yourself normal, and next continue by re-reading this article and then setting up your Project Posting Groups in Business Central and running through a series of Project tests to verify the flow of G/L Entries through Business Central, which is always the best way to level up!



Comments