| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Community Apps Dependencies | Show |
| Lines of code | 525 |
| Technical Name |
ek_currency_rate_openexchange |
| License | OPL-1 |
| Website | https://ekika.co |
| Versions | 15.0 16.0 17.0 18.0 19.0 |
Open Exchange Rates - Live Currency Sync for Odoo Community
Keep your multi-currency books accurate without manual effort. This module connects Odoo directly to openexchangerates.org, fetching live exchange rates on a fully configurable, per-company schedule and storing them in Odoo's native currency rate table - on Community Edition.
Key Features
-
Community Edition compatible
-
Live rates from openexchangerates.org
-
Per-company independent scheduling
-
Guided one-step setup wizard
-
Flexible interval: minutes to months
-
Configurable next run time
-
One-click Update Now from Settings
-
Secure App ID credential on config record
-
Multiple Currency Supported
-
Error-safe cron with suppress & log
-
Settings read-only summary panel
Live Rate Fetching
Connects directly to the openexchangerates.org REST API using your personal App ID,
fetching the latest published exchange rates for all active currencies in your Odoo database.
Your company's base currency is always passed as the ?base= parameter,
so paid-plan users get rates native to their own currency.
- Fetches all currencies active in your database
- Passes company base currency as the API base parameter
- Returns timestamped rates with the API publication date
Per-Company Configuration
Every company gets its own configuration record (provider, credentials, interval) and its own dedicated scheduled action - so Company A can sync hourly via OpenExchangeRates while Company B syncs daily, completely independently. Adding a second company never interferes with the first.
- Each company owns a separate cron action
- Credentials stored per-company, not globally
- Disabling one company's config pauses only its cron
Guided Setup Wizard
A single Configure Currency Provider button in General Settings opens a focused wizard that collects everything - provider selection, App ID, update interval, and first run time - in one dialog. No digging through technical menus; the wizard creates the config and the cron automatically on Confirm.
- Provider dropdown lists all installed providers
- App ID field appears only when OpenExchangeRates is chosen
- Confirm creates config + cron in one step
Flexible Scheduling
Control exactly when and how often rates sync using a combination of an interval number and an interval unit (minutes, hours, days, weeks, or months), mapped directly onto Odoo's native cron system. The Next Run field lets you set the first (or next) execution time without waiting for the default trigger.
- Five interval units: minutes, hours, days, weeks, months
- Next Run date/time editable from the wizard
- Reconfigure at any time without losing existing rates
Settings Dashboard
The Currency Exchange Rates block in Settings ⺠General Settings always shows the current configuration at a glance - active provider name, update frequency, and next scheduled run - without exposing sensitive credentials. Three action links let you Update Now, Reconfigure, or Remove without leaving the settings page.
- Provider name, interval, and next run shown read-only
- "Update Now" triggers an immediate sync
- "Remove" prompts confirmation before deleting the cron
Community Edition Ready
Built from the ground up for Odoo Community Edition making it installable on any standard Community instance.
- Depends only on base_setup (no account required)
- No Enterprise module needed
- Clean install alongside Community modules
Install Open Exchange Rates Currency Rates Sync - Community
(ek_currency_rate_openexchange) from the Apps menu.
Navigate to Settings -> General Settings and scroll down to the Currency Exchange Rates block. When no provider has been configured yet, you will see a single Configure Currency Provider button. This block is company-specific - switching the company selector in the top bar will show a separate, independent configuration.
Click Configure Currency Provider. A dialog wizard opens with three inputs:
Provider - select Open Exchange Rates from the dropdown. An App ID field will appear immediately below it (it is hidden for other providers). Paste your API key from openexchangerates.org -> Account -> App IDs.
Update Every - enter a number and choose a unit (Minutes, Hours, Days, Weeks, or Months). For example, 1 Day is a sensible default for most businesses.
Next Run - the datetime when the first (or next) automatic sync will fire. Defaults to right now; adjust it if you want to defer the first run.
Click Confirm. The wizard creates the per-company Currency Rate Provider Configuration record and automatically provisions a dedicated Scheduled Action (ir.cron) for your company. The settings page refreshes to show the summary panel - Provider, interval, and Next Run - confirming the setup is live.
Click Update Now to trigger an immediate rate fetch and confirm your App ID is working. Then navigate to Settings -> Technical -> Currencies to see the freshly-written exchange rates for today's date. From this point, rates will be updated automatically at every scheduled interval.
To change the provider, App ID, interval, or next run time at any point, click Reconfigure in the Settings block. The wizard reopens pre-filled with the current values - change only what you need and click Confirm. To stop automatic rate updates entirely, click Remove (a confirmation dialog will appear). This deletes the configuration record and its scheduled action; previously written rates are left untouched.
Frequently Asked Questions
Can't find your question? Contact us at hello@ekika.co or open a support ticket at ekika.co/support.
Yes - it is built specifically for Odoo Community Edition.
Register or log in at openexchangerates.org, then go to Account -> App IDs. Copy the App ID shown there and paste it into the App ID field in the Configure Currency Provider wizard.
Yes - this is a core design goal of the architecture. Each company has its own currency rate provider configuration record with an independent provider choice, App ID, and schedule. Each config also owns a separate schedule action, so the schedules run entirely independently. Changing one company's interval or pausing its cron has no effect on other companies.
Click Reconfigure in the Currency Exchange Rates block in General Settings. The wizard reopens pre-filled with all current values. Change the Update Every fields, the Next Run datetime, or even the provider and App ID, then click Confirm. The underlying scheduled action is updated automatically - no manual cron editing required.
The cron run is safe - it logs the failure and moves on without raising an exception that would mark the cron as broken. A warning is written to the Odoo server log with the company name, provider name, and error message. The previously-stored rates remain in place untouched. If you use Update Now manually, the error is shown immediately as a user-facing dialog so you can act on it right away.
Rates are written to Odoo's native res.currency.rate table,
scoped to the company. The module uses an upsert strategy: if a rate
already exists for the same currency, company, and date it is updated in place;
otherwise a new record is created.
Only records matching today's API date are created or updated on each sync.
Contact us:
- WhatsApp / Phone: +919510031431 - URGENT
- Email: hello@ekika.co
- Website: https://ekika.co
- Support Ticket: https://ekika.co/support
- 24 x 7 Available - Contact us NOW.
Need Help?
EKIKA Has Your Back - 24/7 Support.
We're just a message away, no matter the time zone.
90 Days Free Support
(copy link to clipboard)
(copy link to clipboard)
(copy link to clipboard)
Services EKIKA Provides
EKIKA is your destination for expert Odoo ERP implementation and customization. We pride ourselves on building reliable, trust-based partnerships that give you full transparency and control over your business processes.
With over 12 years of experience, we can assist you with eCommerce platforms, production planning, point-of-sale systems, inventory management, and advanced field worker tracking solutions to optimize your workflows.
Implementation
Odoo ERP tailored for your business needs for smooth operations.
Customization
Personalized adjustments to Odoo modules for seamless management.
Support
Ongoing assistance and maintenance to keep your Odoo running smoothly.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module