NetSuite Foreign Currency Transaction Application Considerations

This article is relevant if you are using NetSuite to perform foreign currency accounting.

NetSuite Foreign Currency Accounting Basics

NetSuite does a good job incorporating foreign currency accounting into its financial platform. ¬†The good news is that you do not need NetSuite’s One World application and all organizations using NetSuite can activate foreign currency features without additional license fees (subject to NetSuite’s discretion) . ¬†Simply activate the feature under Setup, Company, ¬†Enable Features, Company, International, Multiple Currencies.

To setup NetSuite foreign currency, configure a few structures:

  1. Activate the currencies you will be using under Lists, Accounting, Currencies. ¬† All ISO supported currencies are candidate. ¬†Activate the “Update Time Zone” feature if you would like NetSuite to keep your daily exchange rates fresh (generally a good option — but may not be satisfactory if you have different sources for your exchange rates).
  2. NetSuite does not yet natively handle alternative virtual currencies, such as Bitcoin.  Although that should be changing soon.  Ask me if you are interested.
  3. Generally, if you are going to work with foreign currencies frequently, you should setup a bank account that is denominated in your target foreign currency.  This will help you maintain balances to both receive and send currencies at low cost.  Bank accounts are effectively depositories for cash as commodity.  Each account is a repository for holding a particular type of government fiat currency.

With these structures setup, you are ready to go to work with foreign currency.

Multi-Currency Customers and Vendors

One feature to consider is the ability to have Customers or Vendors work with Multi-Currency.  If you leave this option off (the default), then each customer or vendor will have a currency designation.  If you have a customer that wants to interact with you in a different currency from your base currency, you will have to establish a new customer record.  For this reason, it may make more sense to turn on the Multi-Currency Customers and Vendors feature.  However, if you are rarely using foreign currency, you may want to keep this option off.  By keeping the option off, NetSuite will default transactions to your base currency and prevent you from possible data entry errors.

Transaction Management Considerations

A particular area to pay attention to is how you setup transactions when working in foreign currency.  I recommend that you setup your transactions in the currency that you intend to settle in.  For example, if you are a US based company but you are selling to a customer in Germany, determine the following:

  1. Talk with the German customer to determine what currency will you settle the transaction.  USD or EUR?
  2. Use that currency to setup your Sales Order transaction for future payment remittance.
Let’s clarify the meaning of this. ¬†If you agree that your German customer will settle the sale in Euros, then start your Sales Order and select your Currency as Euro. ¬† NetSuite will take the underlying currency exchange rate in effect and modify your base prices to the foreign currency price. ¬†Even though the exchanged value price is provided, you do not have to accept these prices during order entry. ¬†You have choices:
  1. You may agree to a different price (in foreign currency) for the good.  If so, use the  price you agreed to.
  2. You may not agree with the provided exchange rate.  Change the transaction exchange rate to fit your interpretation of the real world.
  3. Now process the order as normal.  The currency exchange rate on the Sales Order will stay in effect through the life of the transaction.  This makes sense because this is the rate for which you and your customer have agreed.
  4. NetSuite will automatically handle foreign currency gains and losses as time moves into the future and you account for currency holdings.  Foriegn currency gains and losses are the subject of a different article.
Finally, when the German customer pays you, deposit the EUR check in your foreign bank account.   Apply the payment to the open invoice to close the transactions.

What if you accept foreign currency to settle a local currency obligation?

You may, however, have a different situation.  You may sell a good in one currency, such as your base currency, but you are willing to accept a different currency to settle the obligation.  This is possible to do but there is a NetSuite concern to be aware of.  NetSuite will allow you to accept payments and create customer deposits in a foreign currency.  However, it will not let you apply these payments of deposits (effectively credits) to open invoices denominated in the base currency.  Even if you establish the exchange rate that effectively satisfies  the obligation perfectly, the system does not allow you to settle the transaction in the normal fashion.

This means you will be carrying around open invoices and unapplied credits (payments or deposits). When looking at the customer open receivable balance (including deposits), you may see the customer has satisfied the obligation as it nets to zero.  But the underlying transactions will remain open.

