Working in more than one currency

Money in

Invoice a customer in their currency, and your books stay in yours. Turn on multi-currency, tell us each foreign customer's or vendor's currency once, and every document for them is written in it, while your reports never change what they mean.

Turning it on

Open your Company settings and switch on Multi-currency. Pick your home currency (the one your reports read in), and add the currencies you work with. Turning it on also creates an Exchange gain or loss account, where the differences from exchange-rate movement will post on their own.

A company that never touches a second currency never sees any of this: no pickers, no extra columns, nothing.

Your home currency locks once foreign documents exist, because every number in your books is written in it. Pick it before you start, not after.

Each customer or vendor has one currency

Currency is a property of the relationship, not of each invoice. Set it on the customer or vendor in Payees, and every document for them is in that currency from then on. If you work with someone in two currencies, set them up as two payees.

Once a payee has any document at all, their currency locks, even if every document so far is in your home currency. Each document also keeps the currency it was written in: editing an old bill never turns $10,000 into 10,000 of another currency, and moving a document to a payee who works in a different currency is refused.

Writing a foreign invoice or bill

Open an invoice for a foreign customer and the editor tells you at the top: this customer works in their currency. You type your amounts in it, the exchange rate for the invoice date fills in automatically from the European Central Bank's daily reference rates, and the editor shows you both totals side by side, theirs and yours.

Rates keep their full precision, so a currency worth a small fraction of yours (the rupiah, the dong) shows enough digits to mean something, and large amounts in those currencies fit on a line.

You can type a different rate, for example the one your bank quoted. If it is too far from the published rate for that date, the save is refused with both numbers shown, so a slipped digit cannot quietly misprice an invoice. For a date older than the published feed covers, you enter the rate yourself.

The printed invoice, the emailed copy, and the page your customer opens all read in their currency. That is the number they owe. Bills from a foreign vendor work the same way, mirrored. Estimates too, and an estimate that becomes an invoice picks up the rate for the invoice's own date.

Getting paid, and where the difference goes

Here is the part that does the real work. Say you invoiced EUR 1,000 when the rate made it $1,100 in your books. The customer pays three months later, and your bank actually receives $1,047.32.

When you receive the payment, you apply EUR amounts to the invoices and enter one more thing: what your bank actually received, in your currency. Nobody types an exchange rate. The true rate is those two numbers divided, your bank's own rate including its spread, and the $52.68 difference posts automatically to Exchange gain or loss. The preview shows you the derived rate and the gain or loss before you save. If the amount you typed would mean a rate far from the published one (say 11,000 typed for 1,100), TaDa Books asks you to check it before saving.

Paying a foreign vendor's bill is the mirror image: you enter what actually left your bank, and if fewer dollars left than the books said you owed, the difference posts as a gain.

Partial payments work the same way, and they close exactly. A EUR invoice paid in three uneven pieces at three different rates ends at exactly zero, in both currencies, with each piece carrying its own gain or loss.

What the open balances are worth today

Between the invoice and the payment, the rate keeps moving. Reports > Unrealized Exchange shows what your open foreign invoices and bills are worth on a day you pick, at that day's published rate, against what your books recorded for them: a gain when a customer's currency is worth more of yours than when you invoiced, a loss when a currency you owe in has strengthened. Each currency has its line with the day's rate, and every open document is listed below it.

It is a report and posts nothing: the real gain or loss posts by itself when the money moves. Run it for December 31 in January and it still reads December 31, because a payment dated after the day is counted as not yet received. The report shows only when multi-currency is on, and a day older than the published rates (about 90 days) says so for that currency instead of guessing.

What stays in your currency

Your reports, your account balances, and your bank accounts all stay in your home currency, always. A foreign document carries both sets of numbers: its own currency on the paper, and the home value in your books. Voiding a foreign payment puts both balances back.

Crediting a foreign customer

A credit memo for a customer who works in another currency is written in that currency, at the published rate for the memo's date (or a rate you type, within your tolerance), exactly like their invoices. It gives back no sales tax and takes no discount: untick taxable lines, or credit in your home currency when either is needed.

Apply to invoices lists only the customer's invoices in the same currency, and you type amounts in that currency. Each document comes off at the rate it was booked at, so when the credit and the invoice were booked at different rates, the difference posts as an exchange gain or loss on the day you apply it. Voiding the memo or the invoice takes that entry back too.

Refund asks for the credit refunded in the customer's currency and what the bank actually paid in yours. The credit comes off at its booked rate and the difference is an exchange gain or loss on the refund itself; a bank figure far from the published rate asks you to confirm before it saves. Open foreign credit is on Reports > Unrealized Exchange beside the open invoices. A foreign memo cannot be edited: void it and enter it again.

Sales receipts and purchase orders in another currency

A sales receipt for a foreign customer is written in their currency, like their invoice. They pay the receipt's own amount on the spot, and the money is booked in your currency at the receipt's rate - the same rate as the sale

  • so no exchange gain or loss posts. Its amounts and date stay as they are

once saved: void it (its payment goes with it) and enter it again.

A purchase order for a foreign vendor is written in the vendor's currency, and its paper shows their figures. An order touches no books. When you bill what arrived, the bill is booked at the bill's date, the day the vendor's invoice says what you owe, so the dollars on the bill can differ from the order's. An order keeps its currency: moving it to a vendor in another currency is refused, and so is billing it if the vendor's currency changed since you wrote it (enter that bill by hand, then close the order).

A credit from a foreign vendor

A vendor credit from a vendor who bills in another currency is entered in their currency, at its date's rate, like their bill. It is spent from the credit itself: open it and use Spend it on their bills, typing how much goes on each of their open bills in the same currency. Each document comes off at the rate it was booked at, and when those differ the difference is posted once per bill as an exchange gain or loss, dated the day you spend it. Pay bills does not spend foreign credit; spend it first, then pay what is left. Taking the credit off a bill, voiding the credit or deleting the bill gives both their amounts back and removes the exchange entry. A foreign credit cannot be edited: void it and enter it again. Open foreign vendor credit is on Reports > Unrealized Exchange.

When a foreign vendor pays the credit back, Paid back asks for the credit given back in their currency and what your bank actually received in yours. The credit comes off at the rate it was booked at, and the difference is an exchange gain or loss on the deposit itself.

Foreign invoices are settled from the Invoices screen rather than paid online.