NAV Purchase Variance not posted on Purchase Credit Memo

I noticed this problem in NAV 5 SP1, and see if it still the same in NAV 2009 SP1, but is it correct ? \

Consider this example:

  1. Item XYZ uses Standard Costing with Standard Cost = LCY 10

  2. Post Purchase Order for Item XYZ, Qty = 1 but Direct Unit Cost = LCY 100. This results in a Purchase Variance of LCY 90 being posted.

  3. I decide this is a mistake and Create a Return Order, copying the Posted Invoice from 2. above, (copying the Header, and not recalculating Lines).

  4. I post the Return Order, locate the Posted Credit Memo and Navigate. The Purchase Side of the Transaction is perfectly reversed at LCY 100 plus VAT, but the Inventory Posting reverses the transaction at the Standard Cost of LCY 10. There is no reversal of the Purchase Variance


  1. To me that looks like a mistake in the Posting Routine, but perhaps it is by design? If so What is the logic?

  2. What is the best way of correcting the error in Variance (ensuring that the Value Entry and Associated G/L Entries are all created)?

Yes this seems a bug.

I also tried you said scenario.

CRONUS Companies seem to have “Inventory Setup”.“Automatic Cost Posting” = FALSE by default. Change this to TRUE for the above test.

When you copy a Posted Purchase Invoice into a Purchase Return Order as described, you will notice that although the Applies to Document Type and Applies-to Document No. are present in the Purchase Return Order Header, the Appl.-to Item Entry on the Purchase Return Order Line is 0. When you post the Return Order, the Variance is not reversed as one might expect.

In order for the Variance to be reversed exactly, one must insert the Appl.-to Item Entry on the Return Order Line**,** pointing to the Item Ledger Entry you wish to reverse. This really the crux of the matter.


  • CRONUS also has “Purchasing Setup”.“Exact Cost Reversing Mandatory” = FALSE.
  • If you set “Purchasing Setup”.“Exact Cost Reversing Mandatory” = TRUE, the Copy Document feature will attempt to insert this Item Ledger Entry number for you (but this might fail if the given inbound Entry is no longer Open).

Hope that help others who might encounter the same problem.