Currencies in SAP FI

Currency Types in SAP FI

Understanding currency types in SAP FI is critical for both users and consultants. If a user does not understand the currency types, then they will book entries wrong. If the consultant does not understand them, then serious valuation problems can result.

Consider the following:

We have a Mexico affiliate of a US corporation that is procuring supplies from Germany. The contract is denominated for 500 EUR, but the company reports tax locally in MXN, and operating results from all countries are consolidated into USD. 

What currency should the contract be tracked in? The answer, of course, is EUR, MXN, and USD. SAP gives us the flexibility to account in different currencies for different purposes.

Currency Types in SAP FI

Document Currency

The document currency is the currency of the transaction which depends on the structure of the transaction. In our example, we’re legally obligated to pay 500 EUR. Thus our document currency is EUR. This currency is actually set on the document at the time of the transaction. When we start FB60 to book our vendor invoice, we select the document currency of EUR.

Document Currency on FB60 (1)FB60

Local Currency

The local currency is the currency of the company code which represents the legal entity in a ‘standard’ SAP configuration. This currency is used to comply with local tax reporting requirements as well as representing the functional currency as seen in FAS 52 or IAS 21.  In our example above, the functional currency for a Mexico entity is most likely MXN. That said, according to FAS 52 or IAS 21, if we suppose the primary business to be exporting ot the USA, then the functional currency might be USD. In any case, the currency is set on the company code as you can see below configuration screen.

Company Code Currency (2)Defined when you create the company code in SPRO->Enterprise Structure->Definition->Financial Accounting->Edit, Copy, etc Company Code

Group Currency

To enable reporting across all entities in an SAP environment – for doing comparative metrics and quick estimations – you can use the group currency. Since our example entity is based out of the USA, then the USD would almost certainly be the group currency. The group currency is set at the client and is consistent across all company codes. You can see the configuration below.

Currency for entire client (3)Basis can modify the client in SCC4

Tying it all together

In the configuration, you specify which currencies are relevant for which company codes. Notice that you can have up to three currencies for the company code in addition to the document currency. That allows for inflation accounting and other currency types that we haven’t covered here. In this very standard setup, we have the first currency set as the company code currency (the local currency) and the second currency set as the group currency. That means, for any transaction, we’ll have a document currency, the currency of the legal entity, and the currency of the entire enterprise.

(4)SPRO->Financial Accounting New->Financial Accounting Global Settings New->Ledgers->Ledger->Define Currencies of Leading Ledger

Now, when we post a document, we can see that each currency type is being calculated and tracked – even if we don’t explicitly enter it!

JE with multiple currencies (5)FB60


T-Codes, Config Paths, etc   [ + ]

1, 5. FB60
2. Defined when you create the company code in SPRO->Enterprise Structure->Definition->Financial Accounting->Edit, Copy, etc Company Code
3. Basis can modify the client in SCC4
4. SPRO->Financial Accounting New->Financial Accounting Global Settings New->Ledgers->Ledger->Define Currencies of Leading Ledger


[…] is usually more than one currency type – say document, local, and group being tracked. See here for more information. While performing conversions, it’s incredibly critical to properly […]

pavan says:

Hey David,
Very useful info. and given in straight forward way that even a learner can also understand. Keep it up and waiting for your new posts.

David says:

Hi Pavan –

Thanks for reading and commenting. I’m glad that you liked it. A new post – probably on accounts payable – should be up by the end of the week.


Lulien says:

Hi David,
You seem to know allot about the currencies in SAP…wonder if you can assist me with a dilemma we might be experiencing soon…currently our group currency is set-up as ZAR as the companies in the client are all South-African based. After years operating like this we now have to include other overseas companies in our client and the need is now to change the group currency to EURO to accomodate all entities. Is it possible to change the group currency and more importantly, what is the risks of doing so? Your advice/guidance would be greatly appreciated!

David says:

Hi Lulien –

Thanks for reaching out to me. Unfortunately, to change the group currency, you would not be able to do it yourself since it requires converting all of the existing data. For these sorts of operations, you should reach out to SAP’s SLO service (link is below).

SAP SLO will drop in a program that will automatically update all of the underlying transactional information to have the new group currency. The process is rather seamless and they have the expertise to make the change safely, but it is quite expensive from what I know.

If you want to discuss it further or setup a call, feel free to email me at davidschenz ( -at- ) gmail ( -dot- ) com

seshu says:

Depreciation ran for May 31, 2013, one document has a different amount for document currency and local currency than local currency 2 and 3 even though they are both in USD.

Can you please give me the solution? how to resolve?

Thanks & Regards


David says:

Hi Seshu –

