The Project Management and Accounting module of Microsoft Dynamics AX ERP has been supporting revenue recognition mechanism for fixed price projects (Both Long term and Short term) using the functionality called “Estimates for Fixed Price Projects”. This functionality supports both ‘Completed Contract” as well as “Completed Percentage” based revenue recognition for Projects.
One other common revenue recognition that is widely used primarily for short term duration contracts is the “Straight Line” Revenue recognition. This happens primarily for contracts with subscription services, short term Insurance contracts etc. For such short term subscription service contracts, the contract amounts are normally recognized on a proportionate basis., i.e over the period of the contract for the subscriptions.
With the release of Cumulative Update 8 (CU8) for AX 2012 R3, this functionality is now supported under the Project Management and Accounting module.
In today’s post, I will explain this functionality from how to set this up in AX and then how the revenue recognition will happen for the project.
Scenario: Let us say you are a online software service provider and you have customers that have subscribed to one of your software services for 6 Months duration. i.e. from 03/01/2015 to 08/31/2015. The total amount for the subscription contract is USD 3000.00 and you have agreed upon to bill them upfront, on the start date of the contract, i.e on 03/01/2015. Even though you billed them on the beginning of the contract, due to the nature of the contract you will need to recognize revenue proportionately over the period of the contract.
Setup Estimate/Revenue Recognition Template:
The first step on this process will be to setup the Cost Template for the Straight Line Revenue recognition functionality.
Navigate to Project Management And Accounting > Setup > Estimates > Cost templates.
Create new record.
Select Completion based on = Straight Line.
Save the record. Refer to screenshot below.
Setup Contract, Project:
Let us now create and setup the Project Contract and Fixed Price Project for our scenario.
Navigate to Project Management and Accounting > Common > Projects > Project Contracts.
Create the new project contract.
Create the New fixed price project and link to a project group that is associated with the newly created Cost Template.
At this point, note that the Actual Start Date and Actual End Date fields on the Project details form becomes Mandatory. This is because, system will depend on the Actual start date and Actual end dates, to determine the percentage completion automatically when you run the Periodic Revenue Recognition function(Estimates) for this project.
Refer to screenshots below.
In this scenario, I will setup Actual start date = 03/01/2015 and Actual End date = 08/31/2015.
Bill the Customer Upfront:
The next step is to the create and setup the On-account transaction for this project, which we can bill to the Customer Up-front on 03/01/2015.
Select the project created above and click Manage > Bill > On-account transactions.
Create a new record.
Setup the on-account transaction for USD 3000.00
- To bill the customer, click Manage > Bill > Project Invoice Proposal.
- Create and complete the invoice processing and post the invoice.
- At this point, note that the Invoiced revenue is actually posted to a Balance sheet account based on the configuration we did in the project group setup and no revenue is recognized for the project at this point.
Recording Expenses/Costs on the Project:
Note that during the tenure of the project, you can also record all the expenses such as Labor (Time) and expenses such if any for accurate probability of the project. The source of the costs can be Timesheets, Expense reports or any cost journals for the project.
For the demonstration, I have already posted some hours and expenses on this project and we will see in the next step how this information shows up on the Revenue Recognition summary screen with profitability details such as Gross Margin.
Recognize revenue for the project periodically(Monthly in this case):
Now, let us evaluate the process of periodic revenue recognition for this project every month and see how system automatically calculates the % complete and the accrued revenues.
Since the contract started on 03/01/2015 and we will recognize the revenues on a Monthly basis, let us run the first revenue recognition on 03/31/2015, end of March 2015.
To do this, navigate to the Project and click Manage > Process > Estimates.
Create new Estimate and select Estimate date = 03/31/2015
Note: For this demo scenario we are running the revenue recognition manually. Ideally you can setup the estimates to run for all your fixed price projects to run and post automatically in a Batch.
See that Estimates(Revenue Recognition) form has got some improvements in CU8 release. It has several additional data fields to present clear details of the revenue recognition history for the project such as Invoiced Revenue(WIP), Contract value, Percent complete etc.
After we have run the first Revenue Recognition process on 03/31/2015, notice that System automatically calculated the Percentage Completion based on a Straight Line basis. The total number of days in the tenure of the subscription is 184 Days(March to August) and we ran the first revenue recognition at the end of 31 days for the project. So system automatically calculated the Percentage complete as 16.85 %.
Notice that system shows Contract Value = 3000.00, Invoiced Revenue = 3000.00, Percentage Completion = 16.85 %, Revenue recognized now (Accrued revenue for March) = 16.85% of Total contract value.
Now, let us review and post the Estimate to recognize revenue. Once the estimate is posted, revenue is recognized and the amount is posted to GL (P&L Account setup in project posting profile).
If you see the above Voucher, notice that system posted the accrued revenues as well as moved the Costs to P&L accounts from WIP. Since I had setup the Costs to be posted to Balance sheet accounts in my configuration. It depends on what you configure the cost to be posted to.
You can follow the same process and post the estimates/revenues for each of the periods until the end date.
Below screenshot shows a summary that I have created and posted the revenues for each period till the 100% completion on 08/31/2015.
Finally, once the subscription contract is over, you can follow the standard AX elimination of the estimates to reverse the WIP sales values.
Hope this quick demonstration was helpful !! Till Next time….