Multi-Currency Accounting in ERPNext
ERPNext allows you to manage invoicing, payments, and journal entries in multi-currency. It also has integration with multiple third party apps to automate fetching real time exchange rates.
1. Introduction
Why do we need multi-currency accounting?
- To process invoices in foreign currencies.
- To maintain bank balances in foreign currencies.
- To convert foreign currency to local currency for consolidated financial statements.
- To reevaluate currencies as exchange rates fluctuate.
- To prepare other reports.
When a company is created a base currency is assigned to it via the ‘Default Currency’ field in ‘Company’. It is called ‘Company Currency’. It cannot be changed. Base currency is also called functional currency.
Each ledger also has a currency assigned to it and it is called ‘Account Currency’. While creating a company the ledgers are created either based on the ‘Chart of Accounts Template’ or based on the chart of accounts of an existing company. Account currency of all ledger being auto-created will be set to the company currency.
A non-company or foreign currency can be assigned to a ledger. For example, ledgers representing bank accounts with foreign currency will have foreign currency as account currency.
A default ‘Billing Currency’ can be assigned to customer and supplier.
‘Currency Precision’ or decimals can be set in ‘System Settings’.
Transactions like Sales Order, Delivery Note, Sales Invoice, Purchase Order, Purchase Receipt, Purchase Invoice.
2. Currency Master
ERPNext comes with 140+ currencies and nine are enabled by default. Additional currency can also be created.
In each currency Fraction or Unit, Sub-unit, Symbol, Number Format details are recorded.
Active currencies are shown in the transactions and reports, so it is recommended that currencies not being used be disabled.
3. Currency Exchange Rates
Currency exchange rates fluctuate in real time. Either the real time exchange rates can be fetched via third party services or a fixed exchange rate can be used for an accounting period by creating a ‘Currency Exchange’ record.
A currency exchange record contains ‘From Currency’, ‘To Currency’, ‘Exchange Rate’ and ‘Date’.
Till version 13.9.2, ERPNext uses https://www.frankfurter.app/ to fetch real time exchange rates. From 13.10.0 ERPNext uses https://exchangerate.host/. In version 14 this is configurable via ‘Currency Exchange Settings’.
If ‘Currency Exchange’ record is not found and also real time exchange rate is not available via a third party app, then the user will have to manually enter the exchange rate.
4. Multi-Currency Transactions
From version 13.31.0, a customer can be invoiced in only one currency.
Create an Invoice in foreign currency. The ‘GL Entry’ records have fields for both company currency amount and account currency amount. ‘Debit Amount’ and ‘Credit Amount’ fields capture amount in company currency and ‘Debit Amount in Account Currency’ and ‘Credit Amount in Account Currency’ fields capture amount in account currency.
If payment against is received in a company currency bank account the new exchange rate can be captured in payment entry and exchange gain or loss is calculated. If payment is received in the foreign currency bank account exchange gain or loss is not applicable.
5. Multi-Currency in Reports
The CoA will show balances in both company and account currency.
The balance sheet, profit and loss statement, accounts receivable, accounts payable reports show numbers in company currency by default.
Accounts receivable and accounts payable will show numbers in foreign currency when a specific customer or supplier with foreign currency ledger is selected.
The balance sheet and profit and loss statement report offers selection of currency and these numbers are indicative.
6. Exchange Rate Revaluation
At the end of the accounting period, the assets and liabilities maintained in foreign currency need to be revalued to reflect the latest exchange rates.
‘Exchange Rate Revaluation’ will fetch all assets and liabilities with foreign currency and help post the gain or loss.
7. Latest Changes
- With version 13.31.0 a validation for document currency and receivable/payable ledger currency has been introduced. Read the below Release Note.
8. Conclusion
- ERPNext offers below multi-currency features.
- Allows currency to be set at company, ledger, customer and supplier master.
- Offers integration with third party apps to fetch real time exchange rates.
- Allows invoices to be recorded in foreign currency.
- Allows balances to be maintained in foreign currency.
- Allows you to view reports in different currencies.
- Allows balances maintained in foreign currencies to be revalued.
Click here to watch the webinar on multi-currency accounting.
When I need to invoice a client in two different currencies, what should I do?
Fixed the typo. From version 13.31.0, one customer can be invoiced only in one currency.
On 4.1 did you mean to say ..." From version 13.31.0, a customer can be invoiced in only one transaction." Or " in only one currency". Please clarify, and if its one transaction, can you also explain what you mean by that?
Share the training video for today to annor@powersoftsystem.com