Business case – A prepayment is received from the customer for an additional support contract for 35 hours on top of the actual core project. However the contract is such that whenever a consultant spends time on this engagement, that time is booked on the separate support project and a zero value invoice is raised against the project for the customer to know the hours spend till date. There is no obligation for the vendor to return the remaining hours amount to the customer. If the customer does not spend the agreed quota of 35 hours and project ends, then the vendor can write-off the remaining hours and recognize the revenue for the hours not used by the customer. This is a typical scenario in professional service companies and this is how you cater to it from Dynamics 365 FinOps Project management and accounting module.
Contract Value = 10,000
Cost price per hour = 100
Estimated cost = 3,500 (35*100)
Solution – A T&M kind of a project is created where ‘Hours’ and ‘On-accounts’ are set to go to ‘Balance’ first.
The project dimensions are as follows.
For the prepayment received from the customer, an on-account is billed initially at the start of the project.To raise a prepayment, ‘Customer advance’ feature is used, which automatically create a ‘Deduction’ type of transaction along with the ‘Prepayment’ type. When the project invoice for prepayment is posted, the accounting entry is as below. This is an unearned revenue as associated cost is yet to be booked against this.
Note the dimensions on the posting. These dimensions are inherited from the project.
The consultants working on the project starts posting their time-sheets. In this example we will put two hour journals but with different ‘Department’ dimension on each one of them.
Time-sheet posted by consultant number one – Will
Note that Will belongs to ‘Department number 23 = Operations’
Time-sheet posted by consultant number one – Chris
Note that Chris belongs to ‘Department number 28 = Client services’
Total of 30 hours are utilized by the vendor for customer incidents by the people from two different departments on the vendor side. Now at the month end, it the time to raise a 0 value invoice. The sale price against the hours transaction is netted off against the deduction type of on-account transaction. To achieve this deduction transaction is split at the time of invoice creation.
By doing this the revenue is split across the two cost transactions proportionately with correct dimensions on them. Please have a look at the screenshot below:
So far so good. Now assume that the project is over and the vendor wishes to recognize the remaining revenue of 250. To do this, user needs to post a fee journal for a value of 250 and then raise a 0 value invoice by netting it off against the remaining deduction on-account value. However the only issue with this is, the fee journal that is posted will be having dimensions from the project and hence the revenue posted after the 0 value invoice would also have dimensions from the project and not from the actual cost transactions. If this is the option that user wishes to go ahead with then no need to navigate to ‘Fee journals’ menu item to create fee transaction specifically, it can be done on the ‘Draft invoice proposal’ screen by clicking the ‘Create fees’ button. Once the details are filled in and ‘Ok’ is clicked, then fee journal is posted, with dimensions inherited from the project and it will be a part of the invoice proposal, ready to be posted.
However if the user wants to split the remaining revenue across the posted cost transactions, a manual fee journal needs to be created and the lines of the fee journal needs to be split in the equal proportion and on each line the appropriate dimensions from the cost transaction needs to be selected.
Fee journal lines for 150 and 100 are posted. The fee journal line numbers derived are in proportion with the total hours posted earlier. Have a look at the posted fee journal lines.
0 value invoice is then created including these fee journal lines.
Once this invoice is posted, the remaining revenue value of 250 is then automatically allocated to the already posted cost lines. This step serves two purposes, one to recognize the remaining revenue value which is initially posted as deferred revenue and second to recognize it by dimension, so that revenue and cost by dimension is also correct.
The revenue that was accrued by the fee journal is reversed and the remaining deferred revenue is recognized as a project revenue by dimension.
This manual workaround of fee journal is the way to recognize the remaining revenue on the project which is in balance sheet and that too properly by dimension.
Hope you have learnt something new after reading this today.
See you soon in the next post…till then take care..!!