Does any one know how NetSuite handles foreign cur...
# accounting
a
Does any one know how NetSuite handles foreign currency? We have a saved search that pushes data to external system based on line last update date. This works fine for most of the transactions but has does go out of sync for foreign currency transactions. Our data matches for the foreign_currency_amounts but it seems like the amount gets updated some times without an update to the last update date. My hypothesis was that this happens when NetSuite updates the currency conversion rates. with help of @Jon Kears I was able to account for different rates in the same transaction based on consolidated exchange rates. However, this same logic fails with another customer. There it seems like the transactions are using current rate from 4 months ago? Can someone point me to any documentation about how Netsuite updates the foreign transaction amounts what triggers it etc.?
t
Check the exchange rate behaviour at the top of the results column in the saved search
turn it off
or, choose historic, or whichever
a
@Tristan Day Thank you!
Does netsuite convert the currency at the report run time?
t
Yes it's dynamic, so if you use Historic it won't change much - but if you use something else it will run based on that
a
One last question. If we leave the default which is per-account. I am able to get the conversion rated for accounts that are using average or historical but the current rate seems to not follow the same logic. for example I am seeing the rated from Oct Last year on transactions that were posted in April this year. Do the accounts that have _current as the generalRate not use the current rate of the posting period?
@Tristan Day Thank you for all your help so far!
j
Ok probably worth going back to first principles - note the below is based on Single Book Accounting, and Automatic Close: When you post a transaction in Netsuite, you specify a currency for that transaction, and the system will guess at an exchange rate based on the date of the transaction you have posted (this guess can be overridden with appropriate permissions). For advanced intercompany journals, this exchange rate is stored at the transaction line level. This exchange rate is set in stone once you save the transaction. This exchange rate describes the exchange rate to go from the transaction currency to the currency of the subsidiary. You can see the rates Netsuite will guess at by searching for "page: Currency Exchange Rates" Consolidated exchange rates are what Netsuite uses when it runs a report across multiple subsidiaries with different currencies, and these conversions happen at run time. Every account gets assigned a general rate type: • "current" - which means the entire balance is dynamically translated each period end based on the rate (this is used for balance sheet non-equity accounts, typically) • "historical" - which means the net movement in each period gets translated at the rate for that period (this is used for balance sheet equity accounts, typically) • "average" - the net movement in each period gets translated at the rate for that period (this is used for profit and loss accounts, typically). Note historical and average use exactly the same logic, they just have two different rates they use. Netsuite will attempt to calculate the translation rates for each subsidiary as part of the period close process, based on the weighted average of transactions in each account type in each subsidiary. Which means, depending on your subsidiary hierarchy, each subsidiary may have a different rate for each account type. You can override these rates but once the period is closed, you can't amend them without re-opening the period. So the above works really well and really consistently when running Reports in Netsuite - the final difference after applying the rates goes to a notional Foreign Currency Translation Reserve - because the trial balance has to balance. However, saved searches have a bit of a problem when trying to apply this logic on Current account types. This is because there's no guarantee a saved search will contain the entire balance of an account. It might contain only one month; in which case the saved search will translate that month in isolation. This can give weird outcomes: say for example you have an account with a balance of 100, and last month it was translated at 1.5 (so 150 in consolidated currency). Then there is a net movement of 100 in this period, but the rate is now 2. The saved search will show a net movement of 100 * 2 = 200, but the actual movement in total on the account was 250 (it's gone from (100 * 1.5 =) 150 to (200 * 2 =) 400. Now I've not fully tested what happens with Current account types in saved search (it's hard for us because of the way we do our consols), but from what I have seen the saved search gives a "best guess" at which period is the focus of the saved search (based on your criteria), and will use that rate. I don't know if it varies the period it has picked per subsidiary. Probably the best way is to run the saved search with consolidated exchange rate = None, then run it with Per Account, and look up the implied exchange rate in each case.
There are a few articles on suiteanswers that may help (though they're not great with examples beyond really simple ones) - I did a search on "saved search consolidated exchange rate" which got me in the right ballpark
👍 1
t
Yep the above is where I'd suggest you went at this point, the help is pretty good and then it;s trial and error - honestly I rarely use anything other than "none" or "Consolidated" in searches
395 Views