As a matter of financial compliance, organizations should use Purchase Orders for all of their purchasing over a certain minimal limit. This builds a level of financial control in the organization as Purchase Orders do two things
- Ensure there is approval of a purchase before it is triggered.
- Ensure that the vendor does not invoice more than the limit that Purchase Order sets plus any tolerance limit
Organizations that don’t use Purchase Orders run the risk of fraud as well as risk runaway spending that may never be caught or caught after it is too late. Dynamics AX 2012 is built so that organizations can use the purchase order functionality as a tool of financial control as well as vendor compliance. In this article we will focus on the financial control element on it and in a subsequent blog article, I will focus on the vendor compliance aspect of purchasing.
The control is ensured by the powerful purchase order (PO) approval process built into Microsoft Dynamics AX 2012. For example, an organization may put the following rules in place for financial controls
- PO below $100 don’t require any approval
- PO above $100 and less than $1,000 require approval from a Sr. Manager
- PO above $1,000 and less than $10,000 require approval from Sr. Manager AND a Vice President.
- PO above $10,000 and less than $100,000 require 3 approvers including one Sr. Manager and two Vice Presidents
- PO above $100,000 requires 3 approvers including one Sr. Manager, one Vice President and the CEO.
While this would be a fairly logical scenario, most ERP systems in the market can’t support this scenario because of product limitations or outdated technology. Many ERP systems don’t support Purchase Order approval at all or require significant customization and corresponding cost to implement this. In those scenarios approvals are often done outside of the system via email or some offline mechanism which don’t have an approval audit trail. Microsoft Dynamics AX 2012 is able to support this scenario natively with just configuration of the system. The building blocks to this functionality are two elements
- Purchase Order entity in Dynamics AX
- Powerful workflow toolset
The Purchase Order has multiple approval status fields to allow for financial controls.
Draft – The initial state for purchase orders and change requests – the PO has not been submitted for approval
In review – The purchase request has been submitted for approval and is processed within an approval workflow. There may be multiple approvers required. Till all of them approve it, the Purchase Order approval status will remain In Review. However, the workflow history on a PO can show who has approved it so far
Approved – The purchase order has passed the approval process and can now be issued to the vendor.
Rejected – The purchase request has been rejected by an approver.
Confirmed –The Purchase Order is sent to the vendor. In Dynamics AX you can specific the preferred format that a vendor prefers to receive a PO. Some vendors may like it emailed, while others may want it faxed and another may want it emailed and paper mailed. Dynamics AX allows for unique settings at a vendor level and also allows for duplicate copies e.g. one copy via paper and one via email.
Finalized – All lines on the PO have been received and invoice or are either canceled to reach this state. No changes can be applied after this point.
Purchase Order Approval Stages in Dynamics AX
The screen shot below shows different Purchase Orders in different Approval Status. The first one PO# 406 is Finalized and Invoiced – which means no changes can be made to this. The next four (407 to 410) are Approved Open Purchase Orders. That means they have been submitted and approved but not yet been sent to the Vendor. The next three (411 to 414) on the list have gone to the next stage where they have been confirmed i.e. transmitted to the vendor and have also been invoiced by the vendor.
Purchase Orders with different approval status in Dynamics AX
So how does one actually make these complex approval rules a simple configuration in Dynamics AX. The backbone of that is the powerful workflow functionality in Microsoft Dynamics AX. The workflow editor in Dynamics AX is built on modern architecture and offers drag and drop capability with the ability to build If/then conditions, checks, actions and delegation very easily without any programming effort. The Dynamics AX workflow engine offers rich functionality including the ability to have multiple rules through line items, Actions or Tasks that someone needs to do e.g. an approval with supporting notifications, escalation in case a person does not respond in a certain time frame for a task e.g. if a person does not approve a PO in 48 hours it can automatically be escalated to his manager; delegation where someone who is going to be out of the office can delegate tasks and approvals assigned to him/her to someone else. The workflow engine also allows for multiple workflows to be tied together by the use of sub-workflows.
Dynamics AX workflow engine provides functionality for approvals, task assignments, delegations, escalations and the ability to have multiple sub-workflows
A screen shot of the workflow editor in Dynamics AX is shown below reference. In this example, a condition is added to be checked for every PO as to whether it is more than $500. If it is more than $500 then an approval request is sent out.
Conditional workflow example in Dynamics AX 2012 for Purchase Order approvals
If you are looking to improve financial controls or streamline your business processes with an ERP implementation or upgrade, please email us at firstname.lastname@example.org.
Sandeep Walia is CEO of Ignify. Ignify is a leading provider of Microsoft Dynamics ERP solutions to mid-market and Enterprise businesses. Ignify has been ranked as Microsoft Partner of the Year Winner in 2011 and 2010 and in the Microsoft Dynamics Inner Circle, Microsoft Dynamics Presidents Club in 2009. Ignify has offices and team members in Southern California, Northern California, Arizona, Tennessee, Illinois, Washington, Canada, Singapore, Malaysia, India, Philippines.