# Keep currency rates up to date

Activate the currencies you work with, order the public sources that fetch their rates every day, fill in past dates, and read the log of every run when a rate is missing.

An invoice in a foreign currency is converted into the company's currency at the rate of its date. The rates are fetched every day from public sources, the providers, with no paid service.

## Before you start {#before-you-start}

- You need the **Administrator** access right on **Accounting**.
- Turn on **Automatic Currency Rate Update** in [Banks, cash and currencies settings](banks-and-cash-settings): without it the providers never run on their own.

## Activate the currencies {#activate}

1. Open **Accounting/Configuration/Accounting/Currencies**, search for the currency by its code and switch on the toggle at the end of its line.

![The currencies list; the switch at the end of a row activates the currency.](https://jaah.app/web/image/10416-7f1d6dd4/banks-and-cash-rates-currencies_active-en.png)

2. Click the currency. **Automatic Update** is on by default, so the daily update fetches its rate; turn it off for a currency whose rate you type yourself, or a provider will replace your rate of the day.

![The euro, active and kept up to date automatically, with its rates by date below.](https://jaah.app/web/image/10420-33d52d3d/banks-and-cash-rates-currency_auto_update-en.png)

3. The **Rates** tab lists one rate per **Date** and **Company**, in units of the currency for one unit of the company's currency (**Unit per USD**) and the other way round. **Add a line** types a rate by hand.

![The Rates tab lists one rate per date and company.](https://jaah.app/web/image/10424-f9770154/banks-and-cash-rates-currency_rates-en.png)

## Order the providers {#providers}

Open **Accounting/Configuration/Currency Rate Providers**. Each company has its own providers. The order of the list is the priority: each currency is taken from the first provider that supports it, and the next ones are asked only for the currencies still missing. Drag a line by its handle to change the order. **Health Status** reads **OK**, **Warning** when failures outnumber successes, **Error** when the last call failed, or **Idle** before the first run.

![The providers in their order of priority, with the health of each one.](https://jaah.app/web/image/10222-38ba0d1a/banks-and-cash-first-minute-providers_list-en.png)

Open a provider:

- **Service**: the source. The **European Central Bank** publishes about 30 currencies, the **Central Bank of the UAE** about 80 with the Gulf ones, **ExchangeRate-API (open)** about 160. **Frankfurter (ECB JSON)**, the European Central Bank's rates in another format, is not set up by default: click **New** in the list to add it.
- **Sequence**: the priority as a number, lower first.
- **Update Every**: one **Day(s)** by default; with **Week(s)** or **Month(s)**, the provider runs when **Next Run** comes.

![A provider with its priority, its schedule and the result of its last run.](https://jaah.app/web/image/10428-c7350a2b/banks-and-cash-rates-provider_schedule-en.png)

The **Currencies** tab limits the provider to some currencies; leave it empty to fetch all it supports. **Supported by Provider** shows which of your active currencies it can give. After a failure, a **Last Error** tab shows the message.

![The currencies the provider can give among the active ones, and the box that limits it to some of them.](https://jaah.app/web/image/10432-9fe578d0/banks-and-cash-rates-provider_currencies-en.png)

The **Actions** menu, at the top of the form on a phone too, holds **Update Now**, which fetches today's rates from this provider only, **Test Connection**, which asks the source without writing anything and answers **Connection OK** or **Connection Failed** with the reason, and **View Logs**.

![The Actions menu of the provider, with Update Now, Test Connection and View Logs.](https://jaah.app/web/image/10436-fbbfff65/banks-and-cash-rates-provider_actions-en.png)

The **Run History** tab lists each run with its **State**, **Rates Written** and **Triggered By**: **Scheduled**, **Manual**, **Test** or **Backfill**.

![Every run of the provider, with its result, the rates written and what started it.](https://jaah.app/web/image/10438-db63c778/banks-and-cash-rates-provider_history-en.png)

## Fill in past dates {#backfill}

For a currency activated late, or after days without updates, open **Accounting/Configuration/Backfill Currency Rates**. Choose **Date From**, **Date To** and the **Providers**, then click **Run Backfill**; the message **Backfill Completed** tells how many currencies were updated. Only the European Central Bank and Frankfurter give past days; the other two give the latest day only.

![The backfill window with a period and the European Central Bank as source.](https://jaah.app/web/image/10442-4ac1d3f4/banks-and-cash-rates-backfill-en.png)

## Read the log {#log}

Open **Accounting/Reporting/Management/Currency Rate Logs**. Each line is one run of one provider, with its **State** (**Success**, **Partial** or **Error**), **Rates Written**, **Triggered By** and the **Error** message when there is one. The **Error** filter keeps the failed runs. Lines older than 30 days are deleted every week: see [Banks, cash and currencies automations](banks-and-cash-automations).

![The log of every run, with the error of the failed one.](https://jaah.app/web/image/10446-3f7bc9af/banks-and-cash-rates-update_log-en.png)

## FAQ {#faq}

### A currency has no rate for today. Why? {#no-rate}

Check in this order: the automatic update is on in the settings; the currency is active with **Automatic Update** on; a provider of your company supports it (**Supported by Provider**); the log shows no **Error** for today.

### My company keeps its books in a currency the European Central Bank does not publish. {#base}

The European Central Bank then writes no rate, and its log line reads **Success** with no rate written; the next provider in the list gives the rates. The Central Bank of the UAE and ExchangeRate-API both publish the Gulf currencies.

---

- Source: https://jaah.app/docs/banks-and-cash/keep-currency-rates-up-to-date
- Updated: 2026-10-23
- Version: Banks, cash and currencies 19.0.3.1.1
- Verified: 2026-10-23
