How to Read Currency Codes on an International Invoice

· 5 min read

You invoice a client in Zurich. You write "$4,200" at the bottom. Their accounts payable team pauses, because $ could mean US dollars, Canadian dollars, Australian dollars, Singapore dollars, or Hong Kong dollars, and the amount they owe changes by hundreds depending on which one you meant. That single ambiguous symbol is enough to send your invoice into a query queue for a week.

The fix is a three-letter code. Write CHF 4,200 or USD 4,200 and there is nothing to interpret. Those codes come from ISO 4217, the standard that assigns every world currency a unique three-letter identifier. Once you know how to read them, you never have to rely on a symbol again.

How an ISO 4217 code is built

Each code has three letters. The first two are almost always the two-letter country code from ISO 3166 (the same codes you see in domain names and passports). The third letter is usually the first letter of the currency name.

Take GBP. GB is Great Britain, P is pound. JPY is JP for Japan, Y for yen. USD is US for the United States, D for dollar. INR is IN for India, R for rupee. Once you see the pattern, most codes decode themselves.

A few break the rule on purpose. The euro is EUR, not tied to one country. Codes starting with X are supranational or special: XAU is gold, XDR is the IMF special drawing right. You will almost never put an X code on an invoice, but it explains why not every code maps to a nation.

Codes you will actually put on invoices

Most cross-border invoicing runs through a short list. If you bill clients in the usual export markets, you will meet these constantly:

CodeCurrencyCommon symbol
USDUS dollar$
EUREuro
GBPBritish pound£
CADCanadian dollar$
AUDAustralian dollar$
CHFSwiss francFr
SGDSingapore dollar$
AEDUAE dirhamد.إ
INRIndian rupee
JPYJapanese yen¥

Notice how many of these share the dollar sign. That is the whole reason the code matters. A New Zealand client and a Canadian client can both send you a quote in "$" and mean completely different money. The code removes the guesswork. A full lookup lives in our reference table of ISO 4217 currency codes if the currency you need is not in the shortlist above.

Picking the right code for a specific invoice

The currency on the invoice should be the one you actually want to receive, agreed with the client before you send anything. Two common approaches:

  • Bill in your home currency. You quote and invoice in your own currency, and the client's bank converts on their side. Your number is predictable, the exchange risk sits with them.
  • Bill in the client's currency. Easier for their AP team to approve against a budget, but you carry the conversion risk and the receiving fees.

Whichever you choose, state it in the code, not just the symbol. Put the three letters next to the total and next to your bank details. If your account holds a specific currency, invoicing in a different one forces a conversion somewhere, and someone pays for it. If you receive through a multi-currency account, match the code to the balance you want the money to land in. Our guide to international invoicing in practice walks through the tax and bank-detail side that sits alongside the currency choice.

One trap: never mix currencies on a single invoice. Every line item, the subtotal, any tax, and the total must be in the same currency. If you genuinely need to bill in two currencies, send two invoices.

Where the code has to appear

Put the currency in three places so nothing is ambiguous. Next to the total amount due. In the payment instructions, so the client knows which currency their transfer should be in. And ideally in every line-item price, if your layout allows it.

If you send a quote before the invoice, set the currency there and carry the same code straight through. A quote in EUR that becomes an invoice in USD is a change the client did not agree to, and it will bounce back to you. Getting the bank side right matters too; a mismatched IBAN and currency is a classic delay, so it is worth running the account number through an IBAN validator before you send.

Making it automatic

The reliable way to avoid a currency slip is to set it once and let the invoice enforce it. In JupiterInvoice you pick the currency when you build the invoice, and it applies to every line, the subtotal, and the total together. When you create an invoice, the code sits on the document your client opens, so there is no symbol left to misread.

Currency is one of the fields a recipient can ask to change rather than edit directly. If a client opens your invoice and needs it in a different currency, they submit a request and you approve or decline it, which creates a clean new version rather than a silent overwrite. That keeps a record of who asked for what. For teams generating invoices at volume, the same currency handling is available through the JupiterInvoice API, so a system can set the code programmatically and never leave it blank.

Pick the currency, write the three letters, and put them next to every number that matters. Do that and the code does its one job: telling the person paying you exactly which money you expect.

Send an invoice your customer can actually respond to

JupiterInvoice lets recipients add PO numbers, update billing details, request changes, and approve for payment, all from a private link. No account needed on their side.

Create an invoice