<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=1645804&amp;fmt=gif">

Purchase Order Maintenance


I have discovered recently that some of our more mature sites that are using purchase orders in Microsoft Dynamics GP are not keeping up with the maintenance that is necessary to effectively maintain and manage their purchase order systems. So here is a comprehensive list of what should be happening on a monthly basis. Are you doing this at your workplace or do you have loads of old data that should be sorted in your system?

Let's look first at how the PO process works in Dynamics GP. This does not take into account any authorisation processes – it assumes if you have access, you can raise and release a Purchase Order.


Raise a purchase order

Once a PO is entered, the system can see it and it has a status of New. At this point (dependent on system settings), it could be deleted, added to, changed etc. Nothing is committed. As soon as you print the PO, the system deems it to be Released. It assumes that because it is printed, it has been given to the supplier.

If the PO is changed in anyway and then reprinted, the system deems it to be a Change Order.


Process a Goods Receipt

When the goods or service has been received from the supplier, at this point a Shipment can be processed. This is a specific receipt document that books the expense into the P&L and accrues for the invoice yet to be received. The PO has a status of Received.

GL Impact: Debit purchases / inventory account, Credit Goods Received Not Invoice balance sheet account (Accrued Purchases is also a name used).

Note: a Shipment/Invoice document can be used instead – this will create an entry in Accounts Payable and skip the Goods Received Not Invoiced step. If all items on the PO have been accounted for on the Shipment/Invoice, the PO will have a status of Closed.


Match the Invoice

The Accounts Payable team will receive the invoice. If there is a PO that has been received, they can match the invoice to it and complete the process. If all items on the PO have been accounted for, the PO will have a status of Closed.

GL Impact: Debit Goods Received Not Invoiced account for the amount that was on the goods receipt, Debit/Credit purchases / inventory for any price difference, Debit GST, Credit Accounts Payable control.


Monthly Processes


Remove Completed Purchase Orders

All PO's that have been fully receipted and invoice matched will automatically be closed in the system. There is a routine that should be run to move these PO's from the open tables to history.

Tools à Routines à Purchasing à Remove Completed Purchase Orders

This sounds scary because of the word "Remove" – it isn't – it simply cleans up the open tables so you should definitely be running it.

Note: if a document does not move to history it is for one of two reasons – it need to be closed (see below) or there is a problem with the PO. If you follow these steps and keep things current, it is easier to deal with any issues that might crop up.


Cancel or Close Purchase Orders

Whoever is responsible for overseeing purchasing will have a clear idea of whether a PO that has been raised will ever be received. Use the Edit Purchase Order Status window to manually close or cancel purchase orders that will not have all or remaining quantities received.

Transactions à Purchasing à Edit Purchase Orders


You can cancel or close any PO lines that have the following statuses:

  • New
  • Released
  • Change Order

For any lines that have a status of Received, you need to look at the next section – you have financial implications to deal with.

Note: Zeroing out quantities instead of cancelling will not close the PO line. This means the purchase order will never automatically fully close out.

Once all PO lines that needed manual intervention have been dealt with, rerun the Remove Completed Purchase Orders routine.



This document number already exists in history; it can't be moved. This means that the PO has tried to move to history in the past and an issue has cropped up. You will need someone with access to SQL and knowledge of the tables to help you resolve this issue.


Purchase order is corrupted. This may show up as a PO that has no status or things just don't look right. If you try to edit or delete the PO, you will get messages about it not being available. This record needs to be deleted from the database and you will need someone with access to SQL and knowledge of the tables to help you resolve the issue.


Review the Goods Received Not Invoiced Report (GRNI)

Reports à Purchasing à Analysis à Received/Not Invoiced

This report lists all the items that have had a goods receipt processed and an invoice hasn't been matched. This needs to be reviewed every month. The balance on this report should match the GL balance in the Accrued Purchases or Goods Received Not Invoiced account.

Some common scenarios for why items will appear on this list and not have been cleared out:

  • Invoice was processed via Accounts Payable and not through invoice matching
  • Invoice quantity was less than the received quantity
  • Invoice quantity has been processed incorrectly e.g. 1 unit at $100 rather than 10 units at $10
  • Receipt included Landed Costs and the landed cost invoice has not been processed
  • PO and receipt were done to the wrong supplier


If items need to be cleared out of this report, there is a GL impact involved that needs to be sorted. There are a number of ways that we can clear items out, but I prefer using the option described by Mark Polino in this blog.

He notes that there are three areas we need to consider:

  • Removing the entry from the GRNI report
  • Ensuring the correct GL transactions
  • Getting Accounts Payable right


First step - investigation:

  • Find out why the item is still on the report – has the invoice been received and processed incorrectly or will it never arrive?
  • If processed, where was the invoice coded to? Has it doubled up inventory / expense or already be coded to GRNI?


Second step – clear the transaction:

For all cases except where an invoice has been processed via AP and coded to GRNI, use this process to clear. I had never thought of this method until I read Mark's article and it is now definitely my preferred:

  • Decide on where the value needs to be coded.
  • Create an invoice match transaction for the full quantity and amount that needs to be cleared from the GRNI report.
  • In the trade discount field, enter the value of the sub-total of the invoice.
  • In the distributions, update the Trade Discount GL code to be where you want the offset.

This creates a zero dollar invoice so will not create an Accounts Payable transaction to pay. It clears the quantities off the GRNI report and correctly posts values to the GRNI control account.

If you use the trade discount for any other reason, then this option may not be available to you.


If an AP transaction was processed and was coded directly to the GRNI control account, then you simply close the PO line as per the earlier process for Closing Purchase Orders. When you close a receipt in this manner, it only takes it off the GRNI report – it does not create a GL posting. You would need to do that manually if required (i.e. if you couldn't use the trade discount method above).

In general, you should not do journals to the GRNI account – it makes it incredibly difficult to reconcile. Hence, the trade discount method is preferred.


Once you have cleared all the GRNI transactions, go back and run the Remove Completed Purchase Orders routine for the last time.


Heather Roggeveen is a MS Dynamics GP Consultant with Olympic Software. After 15 years of working with the end user all the way from designing the solution to user training, she has become a Dynamics GP expert. Heather regularly shares her knowledge, including tips and tricks for end users in her blog articles. Follow her on Twitter @HRoggeveen to be notified of her latest articles. You can also like Olympic Software on Facebook or follow us on LinkedIn or on Twitter @OlympicSoftware. For more information about Dynamics GP and how it could benefit your business, view the Dynamics GP page on our website or give us a call, 09-357 0022.