Dynamics 365 Project Service Automation: No-code options for including VAT on records
Tested on:
Dynamics 365 version 8.2 and 9.0
VAT and Sales Tax are naturally always a big part of any sales transaction. In Dynamics 365 Project Service Automation as well as in Dynamics 365 Customer Engagement in general, a logic for VAT and Sales Tax may need to be customized according to a company's individual needs. From PSA's perspective the out of the box options of including VAT on records are currently limited to a Sales Tax field on Expense entries, Order Lines (Project- and Product-based lines) and Project Contract Line Details.
VAT needs vary by legislation, company specific processes as well as integration needs, to name a few. The point of this blog post is to suggest a couple of no-code ideas for taking VAT into account instead of forcing a specific methodology or process. If you feel more automation is needed than what the no-code options in this post offer, I recommend you turn to your go-to Microsoft Partner for additional ideas and consultation. It is worth noting that in both version 8.2 and 9.0 of Dynamics 365 Project Service Automation, carrying record specific VAT and Sales Tax percentages from Expense and Time Entries as well as Fixed Price Project Contract Line Details all the way to a confirmed invoice can only be achieved with code.
Why is record specific VAT important?
While each business has their own specific needs, a simple example could be of a company engaged in activities that allows for exemptions with the right to deduct in the EU. If a company is doing repairs or installations on a ship or aircraft, they charge VAT 0, however if a technician enters a terminal, country specific VAT applies. This means using VAT 0 on Time Entry 1 and VAT X on Time Entry 2 in Project Service Automation.
If example one was too Field Service, another example could be FMCG product promotions and tastings on cruise ships. Hours for the men and women involved in these promotions are invoiced at VAT 0 while possible travel time and time spent picking up displays etc used in the promotion from a warehouse are invoiced at VAT X.
VAT on Invoice Line Details
Invoice Line Details are formed when an invoice is created in Dynamics 365 Project Service Automation. An Invoice has an Invoice Line which in turn has Invoice Line Details. The ILDs represent the individual Time and Expense entries that have been approved. While the editable fields on the ILDs are limited to Description, External Description, Quantity, Price and Billing Type, additional fields and logic can be added on the form.
Adding VAT on Invoice Line Details may be a suitable approach when an invoice created in Dynamics 365 Project Service Automation needs to be sent to the customer. The out of the box invoice report is fairly basic so using Visual Studio to build RS reports that fit your business needs may be needed. Adding VAT related fields on Invoice Line Details allows you to easily store the record specific VAT data so that you can easily access it later if needed. RS reports can be used for additional calculations and for displaying information related to an invoice in a visually preferable manner.
From a process point of view, adding VAT on each ILD may cause some extra work. Each ILD may need to be reviewed before an invoice is confirmed, especially if different VAT percentages apply. If you only work with a single value for VAT, a record specific review process may not be needed.
In the photo below, VAT related fields are added so that Price with VAT, VAT of Price, Amount with VAT and VAT of Amount are automatically calculated for the Invoice Line Details. The Option Set's VAT is set to 24 by default as that is the standard VAT that applies in my country in most domestic sales cases. The calculations are done with Calculated Fields. If you wish to see the logic behind the calculations, please drop me an email or private message and I'll send you some screen captures and/or the fields in a Solution.
VAT on Quote, Project Contract and Actuals
Quotes and Project Contracts consist of the main record, Quote/Project Contract Lines and Quote/Project Contract Line Details (the Project Contract is actually the Order entity however referring to it as Project Contract is in many cases simpler). If Quotes and Project Contracts are sent to the customer, you may want to build the VAT logic on these entities in a similar manner as on the Invoice Line Details. Remember that data doesn't automatically flow from Quotes and Project Contracts to Invoice Line Details so if this is desirable, code is needed.
The Actual entity may be more suitable for specifying the VAT percentage when Dynamics 365 Project Service Automation is integrated with an ERP like Operations. While the VAT calculations are most likely done in the ERP, it may be necessary to pass the information about a VAT percentage to the ERP. In these cases an Option Set might be all that's needed. Records can be easily edited with Excel Online so the amount of manual labor needed should remain fairly low.
How do you choose what's right for you?
Choosing which methodology to implement depends mainly on your processes and business. If you need to send Quotes, Project Contracts and Invoices to the customer (for example include them as a PDF in an email), you might want to include VAT calculations on the entities and functionalities that are the most relevant to your business. If all you need to do is integrate with an ERP, using Actuals might be enough. If you build Quotes and Project Contracts using Word, PowerPoint and Excel but need to send a breakdown of costs with an Invoice from PSA, using Invoice Line Details might be a good option.
I hope this blog post has given you some ideas on using VAT in Dynamics 365 Project Service Automation. Again, the purpose of this post is to give some ideas and not to dictate a specific approach.
Disclaimer:
All my blog posts reflect my personal opinions and findings unless otherwise stated.

Like
Report
*This post is locked for comments