Thanks for reading. Off the top of my head, the only thing that I can think of is that if you are deriving group currency off the local currency and the local currency is different than the document currency, then you may get a slightly different result due to rounding.

Beyond that, it’s tough to say without looking at the configuration. Good luck.


vicky says:


For this issue, look at ossnote 335608 – Trnsln of 2nd and 3rd lcl crcy fm 1st lcl/trns crcy

[…] currency transactions. SAP’s GL is different in that it handles multi-currency scenarios with ease, but many users are not accustom to thinking in more than one currency at a time. Thus explaining […]

Gerardo Adame says:


Thanks for this information, very useful by the way. I hope you can help me with a bit of a complicated situation (at least for me). We have a company code in Mexico that is USD functional currency. We import product from the US and resell it to local customers in USD (mexican customers). We have a material ledger that we maintain in Local Currency (MXN), here is where we set our standard costs. I have noticed that when we receive imported material and we make a good receipt, we have price variances on the PO that can either generate documents with MXN and no USD, or vice versa. Right now the balance of the account has a positive MXN balance and a USD negative balance. At this point we don’t know if we should make an adjustment and bring both exchange rates together or if this is normal (although it doesn’t make much sense). I haven’t found yet specific information on the web in the cases where the company code’s functional currency is different to the local currency. Commonly the functional currency is always local, but not in this case and it is generating all sorts of weird FI postings with one or another currency. I hope you can give me some guidance or provide me with some articles that I could read. Appreciate the help David.

David says:

Hi Gerardo –

Thanks for reading and for the question. This really gets back purchase price variances and FX rate differences. Let me put together an example that elucidates the issue. More to come…


Anon says:

Hello David,

Thanks for this post.

I’d like to ask your expert advice on a problem that we have.

Our client has a local currency SGD but majority of their transactions as in JPY hence as per IAS their functional currency needs to be changed to JPY to minimize exchange rate losses. Currently, parallel ledger is already set-up for them and group currency has also been set-up as JPY.

The requirement that they want is that for a cut-off date, say end of 2013, all transactions in their FS should be translated using one rate except of Equities which shall use historical rates. I got that this is standard and New GL has made it easier to do via the currency translation program.

However, that problem that I have is that they require their assets to be translated as well. Such that APC shall be translated using the same rate as used for the translation of the BS. For the GL accounts, I was thinking currency translation transaction can take care of this. However for the AA module itself, values shown in explorer, I’m not sure how it can be done.

Please help advice on this.


IG says:

What is the best way to change a company’s functional currency?

David says:

Hi IG –

If there are no postings to the company code, you can simply change the currency in the company code setup. If there are postings, it’s a much tougher situation. You could either setup a new company code and convert the data over or you could engage SAP’s SLO service to change it.

Hope that helps,
David says:

I work for BP in Houston. We have a company code that is not defined as multi currency, in other words Company currency and Group Currency are the same. However, an MM document was posted with cost as .47 in the standard price field and the material number and the adjusted price field, this caused a difference of 47.50 versus the 56million. The company code is all usd and transaction currency, local currency and group currency. the 47.50 showed up most places but in JV the 56million was in the group currency fiield and in the co Val/COArea field and Val. in Rep Curr field. the line was allocated to a secondary cost element then JV Cutback to another account. 47,50 was the correct amount, but the 56 million was in Tranaction currency inthe allocation sender and receiver and in the group currency in JV and FI SL. The jv cutback ws postied to another acconbt and the 56million showed in Tran Currence. and transaction currency was billed to partners with the 56 millon credit error. What do you thik needs to be done?

Bob Simms says:

We need to extract the Group Currency for the items in an invoice from the underlying table. Do you know the table-field name that contains that information?


david says:

Hi Bob –

Thanks for reading. If it’s an LIV invoice, I don’t think the group currency is tracked inside of MM-LIV. If you look in the corresponding item in BSEG, it should be the field DMBE2. Same thing for a simple FB60 invoice – the group currency is maintained in BSEG-DMBE as well as in the index tables. Hope that helps.

amy says:

it’s very helpful! thank you.

Marco Nevarez says:

Very interesting information.

We have a company code in the system that for some reason is set as HUF, the users just request to change it as USD. Since the company has not too many records (about 300), we are considering to change it. But we are not sure to do it.
It is important to mention that all documents have been posted in USD.

What do you suggest in this situation?

david says:

Hi Marco –

Sorry for being slow in responding. There are usually only two options for changing a currency after the entity has postings:

1) Contact SAP SLO and negotiate a contract with them to change it. This is usually pretty expensive, but it’s quite seamless.

2) Create a new company code and convert the data over.

For a small entity as yours sounds like, option 2 would probably be doable.

Good luck!

senthil says:

Sorry in my previous post i have not said my requirement clearly

Foreign exchange gain or loss in multi-currency

Scenario Explanation:

Company Code: IN1
Document Currency: INR
1st Currency: INR
2nd Currency: USD
Goods Recipt: (MIGO)

For E.g.
Date: 20-05-2014
Exchange Rate: 1INR-2USD (Spot Rate: OB08)

A/C Document:
Document Currency 1st Local Currency 2nd Local Currency
Inventory A/c 100 INR Dr. 100 INR Dr. 200USD

GR IR A/c 100 INR Cr. 100 INR Cr 200USD

Logistics Invoice Verification: (LIV):
Date: 21-05-2014
For E.g.
Exchange Rate: 1INR-3USD (Spot Rate: OB08)

A/C Document:
Document Currency 1st Local Currency 2nd Local Currency
GR IR A/c 100 INR Dr. 100 INR Dr. 200USD

Vendor A/c 100 INR Cr. 100 INR Cr. 300USD

Gain or Loss A/C 100 USD


1).Here the requirement is GR/IR a/c should be zero at time of logistic invoice posting (MIRO postings) in 2nd currency. If any difference in GR/IR based on exchange rate it has to post gain or loss account in 2nd currency USD Logistic invoice (MIRO) Like example said above.

2.)How to full fill this requirement in MIRO accounting document for 2nd currency USD in SAP 4.7 or ECC 6.0?

Thanks in advance

david says:

Hi Senthil –

Thanks for the post. From what you describe, this sounds like the standard SAP behavior for logistics invoice verification. Are you getting a different result?

Good luck

Linda says:

Hi David,
Can you go over the logic of the GR IR postings for document currency, local currency and group currency?

DOC currency is USD
LOCAL currency is CAD

We are having an issue that from doc currency to local currency our transaction uses the correct logic that the IR takes the rates for DOC, and LOCAL from the original transaction (GR posting), but the GROUP does not. Assume the GR and IR happen on different days with different rates in the currency table and the PO is not set to “fixed rate”.

Our postings to the GRIR account zero out in DOC curr, LOCAL curr but leave a value in the GROUP curr rather that taking the original document amount posted in the GR.

GR Posting Doc curr LOCAL curr GROUP curr
DR Expense 500 USD 550 CAD 500 USD
CR GRIR (500) USD (550) CAD (500) USD

IR Posting
DR GRIR 500 USD 550 CAD 495.50 USD
CR AP VENDOR (500) USD (555) CAD (500) USD
DR Expense 5 CAD 4.50 USD

So my net postings are:

GRIR 0 0 (4.50) USD
AP VENDOR (500) USD (555) CAD (500) USD
EXPENSE 500 USD 555 CAD 504.50 USD

I want my GRIR in group currency to zero out.
GR rate in currency table is CAD to USD /1.1000
IR rate in currency table is CAD to USD /1.1100

From DOC to LOCAL the accounting posting knows to take the value from the GR document and the rest of the transaciton is at that days rate so the sytem makes an additional line of 5 to expense. From LOCAL To GROUP it takes the whole transaction at the 1.11 rate rather than taking the correct 500 USD GR value. I would expect my GROUP currency to look like:

Your help is greatly appreciated

david says:

Hi Linda –

Thanks for reading and for the question. So after the posting the GR/IR, F.13 should be running routinely on the account to clear the GRIR account in the GL. I don’t remember if the IR posting is supposed to zero out the group currency, or if F.13 is supposed to clear it out. I would try setting up F.13 and see if it clears it out correctly first.

Good luck


Linda says:

Running the F.13 program posts all differences to one account set in one of the config tables. The clearing should post to the individual accounts on the PO lines which can all be different. Posting the whole variance to one account would not make sense to me. is there a way to set the clearing to post to all the individual po line item account/cost enter settings?

david says:

Hi Linda –

Not to my knowledge.


Venkat says:

Hi David, Great replies to the team time to time.
I hava a situation as described below. My legal entity is in Singapore.
Per OB22 config:
1st Local currency : Currency Type 10 – Co.code currency set up as USD ( per business requirement)

2nd Local currency : Currency Type 30- Group currency set up as USD
3rd Local currency : Kept blank.

I have a supplier document in USD and also translated in SGD. but invoice posted in FB60 as USD docucment currency which is correct. Also the local currency shows as USD becuse of Co.code local currency type 10. While posting invoice the local currency filed is grayed out which is the reason user can manually entered convered amount in SGD.
Now the issue is, users need document to be displayed at USD and SGD. Not sure how I can accheive this.
Can you suggest some work arround solutions?

With best regards.

david says:

Hi Venkat –