A number of NetSuite customers have voted for an enhancement (# 112956) as it can come up in a multi-company context or when working frequently with foreign currency.


The topic of foreign currency can be complex and confusing.  NetSuite manages foreign currency accounting well; yet, as you work to keep your ledgers reconciled, it is important to understand some of the areas that may get you into an accounting / transaction puzzle.

If you have any questions about foreign currency, or you would like help optimizing your NetSuite system, contact-us or comment below.


Be Sociable, Share!

Marty Zigman

Holding all three official certifications, Marty is Southern California's NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 25 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to setup a conversation.

More Posts - Website - Twitter - Facebook - LinkedIn - Google Plus - YouTube

| Tags: , , , , , | Category: Accounting, ERP, NetSuite | 29 Comments


  1. Jan Leigner
    Posted April 17, 2013 at 8:26 am | Permalink

    But does it take Bitcoin?

  2. Posted April 17, 2013 at 2:08 pm | Permalink

    Hello Jan,

    Yes, I am working with a team that is delivering a Bitcoin solution. It will soon be announced.


  3. Posted April 29, 2013 at 4:28 pm | Permalink

    Transaction gains and losses are a result of the effect of exchange rate changes on transactions denominated in currencies other than the functional currency (for example, a U.S. company may borrow Swiss francs or a French subsidiary may have a receivable denominated in kroner from a Danish customer). Gains and losses on those foreign currency transactions are generally included in determining net income for the period in which exchange rates change unless the transaction hedges a foreign currency commitment or a net investment in a foreign entity. Intercompany transactions of a long-term investment nature are considered part of a parent’s net investment and hence do not give rise to gains or losses.

  4. Posted May 5, 2013 at 10:20 am | Permalink

    To handle these complexities, Platinum’s multiple-currency module provides a screen to input the daily exchange rate for each relevant foreign currency. In that way, users can toggle between converting U.S. dollars to the foreign currency and converting the foreign currency back to dollars. Platinum for Windows by Best can even deal with budgeted exchange rates, producing reports that show the effects of favorable and unfavorable exchange rate fluctuations.

  5. Posted May 6, 2013 at 7:27 am | Permalink

    I am curious if Platinum can handle an invoice in one currency and a payment in another with the ability to map or link them and consider them closed?


  6. Posted September 21, 2013 at 12:22 pm | Permalink

    This is now resolved with our new NetSuite Foreign Currency Deposit Application

  7. erpevaluator
    Posted September 17, 2014 at 7:00 am | Permalink

    We’ve been looking for a possible move from our ERP to NetSuite but we do a lot of mixed currency transactions where the invoice is in one currency and the payment is in another.

    One of the reasons we’re considering a change is that our current ERP does allow mixed payment application (ie apply usd payment to cad invoice where cad is the base currency) but not currency triangulation where the invoice and payment are in two different currencies from the base currency.

    If we have to – even behind the scenes – setup debit memos and credit memos like in your solution which is the best possible under these limitations, it creates a lot of noise in the system and makes voiding, reapplying, etc very problematic from a user/audit point of view.

    I’m curious if this is now resolved in the native application.

  8. Posted September 28, 2014 at 8:30 am | Permalink

    NetSuite’s mixed currency application model has improved since we last wrote about this. For example, instead of applying a cutomer payment in the currency it was actually paid, you can apply the payment in the currency of the transaction and then handle the different currency application in the Bank Deposit feature. In our latest implementation of the Bitcoin Transaction Coordinator, we can accomodate a single transaction denominated in EUR, within a USD subsidiary, accepting Bitcoin for payment but being settled in British Pounds. There is no noise.

    At the same time, the disbursement side of the transaction space does not have this flexibility and the application is noisy as you suggest. I am hoping to solve this challenge in due course.

  9. Andrew F.
    Posted May 15, 2015 at 5:48 am | Permalink

    Hi Marty…

    We are a U.S. based company that reports in USD. We have a subsidiary that transacts in a foreign currency but then needs to report to us in USD. Is there a translation feature in NetSuite that creates a database table in USD within NS?

    We use a separate tool to consolidate all of our subsidiaries and that tool seeks a table to pull the numbers from. While NS reports a TB, BS and PL in USD, we are not sure that it creates and stores a USD table so that our consolidation tool can grab the needed information from.

  10. Posted May 15, 2015 at 10:32 am | Permalink


    If you are subsidiary’s base currency is USD, then every foreign currency transaction is priced relative to the USD. In a saved search, and in the report writer, expose the foreign currency column(s) so you can see the data.

    From a saved search, you could craft a table that gives you all the data. I have done it a number of times. In fact, we have figure out ways to produce true NetSuite Trial Balances from Saved Searches. It’s not easy but it can be done.


  11. Posted October 28, 2015 at 9:56 am | Permalink

    Hey Marty
    In our business we utilize currency hedges through out the year. We are running into an issue combining those into one large sum with an average exchange rate. Do you have any experience in managing multiple hedges with different rates and keeping it in one Netsuite Cash account?

  12. Posted November 1, 2015 at 10:39 am | Permalink

    Hi Tim,

    Yes, we do have experience. We have created a Tranche manager for another client who works heavily in Bitcoin transactions. The idea is that a tranche can be organized in a manner that doesn’t exceed certain volatility thresholds. Can you say more about your business case?


  13. Posted February 8, 2016 at 12:07 pm | Permalink

    Invoice is created with a PRIMARY currency of CAD, settled in USD; this was an error, PRIMARY currency should have been USD to start with. The question, it appears that I can no longer change the PRIMARY currency, is there a way to get this done without deleting and rebuilding the financial path?

  14. Posted February 9, 2016 at 5:24 pm | Permalink

    Hi Gary,

    How many transactions are we talking about? I would probably write a Custom Mass Update to fix everything.


  15. Andy F
    Posted March 30, 2016 at 12:17 pm | Permalink

    We are converting our current system to NetSuite and have opening balances (from 5 years ago) within our fixed asset accounts that were translated back then at multiple USD rates. In other words, GL fixed asset account #1 was translated at FX Rate #1, GL fixed asset account #2 was translated at FX Rate #2, etc. etc. There are 40 or so accounts, each translated at a different rate which was the blended rate of the original transactions recorded into those accounts.

    Is NetSuite able to handle this scenario? Essentially, we want to have the opening balance sheet translated on an account by account basis using different rates for many of the accounts but it seems like we are restricted to using only one historical rate as of the opening balance sheet.

  16. Posted April 5, 2016 at 3:50 am | Permalink

    Hello Andy,

    The key to understanding NetSuite is that all foreign transactions are priced. You have control over that. If you choose to consolidate balances into a single entry, then indeed, you are giving up control over the price detail. Also, don’t use NetSuite’s opening balance when constituting the account. Instead, use a journal entry to get the balance in. You may need to be creative as the journal entry is priced for foreign currency at the header versus the line.


  17. Posted April 18, 2016 at 3:30 pm | Permalink

    we have released a free app for actually making your multicurrency payments

    It creates a button in netsuite called
    ‘International payments’ and allows you to eliminate bank fees and get better exchange rates than using the bank


  18. Posted May 5, 2016 at 10:27 am | Permalink

    Record is established
    Currency is set as USD
    Invoice created 11 months ago
    Payment processed 11 months ago

    I need to change PRIMARY CURRENCY for this record but seem to find that is not an option.

    Can you change the PRIMARY CURRENCY after an invoice and payment have been processed?

    Thank you,

    Gary Hill

  19. Posted May 5, 2016 at 10:46 am | Permalink

    Hi Gary,

    Out of the box, you can not change the currency. It’s bound to the record and hence really needs to be deleted / recreated or you use a tool like ours that create compensating transactions.


  20. rehan
    Posted June 20, 2016 at 12:18 am | Permalink

    I have problem with settling customer invoices and vendor bills adjustment, if payment received in different currency.

    Do you have solution.

    Above discussion provide solution…

  21. Posted June 26, 2016 at 8:34 pm | Permalink

    Hello Rehan,

    We have built some NetSuite tools for our clients that allow them to hop over currency related concerns. On the Accounts Payable side, it typically requires a bank clearing account to participate. On the Accounts Receivable side, you can often use the fact that you have a Customer Payment and a Bank Deposit to help you with the currency conversion requirements. Generally, to solve problems, our clients engage us to design the specific solution. We give them what ever we have produced in the past to get to the ultimate solution.


  22. Posted November 29, 2016 at 1:20 pm | Permalink

    Hi Marty!
    So we have both a CAD and a USD Bank Accounts. Our Netsuite’s base currency is in CAD, but I pay some European suppliers with my USD account (payment made in euros). How would I go about adding the option of paying a bill from our US account and not for our BASe Currency and therefore our CAD account? thank you!

  23. Posted December 13, 2016 at 9:40 pm | Permalink

    Hello Alexandra,

    The key to working with the disbursement side of foreign currencies is to create intermediate clearing accounts to help you cross the currency boundary. I am a little confused by what you are saying but the trick here is to first pay the bills using a cash clearing account that is denominated in the currency you are trying to work with. In your case, I think you are saying USD (a foreign currency). What I can’t tell is what denomination your bill is in. But the practice here is to pay the bills using the clearing account. Then, do a journal entry between your actual cash account and the cash clearing account. A bank transfer between them can work as well. The key to this is to know that you will be working with foreign currency prices and you will stay in control if the clearing account is always zero when valued in your local currency. Experiment a bit and you will figure it out.

    Perhaps I need to write an article on this one to be clearer.


  24. Ben Dhillon
    Posted March 2, 2017 at 12:29 pm | Permalink

    Hi Marty,

    I am wondering how to deal with this issue.

    If we have a company set up with its home currency as Canadian Dollars but we have bank accounts in multiple currencies (CAD,USD,GBP,EURO), NetSuite will not allow us to make a bank transfer between say our USD & GBP account as it does not contain the home currency in the transaction. Have you come across this before? Any suggestions?

    Ben Dhillon

  25. Posted March 6, 2017 at 6:18 pm | Permalink

    Hi Ben,

    Yes, you discovered a challenge as there can only be one foreign currency designated per transaction. Here is what you need to do:

    a. Create a cash clearing account. I like to call it “FRX Clearing”. The balance should always be zero.
    b. You need two transfer transactions. One in CAD to USD and the other in CAD to GBP. The trick is to use exchange rates that net the result you are looking for.
    c. Confirm the FRX Clearing account stays at Zero balance.

    Let us know how it goes.


  26. Posted December 28, 2017 at 10:07 am | Permalink

    Hi Marty,

    This is a related topic for us. We use trade finance that is denominated in the currency of our overseas supplier. Often we will use Forward Exchange Contracts (FEC) against that trade finance. This may result in more than one exchange rate being applied when we settle the finance. Only a single transaction for the settled amount in our local currency shows in our bank account.

    1) Is there a recommended approach for using trade finance instruments?

    2) Is there a recommended approach to handling multiple exchange rates in one transaction?

  27. Posted January 6, 2018 at 12:32 pm | Permalink

    Hello Russell,

    I haven’t specifically dealt with FEC contracts. They sound interesting. But the real way to get in front of this is to use clearing accounting, ensuring they net to zero and while doing so, use the right exchange rates. I plan to produce a number of articles because I now have built a couple related applications that have solved some cross transaction boundary problems.


2 Trackbacks

  1. […] NetSuite Foreign Currency Transaction Application Considerations […]

  2. […] to transact with foreign currency. ¬† I have spoken about foreign currency before in this article,¬†NetSuite Foreign Currency Transaction Application Considerations¬†and in this article, Solve NetSuite‚Äôs Multiple Mixed Currency Payments Challenge. ¬† This is a […]

Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>