Accounting for foreign currency transactions

If your business issues invoices or makes purchases in a foreign currency, Wave will automatically keep track of how these values convert to your 'home' currency to keep your bookkeeping accurate.

If you'd like to understand what Wave is doing 'behind the scenes', then roll up your sleeves as we dive into everything you wanted to know about bookkeeping foreign exchange but were afraid to ask!

Don't care how this works but just want the bookkeeping steps? Jump to Bookkeeping foreign currency transactions in Wave.

Foreign Exchange Gains and Losses on Transactions

Before we get into the detail, you may be wondering “Why is this even a thing?” Let's deal with that first!

Wave uses the accrual method of accounting, which means that income and expenditures are recognized at the time they are incurred; not when money changes hands. Using the accrual method gives you the most accurate picture of how your business is performing, but it does open up a question: What if the cash I receive against an invoice is different than the income I originally recognized? This could happen because you suffer a bad debt or — as we are considering now — because you invoiced in a foreign currency, and the value of that currency amount in your home currency changed between when you created your invoice and when you received payment.

Here's an example that will hopefully make this clearer:

Your first sale to Galactic Tours (Mars) Inc.

Late last year, you won your first contract with Galactic Tours (Mars) Inc., to write a travel guide to the USA for visitors from Mars. (Congratulations!) You agreed a fixed fee in Martian currency - The Martian Bar.

You completed the work by the end of February, and on March 1st, you invoiced your client the agreed fee of 10,000 Bars. Your base accounting currency is the US Dollar, and on that date each US Dollar was worth exactly 2 Martian Bars. (Or, to put it another way, each Martian Bar was $0.50c.)

You invoiced your client using Wave, which recorded the transaction in US Dollars like this:

Date Account (Category) Dr Cr
Mar 1st Sales   5,000
  Accounts Receivable 5,000  

Wave records the value of the transaction in your base accounting currency: US$!

Galactic Tours (Mars) Inc. turned out to be a good client, and paid their invoice strictly on the agreed 30 days. Even better: when they paid, the Martian Bar had strengthened against the US$. Whereas when you raised your invoice MB 10,000 converted to US$5,000, it was now worth US$5,500. (MB 1 = US$ 0.55c, or US$ 1 = MB 1.82)