Thanks for reading and for the question. The problem is that with the current currency setup, there’s no place to track the invoice in SGD. It strikes me that the local currency or an additional currency type should have been setup as SGD to enable reporting at that rate, but assuming that the transactions are already posted in production, it’s very difficult to change those settings without SAP’s involvement or a lengthy conversion process. So I’m afraid that you’re in a sticky spot.

Good luck,

Meena says:

I have secnario a variances where the document currency and Local currency are same (ARS) and the values are different. Below are the details and sample for the same

Document number Amount in Document curr Amount in Local curr
100003131 (15,299.13)ARS (14,819.33) ARS
100003131 (2,632.26) ARS (2,549.71) ARS

Total (17,931.39) (17,369.04)

Please suggest the logic behind this.

Best Regards,

david says:

Hi Meena –

Thanks for the question. Yes, SAP allows for ways in which the document and local can be entered at a different value despite both currency types being in the same currency. If you’re looking at a FX revaluation account, then it would normally be different. Otherwise, someone might have entered an entry using FBB1. It’s hard to say without seeing the entry, but it’s definitely possible.

Good luck,

Natsuko says:

Hi, I have a dilemma at my work.
Our company currency is in Canadian (CND).
We deal with two document currencies – USD and CND.
When we do the transaction on AP/AR, it defaults to Canadian.
I would like to default to the document currency according to vender /customer master set up.
Is there any way to do so?
We had an issue when AR staff applied to the payment in CND for the customer invoiced in USD.

For some reason, we were told by our US parent company it’s not possible…

Thank you!


david says:

Hi Nat –

Thanks for reading and for the question. In standard SAP, it isn’t possible as it will default to the currency of the previous transaction that the user did. Some form of enhancement might be possible, but it strikes me as being tricky.

Good luck


Hi David,

I have the following situation. Wer are a company in Mexico. We’ ve been reporting in USD. In SAP Local Currency 1 was setup in USD and no group curreny was setup. We have subsidiaries outside of Mexico and they are reporting in USD. Now we need to reportin in Mexico in MXN. So we need to have MXN as a currency in SAP and we will now do the financial consolidation in USD. what should we do in SAP to be able to report als on MXN and to be able to do the financial Consoldation reporting

David says:

Hi Alberto –

Thanks for reading and for the question. Changes in currency type configuration usually necessitate either talking to SAP’s SLO service (which is very pricey) or establishing a new company code and converting your data over to the new company code (which is painful). So neither option is cheap or easy. Hope that helps a bit.


Kanchan Sarkar says:

Hi David,
Just going through your blog on Group Cuurency. This is one of thebest matter availble on the net.
Appreciate it.

Keep it up!


suvi says:

Hi David,
Was reading these useful postings on FI and FA. Since I’m looking for some feedback/guidence on one of my Currency related issue, thought of posting here .

We have 15 company codes, out of which 5 company codes uses CAD currency and rest Cocodes are with USD.

We do have configured Grp Currency set as parallel currency as well .

Requirement – We have existing customize report for inventory valuated at different points in time. This helps to calculate the LIFO reserve.

The requirement is to convert Canadian inventory from CAD to USD in this customize report so it can be run for other product inventory in the report .

Any valueable solution/guidence will be much appreicated.


Nilesh says:

Hay David,

Nice description with great example.
Just one thing, at first you mentioned group currency is USD and in Configuration its EUR.
Just want to know because I thought there is some relevancy i am missing to understand.

Ashish says:

Hi David,

Can you please explain hard currency with your example.


G says:

Hi David,
Under the Group Currency heading the screen shot says the “Group Currency” is set us “EUR” I thought it should be “USD” – Am I missing something

In the 2nd Local Currency, it should be USD-Correct? Why it was mentioned as Eur?

What is Functional Currency? Where do we declare it? What’s the use of the Functional Currency?


Ganesh says:

Thanks David

In the Tabular column you have mentioned
Document Currency == Euro
Local Currency == MXN
Group Currency == USD

But in the screenshots of SCC4, OB22 & FB69 below you have got EUR as your group currency?

Am I missing something. Please help me to understand this process


pawinee says:

Hi David,
I set one company code without additional currency and also post some transactions in this. After that I know that this company should set multiple currencies so I define additional currencies for this company. But when I display the previous documents I still cannot see additional currency in those documents. How to fix this problem if I want those document which before setting additional currency show group currency. Please help.

Sanjay says:

We have following case for Singapore Currency
Company Code = USD
Currency Type 10 = USD
Currency Type 60 = SGD

Plant abroad functionality activated.
We are facing an issue with S_ALR_87012357 -as tax figures shown in this report are not matching with BSEG –> DMBE2

Leave a Reply