Odoo Community Association

Currency Rate Update: Bank Indonesia

Beta License: AGPL-3 OCA/l10n-indonesia Translate me on Weblate Try me on Runboat

Adds Bank Indonesia (BI) as a currency rates provider for the currency_rate_update module. Exchange rates are fetched from Bank Indonesia’s official SOAP webservice (wsKursBI) using the getSubKursLokal3 method.

Data Source: Bank Indonesia — https://www.bi.go.id

Rate Type: Kurs Transaksi BI (Transaction Rates — middle rate / kurs tengah)

Update Frequency: Daily on business days (Mon–Fri, excluding Indonesian national holidays)

Supported Currencies (vs IDR):

USD United States Dollar
EUR Euro
GBP British Pound
JPY Japanese Yen
SGD Singapore Dollar
AUD Australian Dollar
BND Brunei Dollar
CAD Canadian Dollar
CHF Swiss Franc
CNY Chinese Yuan
DKK Danish Krone
HKD Hong Kong Dollar
KRW South Korean Won
MYR Malaysian Ringgit
NOK Norwegian Krone
NZD New Zealand Dollar
SAR Saudi Riyal
SEK Swedish Krona
THB Thai Baht

Note: This module is designed primarily for Indonesian companies using IDR (Indonesian Rupiah) as their base currency. Cross-rate calculations (e.g. USD base company wanting EUR rates) are supported as long as the base currency is in the list above.

Table of contents

Configuration

To configure Bank Indonesia currency rates provider:

  1. Go to Invoicing > Configuration > Settings
  2. Ensure Automatic Currency Rates (OCA) is checked
  3. Go to Invoicing > Configuration > Currency Rates Providers
  4. Create a new provider with Provider: Bank Indonesia (Kurs Transaksi)
  5. Select the currencies you want to update (USD, EUR, SGD, etc.)
  6. Configure the update schedule (e.g., daily, weekly)
  7. Save the provider

Note

Your company’s base currency should be IDR (Indonesian Rupiah) or one of the supported foreign currencies if you need cross-rate calculations.

Usage

After configuration, currency rates are automatically updated based on your schedule. To manually update rates:

  1. Go to Invoicing > Configuration > Currency Rates Providers
  2. Select the Bank Indonesia provider
  3. Click Action > Update Rates Wizard
  4. Set the date range (From/To dates)
  5. Click Update to fetch rates from Bank Indonesia

To view the fetched rates:

  1. Go to Invoicing > Configuration > Currencies
  2. Select a currency (e.g., USD)
  3. Open the Rates tab to see historical exchange rates

The rates are fetched from Bank Indonesia’s official webservice at https://www.bi.go.id/biwebservice/wskursbi.asmx and represent the middle rate (average of buy/sell rates) for each currency pair.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • PT Solusi Aglis Indonesia

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:

hitrosol

This module is part of the OCA/l10n-indonesia project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.