There's some initial work required to set up your accounts the way this app needs, but once this has been done once it all keeps working without much further manual intervention required.
This app uses special "tags" in the account notes or nickname to identify a foreign account's currency.
You can create a foreign currency account as normal in YNAB, and then:
In YNAB, left-click the account.
Put the three-letter currency code in angle brackets somewhere in the
account's notes or nickname. For example, a U.S. Dollar account would have
<USD>
, and a Euro account would have <EUR>
.
Code | Name (Symbol) |
---|---|
AFN | Afghan Afghani (؋) |
ALL | Albanian Lek (Lek) |
DZD | Algerian Dinar |
AOA | Angolan Kwanza |
ARS | Argentine Peso ($) |
AMD | Armenian Dram |
AWG | Aruban Florin (ƒ) |
AUD | Australian Dollar ($) |
AZN | Azerbaijani Manat (ман) |
BSD | Bahamian Dollar ($) |
BHD | Bahraini Dinar |
BDT | Bangladeshi Taka |
BBD | Barbadian Dollar ($) |
BYR | Belarusian Ruble (p.) |
BZD | Belize Dollar (BZ$) |
BMD | Bermudan Dollar |
BTN | Bhutanese Ngultrum |
BTC | Bitcoin (BTC) |
BOB | Bolivian Boliviano ($b) |
BAM | Bosnia-Herzegovina Convertible Mark (KM) |
BWP | Botswanan Pula (P) |
BRL | Brazilian Real (R$) |
GBP | British Pound (£) |
BND | Brunei Dollar ($) |
BGN | Bulgarian Lev (лв) |
BIF | Burundi Franc |
XPF | CFP Franc |
KHR | Cambodian Riel (៛) |
CAD | Canadian Dollar ($) |
CVE | Cape Verdean Escudo |
KYD | Cayman Islands Dollar ($) |
XAF | Central African CFA Franc |
CLP | Chilean Peso ($) |
CLF | Chilean Unit Of Account |
CNY | Chinese Yuan (¥) |
COP | Colombian Peso ($) |
KMF | Comorian Franc |
CDF | Congolese Franc |
CRC | Costa Rican Colon (₡) |
HRK | Croatian Kuna (kn) |
CUC | Cuban Convertible Peso |
CUP | Cuban Peso ($) |
CZK | Czech Koruna (Kč) |
DKK | Danish Krone (kr) |
DJF | Djiboutian Franc |
DOP | Dominican Peso (RD$) |
XCD | East Caribbean Dollar ($) |
EGP | Egyptian Pound (£) |
ERN | Eritrean Nakfa |
ETB | Ethiopian Birr |
EUR | Euro (€) |
FKP | Falkland Islands Pound (£) |
FJD | Fijian Dollar ($) |
GMD | Gambian Dalasi |
GEL | Georgian Lari |
GHS | Ghanaian Cedi |
GIP | Gibraltar Pound (£) |
GTQ | Guatemalan Quetzal (Q) |
GGP | Guernsey Pound |
GNF | Guinean Franc |
GYD | Guyanaese Dollar ($) |
HTG | Haitian Gourde |
HNL | Honduran Lempira (L) |
HKD | Hong Kong Dollar ($) |
HUF | Hungarian Forint (Ft) |
ISK | Icelandic Króna (kr) |
INR | Indian Rupee (₹) |
IDR | Indonesian Rupiah (Rp) |
IRR | Iranian Rial (﷼) |
IQD | Iraqi Dinar |
ILS | Israeli New Sheqel (₪) |
JMD | Jamaican Dollar (J$) |
JPY | Japanese Yen (¥) |
JEP | Jersey Pound |
JOD | Jordanian Dinar |
KZT | Kazakhstani Tenge (лв) |
KES | Kenyan Shilling (KSh) |
KWD | Kuwaiti Dinar |
KGS | Kyrgyzstani Som (лв) |
LAK | Laotian Kip (₭) |
LVL | Latvian Lats (Ls) |
LBP | Lebanese Pound (£) |
LSL | Lesotho Loti |
LRD | Liberian Dollar ($) |
LYD | Libyan Dinar |
MOP | Macanese Pataca |
MKD | Macedonian Denar (ден) |
MGA | Malagasy Ariary |
MWK | Malawian Kwacha |
MYR | Malaysian Ringgit (RM) |
MVR | Maldivian Rufiyaa |
IMP | Manx pound |
MRO | Mauritanian Ouguiya |
MUR | Mauritian Rupee (₨) |
MXN | Mexican Peso ($) |
MDL | Moldovan Leu |
MNT | Mongolian Tugrik (₮) |
MAD | Moroccan Dirham |
MZN | Mozambican Metical |
MMK | Myanma Kyat |
NAD | Namibian Dollar ($) |
NPR | Nepalese Rupee (₨) |
ANG | Netherlands Antillean Gulden (ƒ) |
BYN | New Belarusian Ruble (p.) |
TWD | New Taiwan Dollar (NT$) |
NZD | New Zealand Dollar ($) |
NIO | Nicaraguan Cordoba (C$) |
NGN | Nigerian Naira (₦) |
KPW | North Korean Won (₩) |
NOK | Norwegian Krone (kr) |
ZMK | Old Zambian Kwacha |
OMR | Omani Rial (﷼) |
TOP | Paanga |
PKR | Pakistani Rupee (₨) |
PAB | Panamanian Balboa (B/.) |
PGK | Papua New Guinean Kina |
PYG | Paraguayan Guarani (Gs) |
PEN | Peruvian Nuevo Sol (S/.) |
PHP | Philippine Peso (₱) |
PLN | Polish Zloty (zł) |
QAR | Qatari Riyal (﷼) |
RON | Romanian Leu (lei) |
RUB | Russian Ruble (руб) |
RWF | Rwandan Franc |
SHP | Saint Helena Pound (£) |
SVC | Salvadoran Colón |
WST | Samoan Tala |
STD | Sao Tome And Principe Dobra |
SAR | Saudi Riyal (﷼) |
RSD | Serbian Dinar (Дин.) |
SCR | Seychellois Rupee (₨) |
SLL | Sierra Leonean Leone |
XAG | Silver (troy ounce) |
SGD | Singapore Dollar ($) |
SBD | Solomon Islands Dollar ($) |
SOS | Somali Shilling (S) |
ZAR | South African Rand (R) |
KRW | South Korean Won (₩) |
XDR | Special Drawing Rights |
LKR | Sri Lankan Rupee (₨) |
SDG | Sudanese Pound |
SRD | Surinamese Dollar ($) |
SZL | Swazi Lilangeni |
SEK | Swedish Krona (kr) |
CHF | Swiss Franc (Fr.) |
SYP | Syrian Pound (£) |
TJS | Tajikistani Somoni |
TZS | Tanzanian Shilling (TSh) |
THB | Thai Baht (฿) |
TTD | Trinidad and Tobago Dollar (TT$) |
TND | Tunisian Dinar |
TRY | Turkish Lira |
TMT | Turkmenistan Manat |
AED | UAE Dirham |
UGX | Ugandan Shilling (USh) |
UAH | Ukrainian Hryvnia (₴) |
USD | United States Dollar ($) |
UYU | Uruguayan Peso ($U) |
UZS | Uzbekistani Som (лв) |
VUV | Vanuatu Vatu |
VEF | Venezuelan Bolivar |
VND | Vietnamese Dong (₫) |
XOF | West African CFA Franc |
YER | Yemeni Rial (﷼) |
ZMW | Zambian Kwacha |
ZWL | Zimbabwean Dollar |
Click Save.
You don't need to add any currency tag to your local currency accounts (although it won't hurt anything if you do).
Once you've added these tags to your foreign accounts, click the Refresh button in this app's Accounts screen and you should see them appear in a table.
In addition, for each foreign currency you use, you must create a "virtual" difference account for each type of account you use with that currency (see the Approach section in the introduction for a reminder of why).
For example, if you have Euro Checking and Savings accounts, you would need to create two difference accounts for Euros. If you have Yen Checking, Credit Card, and Asset accounts, you will need to create three for Yen.
The difference accounts are identified with a slightly different "tag" than
foreign currency accounts: the three-letter currency code followed by a space
and DIFFERENCE
, all in angle brackets (e.g. <EUR DIFFERENCE>
).
The app will inform you if you are missing any required difference accounts, so rather than worry about the above details, just create whichever ones the app says you need.
To create a difference account:
In YNAB, click the Add Account button.
Choose Unlinked.
In the Add Account dialog, enter:
<EUR DIFFERENCE> Checking
for Euros Debit).0
Click Next and then Done.
Once you've created the difference accounts, click the Refresh button in this app's Accounts screen again, and you should see them added to the table.
Once all the required difference accounts have been created, you can continue to the Transactions screen.
At this point, you should create a budget category for foreign currency
balance adjustments due to exchange rate fluctuations. You can name this
anything you want, for example Foreign Currency Adjustments
. You will need
to budget enough in this category to cover likely fluctuations in exchange
rates given the amount of your foreign currency holdings. You can also create
separate budget categories for different currencies if you wish.
The exchange rate adjustment transactions will not have a budget category set
by default, but they will have their payee set to Exchange Rate Adjustments <CURRENCY>
. Just set the category for one of these transactions after it's
been created, and YNAB will remember that category for adjustment transactions
created in the future. You can use YNAB's Manage Payees screen to set or
change the automatic categorization. You can also rename the payee here, if
you wish.
The adjustment payee is different for each currency, so you can set different adjustment categories for each currency if you prefer.
Since this app is not able to change how YNAB displays currencies, amounts in foreign currencies will still be displayed using your local currency's symbol. To avoid confusion, we recommend going to YNAB's Budget Settings screen and changing the Currency Placement to Don't Display Symbol.
The currency tags (e.g. <EUR>
) don't look so nice in account nicknames, and
take a lot of screen real estate, so I like to put them in the account notes
and then put the emoji flag of the currency's country in the account nickname. For
example, my Royal Bank of Canada chequing account has the nickname "🇨🇦 RBC
Chequing," and has <CAD>
in the account notes.