Firefly III supports as many currencies as you like. By default it ships with a variety of currencies, including crypto currencies.
You can add your own currencies if you're missing one.
Under Options > Preferences you will find the "Currencies" page. When you are an admin, you will see the button "Create a new currency". You should enter some details such as the name, the $ymbol of the currency and of course the currency code (preferrably according to the ISO 4217 standard).
Currencies have decimal places. Most have 2, like the Euro. Notable exceptions are Bitcoin (8) and the Mauritanian ouguiya (no decimals). Both are supported by Firefly III. Bitcoin is present by default.
Firefly III support multiple currencies but it requires one default currency. When you install Firefly III this is the Euro. You can change this if you want to.
Asset accounts have one main currency. My personal bank accounts are in Euro. But I have a credit card in USD. You can set this when you create or edit an asset account. This is important when you create or import transactions.
When you try to create a transaction in Euro's on an asset account that in US Dollars, you must set the amount in both USD and EUR. Firefly III will suggest an exchange rate, based on the fixer.io API. However, you can change both amounts. Banks often use exchange rates that are less in your favour.
When you create a transfer between an account in EUR and USD (or other currencies) you must also indicate the amount transferred in both currencies. Firefly III will support you in this by suggesting exchange rates.
Due to changes in the Fixer IO API, you need a valid API key in your .env
file, as well as a paid account to exchange currencies for anything else than EUR.