WIP Costs in Cost-Plus Projects: General Information

According to the GAAP matching principle, the expenses related to the revenue have to be recorded to the same financial period as the revenue is. Expenses may happen in several financial periods before an invoice is created for the customer for those costs and the generated revenue can be recognized.

To set up the accounting for work-in-progress (WIP) costs for a project so that it corresponds to the GAAP matching principle, you can temporarily allocate the project costs to a work-in-progress account group and then reverse the allocation back to the initial labor account group in the financial period in which an accounts receivable invoice is generated for the project and the revenue is recognized.

Learning Objectives

In this chapter, you will learn how to do the following:

  • Configure an allocation rule to move project costs to a WIP account group
  • Configure a cost-plus project for allocating costs to the WIP account group
  • Temporarily allocate costs of the project to the WIP account group

Applicable Scenarios

If you have a long-term cost-plus project with expenses that have been posted to multiple financial periods but the project has not been billed yet, and in accordance with GAAP you want to record these expenses to the same financial period as the income generated by the invoice, you can move the expenses to the needed period by allocating the project.

Creating the Allocation Rule

To temporarily allocate the costs of a cost-plus project to a WIP account, you create an allocation rule on the Allocation Rules (PM207500) form. By using this allocation rule, the system creates allocation transactions based on the project transactions posted to a particular account group or specific groups, which moves costs from the original accounts to a WIP account.

For this allocation rule, you specify the following settings on the Calculation Rules tab:

  • Allocation Method: Allocate Transactions

    With this setting, the system calculates the amount to allocate by using the underlying transactions and their amounts.

  • Create Allocation Transaction: Selected

    With this check box selected, the system creates the allocation transactions resulting from the step.

  • Select Transactions (Selection Criteria section): Not Allocated Transactions

    The step is applied to project transactions that have not been allocated yet.

  • Branch (Selection Criteria section): The branch to be used as the filtering criteria for project transactions to be allocated.
  • Account Group From (Selection Criteria section): The account group that starts the range of account groups whose transactions are involved in the allocation step
  • Account Group To (Selection Criteria section): The account group that ends the range of account groups whose transactions are involved in this allocation step

    If you want to allocate the transactions posted to a single account group, you select the same account group in the Account Group From and Account Group To boxes.

  • If @Rate is not defined (Rate Settings section): Set @Rate to 0

    You do not need to adjust the quantity and amount of the allocation transaction, so you will not use rates in the formulas of the allocation rule.

  • Quantity Formula (Calculation Settings section): =[PMTran.Qty]
  • Billable Qty. Formula (Calculation Settings section): =[PMTran.BillableQty]
  • Amount Formula (Calculation Settings section): =[PMTran.Amount]

    As the quantity, billable quantity, and amount of the allocation transaction, the system uses the corresponding values of the original transaction. You do not modify the quantity and amount of the original transactions and just move them to a temporary WIP account as is.

  • Description Formula (Calculation Settings section): The description of the created allocation transaction

You specify the following settings for the allocation rule on the Allocation Settings tab:

  • Post Transaction to GL (Transaction Options section): Selected

    With this check box selected, allocation transactions and reversing allocation transactions are posted to the general ledger.

  • Reverse Allocation (Transaction Reversal section): On AR Invoice Generation or On AR Invoice Release

    With this setting, the allocation transaction is reversed automatically when an AR invoice is generated based on the allocation transactions or when this AR invoice is released, respectively.

  • Account Origin (Debit Transaction section): Replace with a WIP account

    With this setting, the system generates an allocation transaction that debits the specified WIP account. The account must be mapped to a dedicated WIP account group that reflects the allocated amount and that you will later use in the billing rule.

  • Account Origin (Credit Transaction section): Debit Source

    With this setting, the system generates an allocation transaction that credits the debit account of the source transaction.

Configuring Cost-Plus Projects for Allocation

On the Projects (PM301000) form, for a cost-plus project to be allocated, you assign the created allocation rule to the project tasks on the Tasks tab.

To be able to use the created allocation transactions in project billing, you need to modify the existing billing rule that is used for the project or create a new one on the Billing Rules (PM207000) form. For that billing rule, you create a Time and Material step that processes allocated transactions posted to the WIP account group. Except for the account group, the settings of this step are the same as the settings of the billing rule step that is used to process the original transactions, which are the source of the allocation transactions. On the Tasks tab of the Projects (PM301000) form, the modified or created billing rule must be assigned to project tasks.

Allocating and Billing Projects

You run the allocation process for a project by clicking Run Allocation on the More menu of the Projects (PM301000) form while reviewing the project. As a result, the system creates allocation transactions based on the project transactions selected by using the allocation rules specified for project tasks on the Tasks tab. To make it possible to identify a batch of created allocation transactions, the system assigns the Allocation for <Project ID> description to such a batch. For the project transactions that have been used as a source of the allocation, the system selects the Allocated check box on the Project Transaction Details (PM401000) form.

When you bill a cost-plus project, the system automatically reverses the allocation transactions on creation or release of the accounts receivable document, depending on the settings of the corresponding allocation rule. Reversing allocation transactions copy original allocation transactions and reverse the sign of the amount. Allocation transactions are always reversed in the full amount. The reversing clears the WIP account group and moves the allocated costs back to the original accounts in the financial period the AR document created in.