Goods Receipt Valuation for Purchase Orders when involving foreign currencies
Skip to end of metadata
Created by Fabio Almeida on Dec 11, 2015
Go to start of metadata
Purpose
The purpose of this page is to clarify the calculation of Goods Receipt valuation for Purchase Orders when involving foreign currencies.
Overview
In the below section an example is provided to show how the goods receipt valuation is calculated in the standard system design.
The amount for the GR/IR clearing account (WRX) in foreign currency is calculated using the same formulas as the amount in local currency.
The system executes the same formulas for the values in the currency 00 (Document currency, Purchase Order currency - USD in this case) and 10 (Local currency, Company code currency - EUR in this case).
All relevant amounts are calculated based on the PO data via function ME_READ_ITEM_GOODS_RECEIPT. The information of the values in all currencies are within internal table XEBEFU_CR and XEKBNK_CR. SAP note 393461 contains some examples about the problems which can happen in foreign currency calculation. To see the posting logic to the GR for foreign currency PO you should check the SAP note 191927 .
There are two main scenarios of the GR for PO valuation with exchange rates: if the exchange rate is fixed in the PO (EKKO-KUFIX is set) and if the exchange rate is not fixed in the PO (EKKO-KUFIX is not set). The below example will show how the GR is valuated if the exchange rate is not fixed.
Example
Goods Receipt valuation when involving foreign currencies.
A) Create a Purchase Order in ME21N
PO qty = 20 KG
PO Net price: 80 USD (USD is the Document Currency or Purchase Order Currency).
PO price unit: 1 KG
Local currency of the Company Code: EUR
B) Post a Goods Receipt for the Purchase Order in MIGO
MIGO - Goods Receipt for Purchase Order
C) Check the Exchange Rate into the PO document in ME23N (PO header – Delivery/invoice tab)
ME23N - Display Purchase Order
The value of the exchange rate comes from transaction OB08 depending on the exchange rate type which is defined in transaction OMBA. However, you can change this value and keep it fixed on the header of the PO document. If the PO exchange rate is fixed, this will be taken for the GR valuation not depending on the current exchange rate in OB08.
OB08 - Currency Exchange Rates
OMBA - Document Types
The function modules to convert currencies are ‘CONVERT_TO_LOCAL_CURRENCY’ and ‘CONVERT_TO_FOREIGN_CURRENCY’. When you are creating or changing the Purchase Order you can set a breakpoint in both FM’s to see the conversion values.
D) Calculate the GR value (Value of the GR/IR Clearing Account - WRX key in the Accounting Document)
Exchange rate of the Posting Date of the Goods Receipt: 3,50 USD (taken from OB08)
GR qty: 20 KG
PO Net Value = PO qty x (PO Net price / PO price unit)
GR value = GR qty x (PO net value / PO qty)
PO Net Value = 20 KG x (80 USD / 1 KG) = 1.600 USD.
GR Value in USD = 20 KG x (1.600 USD / 20 KG) = 1.600 USD.
We need to apply the same formula as before, so we need to calculate the Purchase Order Net Value in EUR. For this we translate the Purchase Order Net Value with the exchange rate of the Posting Date of the Goods Receipt.
PO Net Value in EUR = 1.600 USD x 3,5 EUR/USD = 5.600 EUR.
Once we have the Purchase Order Net Value in EUR, we apply the same formula for the valuation:
GR value = 20 KG x (5.600 EUR / 20 KG) = 5.600 EUR.
So the system does not make a direct translation of the Goods Receipt Value in USD to the Goods Receipt Value in EUR. Instead, the system applies the valuation formulas for each currency.
E) Calculate the stock account value
Standard Price: 60 EUR
Price unit: 1
MM03 - Display Material
BSX = GR qty x (Standard Price / Price Unit)
BSX = 20 KG x (60 EUR / 1 KG) = 1.200 EUR
So that we can apply the above formula, we need to know the standard price in USD. Therefore, we first translate the standard price from EUR to USD.
To translate the standard price we always use the exchange rate of the Posting Date of the Goods Receipt.
Standard price in USD = 60 EUR / 3,50 EUR/USD = 17,14285714285714... USD
We round this value to the two decimal places of the currency USD: 17,14 USD.
Once we have the standard price in USD, we apply the formula to calculate the value of the stock posting:
BSX = 20 KG x (17,14 USD / 1 KG) = 342,80 USD.
F) Calculate the price difference value
PRD = -WRX - BSX
PRD = - (-5.600 EUR) - 1.200 EUR = 4.400 EUR.
PRD = - (-1.600 USD) - 342,80 USD = 1.257,20 USD.
G) Check FI document via ME23N (PO history), MIGO (via material document) or in FB03 directly.
Related Documents
SAP WIKI ERP SCM-MM
Related SAP Notes/KBAs
SAP note 393461: Inexplicable amounts in foreign currency in GR for PO
SAP note 191927: Posting logic: GR for foreign currency PO
SAP Note 212286 : Overview note: Valuation during goods movements
SAP Note 518485 : FAQ: Valuation of goods movements
SAP Note 518368 : FAQ: Valuation for the purchase order
PPV: Purchasing Price Variance
FollowRSS feedLike
11 Likes 44,757 Views 2 Comments
Overview
Aim of this document is to show how price variance is calculated in a context of standard cost.
Standard cost, is a agreement between Engineering and Finance areas, regarding the price of raw materials and operative supplies, this estimated price is a key input to calculate gross margins.
The Purchasing Price Variance or PPV is a warning flag that says that the gross margin will have variance, taking care about the situation, on a nimble way, enable the organization to keep margins going forward.
Standard Cost is 10 USD per LB
Order Price is 11 USD per LB
Actual Price is 12 USD per LB
Standard Price
Purchase Order Price
PPV at Goods Receipt
Now, lets assume that we had received the material before the invoice, so a difference is calculated:
PPV during GR = Standard Price – PO Price
Inventory Account DR 10,000 USD Standard Price
GR/IR Account CR 11,000 USD PO Price
PPV Account DR 1,000 USD Balance
PPV at Invoice Receipt
Now, when invoice is received, we realize that market change and now, the actual price is different than the PO price
PPV during IR = PO Price – IR Price
Vendor CR 12,000 USD Actual Price
GR/IR Account DR 11,000 USD PO Price
PPV Account DR 1,000 USD Balance
Net PPV = Standard Price – IR Price = 10 – 12 = -2 USD per LB
This is an unfavorable Purchasing Price Variance.
Net PPV
Now, on SAP there is a report that can be customized (configured) to get this Net PPV, this is:
You can use transaction MC$G, to get the report with data related to PPV. This is infostructucture S012 that can be enhanced to take advantage of Logistics Information System features, or a simple query using structure S012 can be created.
How to enhance LIS for MM.
http://scn.sap.com/docs/DOC-50821
http://scn.sap.com/docs/DOC-50822
Note: This note was originally posted on my personal blog at angelreyes [dot] wordpress [dot] com
You must be Logged on to comment or reply to a post.
Vivek Paul L
May 25, 2016 at 3:45 pm
Nice Illustration.
Like(0)
Former Member
September 25, 2016 at 1:08 pm
Hi Angel,
Very nice Document. I followed your steps. But while doing MIRO system is not allowing me to to post 12,000 USD.
Can pls suggest me how to do it?
Like(0)