# Foreign exchange rates

> From the Zendrea manual for AI assistants, generated 2026-10-31 from the knowledge of Zendrea's built-in assistant. All topics: https://www.zendrea.ch/llms.txt; all of them in one file: https://www.zendrea.ch/llms-full.txt. Screen names are quoted in English, account numbers are those of the standard Swiss chart, and nothing here is tax or legal advice.

Each installation is configured with ONE official rate source, and every rate records the provider that actually answered. The two providers: (1) source "frankfurter" = daily ECB reference rates via the Frankfurter API (frankfurter.dev, a free open-source service republishing the European Central Bank's official rates). ECB rates are EUR-based by convention; any non-EUR pair is computed as a cross-rate via EUR (e.g. USD→CHF = (EUR→CHF) ÷ (EUR→USD)); the ECB publishes around 16:00 CET each TARGET business day, so weekend and holiday lookups roll forward to the prior business day's rate. (2) source "estv" = the official Swiss federal exchange rates (published daily by the federal customs office BAZG, used by the tax administration ESTV) — the rates sanctioned for Swiss VAT. They are quoted directly against CHF with no EUR pivot; the list published on a given day is valid for the FOLLOWING day(s), so a booking on date D uses the list published the previous day, and weekends/holidays keep the last published list. A rate entered by hand overrides the provider on the same date. Each foreign-currency entry records whether it used the daily rate of the configured source or its monthly average (the official Monatsmittelkurs on the Swiss source); the Ledger report shows which.
