In order to perform conversions between currencies exchange rates must be defined.
Setting currency exchange rates¶
All the Currency values are relative. Best practice is to define which currency you want to use as the base currency by setting its exchange Rate to 1 for the date when it is first used. Then the rates of all other currencies are set as a multiplier of the base currency.
In order to set an exchange rate of
1.0 EUR = 1.1222 USD for the 1st of
January the following records should be created:
- A rate of
1.0for the EUR currency with the 1st of January as the date.
- A rate of
1.1222for the USD currency with the 1st of January as the date.
If you then wanted to update the exchange rate to
1.0 EUR = 1.1034 USD for
the 15th of January you just need to set the rate on the USD currency to
1.1034 for that date.
In this example, as there isn’t any rate set for the dates between the 2nd
and 14th of January the last available rate will be used.
Here this rate would be
1.1222 as this was the rate set for the 1st of
Scheduling rate updates¶
You may want to define some Scheduled Rate Updates to
keep the Exchange Rates up to date.
When doing this you have to pick a source, the base currency and a frequency.
Then for each required date since the last update, a rate of
1.0 will be
set for the base currency and the corresponding rate will be set for each of
the selected currencies.
It is strongly advised to use the same base currency for all Scheduled Rate Updates.
The currency module only supports the rates provided by the European Central Bank, but third party modules can add additional sources for exchange rates.