You banked US$ 5,500 into your checking account, and rushed home to update your accounting in Wave. (You're keen... we like that!) Let's do it...

Date Account (Category) Dr Cr
Mar 30th Bank (US$ Checking) 5,500  
  Accounts Receivable   5,500

But “Hang on!”, you say. “My Accounts Receivable balance was only $5,000 - how can we be crediting it $5,500? This doesn't make sense!”

You are right - it doesn't. You've received 500 US Dollars more than you expected, so we need to record that somehow. It's your money - you can keep it or spend it as you please in your business, so perhaps it's income? Perhaps we should have recorded getting paid like this:

Date Account (Category) Dr Cr
Mar 30th Bank (US$ Checking) 5,500  
  Accounts Receivable   5,000
  Sales   500

This is better, but it's still not perfect. Your accounting system shouldn't tell you just what you have, what you owe, and what is owed to you; it should also help you analyze and understand what has happened in your business. You didn't make an extra $500 of sales, so it would be confusing to record the transactions that way. What happened is you did $5,000 worth of work; you contracted and invoiced this in Martian Bars; and when you got paid you lucked-out and scored an extra $500 on the currency movement.

Given that's what really happened, that's what your accounts should show. So let's combine all the steps and see everything together:

Date Account (Category) Dr Cr
Mar 1st Sales   5,000
  Accounts Receivable 5,000  
       
Mar 30th Bank (US$ Checking) 5,500  
  Accounts Receivable   5,000
  Gain on Foreign Exchange
(Income account)
  500

This time we really are good. Everything balances, and accurately depicts what happened. We have a zero balance in Accounts Receivable; and we do recognize the additional income resulting from the favourable movement in the Martian Bar, but we don't confuse it with our sales revenue.

 

As mentioned previously, when you make transactions in Foreign Currency, Wave does a lot of the heavy lifting for you. In fact, in the example given above, if you went and looked at your Income Statement and Balance Sheet in Wave on March 31st, you would have seen Wave ended up pretty much like in our example: $5,000 Sales; $500 Gain on Foreign Exchange, $5,500 in the Bank, and no outstanding balance in Accounts Receivable. All good!

But here's a question: What would Wave show on March 30th, 1 second before you got paid?

Unrealized Gains and Losses on Foreign Exchange

If we think about this for a while, it is pretty clear that in the instant before we received the payment (assuming we read the galactic financial news from time to time) we had a pretty good idea that we were up on our Martian Bar invoice. In fact, knowing that when the payment was received, we realized a gain of US$500, it seems pretty logical that 1 second before then, we had an unrealized gain of US$500.

This is pretty much how Accountants think about Foreign Exchange Gains (and losses) before you actually receive a payment. Let's go back an look at our Galactic Tours (Mars) Inc. example some more...

Galactic Tours (Mars) Inc, just before we got paid.

Last time we looked at our Galactic Tours transactions, we ended up with this pretty good summary of what had happened:

Date Account (Category) Dr Cr
Mar 1st Sales   5,000
  Accounts Receivable 5,000  
       
Mar 30th Bank (US$ Checking) 5,500  
  Accounts Receivable   5,000
  Gain on Foreign Exchange
(Income account)
  500

So how would this look just the second before we receive payment, knowing that instead of a realized gain, we in fact have an unrealized gain?

“This is going to be a walk in the park!”, I hear you say. “We just swap the realized Gain on Foreign Exchange for an Unrealized Gain, and of course we haven't been paid yet, so the bank and Accounts Receivable transactions on the 30th disappear.”

Date Account (Category) Dr Cr
Mar 1st Sales   5,000
  Accounts Receivable 5,000  
       
Mar 30th- 1 sec Unrealized Gain on Foreign Exchange (Income account)   500

Awesome!

But now our entries are out of balance. Where's the balancing item for the $500 Unrealized Gain? Puzzler!

Well, in fact this is pretty easy to figure out, following the same kind of principles we apply to invoiced revenue. When you invoice a client, you don't know for certain that you are going to get paid. Wave records the invoice value as Sales, and the money you are due to get from your customer (but might not) as Accounts Receivable. One second before you got paid, you didn't know for certain that Galactic Tours were going to pay. You were still waiting on the Account Receivable. And you didn't know for certain that you were going to make your currency gain. Not only could Galactic Tours have failed to pay; the Martian Bar could have collapsed against the US Dollar just that second before they paid you!

When you are expecting money from a customer, but haven't yet got the cash in the bank, that is Accounts Receivable. So it seems logical that if you are expecting a foreign exchange gain on that money, but it's not yet in the bank, that would also be Accounts Receivable, or at least Something similar to, but not exactly the same as, Accounts Receivable.

Good enough. Let's go with that for a moment:

Date Account (Category) Dr Cr
Mar 1st Sales   5,000
  Accounts Receivable 5,000  
       
Mar 30th- 1 sec Unrealized Gain on Foreign Exchange (Income account)   500
  Something similar to, but not exactly the same as, Accounts Receivable 500  

Nice!

But seriously, “Something similar to, but not exactly the same as, Accounts Receivable”?! That hardly rolls off the tongue, and it's not the best description of the asset we are waiting on turning into cash. That asset is simply an unrealized gain on exchange, so why not call it that?

One last go:

Date Account (Category) Dr Cr
Mar 1st Sales   5,000
  Accounts Receivable 5,000  
       
Mar 30th- 1 sec Unrealized Gain on Foreign Exchange (Income account)   500
  Unrealized Gain on Exchange
(Asset Account)
500  

And that, ladies and gentlemen, is why you see Unrealized Gain on (Foreign) Exchange on both your Income Statement and your Balance Sheet. They are two different accounts with almost exactly the same name!

When you see Unrealized Gain on Foreign Exchange on your Income Statement, it is the unrealized gain Income Account. When you see Unrealized Gain on Exchange on your Balance Sheet it is the unrealized gain Asset Account.

 

Currency Exchange Losses, and Gains/Losses on Bills work just the same!

The discussion above focused on currency exchange gains on an invoice you issued. Handling currency losses, and gains and losses on Bills, is very similar:

  • A realized loss on exchange is recorded as an Expense, reported as Loss on Foreign Exchange*.
  • An unrealized loss on exchange is reported as Unrealized Loss on Foreign Exchange (income account), balanced by Unrealized Loss on Exchange (liability account).
  • Exchange gains and losses on Bills between the date of your vendor's bill and the date you make payment are handled to the same gain/loss accounts.

* Note: The balancing account to a Realized Gain or Realized Loss on Foreign Exchange is always a payment account. You have realized the gain or loss into your bank!

 


Bookkeeping Foreign Currency Transactions in Wave

Wave uses published daily mid-market exchange rates to track and report your unrealized foreign currency gains and losses on a daily basis. These may not be precisely the amount you would get if you tried to exchange the money at the bank, but that really doesn't matter: the values are close enough, and they'll be different tomorrow!

When the exchange rate matters is when currency is actually exchanged: when you realize your gain or loss. And you tell Wave these numbers.

Let's see how!

Currency Exchange when you create a Foreign Currency Invoice

When you create an invoice in a foreign currency, no actual money moves. Wave calculates the exchange rate for you. There's nothing for you to do! 

Currency Exchange when you record a payment on a Foreign Currency Invoice

When you record payment into your home currency bank, there is an actual movement of money. Any difference between the amount calculated when the invoice was created and the actual amount you bank will be your realized foreign exchange gain (or loss).

As you add details of the invoice payment in Wave, the moment you select a Payment Account that is a different currency to the invoice currency, Wave will show you today's Exchange Rate, and the converted amount.

You can, and you should, change the exchange rate so that the Converted amount matches what was actually received in your bank.

How to calculate the actual exchange rate achieved

Wave lets you input the actual exchange rate you achieved, but you don't know that. You know that amount of money you received in the bank. To get the exchange rate you achieved, divide the value you see arriving in our bank by the amount of the invoice in foreign currency. Enter this number into the Exchange rate box, and check that the Converted amount box is displaying the value you expect.

 


Foreign Currency FAQs

 

 

I don't issue invoices or receive bills in foreign currency, but I have a bunch of foreign currency receipts for expenses I paid. How should I bookkeep these?

Good news! If you don't issue foreign currency invoices to sell on credit, or receive foreign currency bills that you pay later (and you don't have any foreign currency bank accounts), there's really no need to concern yourself with foreign currency bookkeeping! Everything you've read on this page really only applies when there is a gap in time between when you recognize a sale or purchase in your accounting, and when actual money changes hands.

If you have a wallet or purse full of receipts that you paid on a foreign business trip, or some regular foreign charge that lands on you credit card each month, simply record as an expense the equivalent in your own currency. If the purchase translated to $82.15 on your credit card statement, record $82.15!

Can I change the exchange rates that Wave calculates?

Wave uses a daily updated feed of mid-market exchange rates to calculate the equivalent in your home country of any invoices, bills, or foreign bank deposits you create, and to track unrealized gains and losses from this point. You are not able to change this exchange rate, but also there is really no need, because your unrealized gains and losses are only ever 'estmates' until they are realized.

Whenever there is an actual exchange of funds between accounts in different currencies, however, or to settle a foreign currency bill or invoice, then you are able to input the actual exchange rate achieved.

Where do I see Foreign Currency Gains and Losses on Foreign Currency Bank Account?

Wave automatically calculates your Unrealized and Realized Gains and Losses arising from Foreign Currency Transactions. Gains and losses in Foreign Currency Bank accounts need to be tracked separately by creating one or more Journal Transactions, as detailed in this separate article.

Oops! Looks like this content is meant for a different version of our accounting application. Head back to the Help Centre home page to search another topic or check out the related articles on the right.