Multiple Currencies in Magento 2

Configure Currency Magento 2 to determine what currency customers are allowed to use when checking out on your store. The currency symbol will appear in product prices and sales documents such as orders and invoices. Most interestingly, store admins are able to customise its appearance if needed.

Configure Currency

Firstly, you need to define which currencies are accepted to appear along with the price on your store.

  • Step 1: Select the Allowed Currencies
  • Step 2: Set the Import Connection
  • Step 3: Complete the Scheduled Import Settings
  • Step 4: Refresh the Currency Rates

Step 1: Select the Allowed Currencies

  • On the Admin Panel, go Stores > Settings > Configuration.
  • On the left panel, under General, select Currency Setup.
  • Open the Currency Options section,
    • Choose the primary currency for the Base Currency in the online transaction.
    • Assign Default Display Currency to the currency that you use to display pricing in your store.
    • In the Allowed Currencies list, collect any currencies you need for the payment in your store. If support multiple currencies, hold down the Ctrl key and select each option.

Admin Panel → Stores → Settings → Configuration

This will open the present screen for the ‘Configuration’, from the left corner we will expand the “General” link & fetch the sub-link for “Currency setup”.

Configuration → General → Currency Setup


Out of all options which we can see presently under the title of ‘Currency Setup’, we need to focus firstly for “Currency Options”.

We need to expand this & now we have the three options for currencies under this.

  • When the system message reminding the cache refreshment appears, Close it and refresh it later.
  • To determine the scope of the base currency, you need to:
    • On the left panel, under Catalog, select Catalog, and open the Price section.
    • Set Catalog Price Scope to either “Global” or “Website”.

Base Currency: This option is for the base currency which we are using for the online payment transactions. Though base currency is directly related with price of the products, but if we change the base currency for the products, the price will remain same & the currency rate will not be updated. For an instance we are charging some products in dollars & then change the base currency into pounds, we need to update the currency rates as well, in order to avoid fluctuations in profit margins, for this do stick to our next video for updating currency rates. For our present video, after choosing the required base currency like ‘US Dollar’, we will step ahead to our next option.

Default Display Currency: This option is for displaying the currency of your products on front end. We can select the currencies for each of the store-view & that need to be enabled in “Allowed Currencies” as well. For instance we are choosing, ‘US Dollar’.

Allowed Currencies: This option enables us to have the list of choices for different currencies we need to have for our front-end, but we do need to select the base currency as well. Once we do the currency rates are updated by our admin panel, the list of currencies we allow will show the exact currency rates to our customers after the time they have selected their required currency. Along with US Dollar for our instance, we have selected Euro as our other option of allowed currency.

We can define the scope of currency as well, which is configured globally means for all websites.

From the left corner, we need to select the sub-link for “Catalog”.

This will open the current page, from which we need to select the “Price” option; this will give us the sub-option of “Catalog Price Scope” to set the scope for our currencies as “Global” or “Website”. Kindly select as per your requirements.

Next get back to ‘Currency Setup’ to configure “Import Connection”. From here we will select the option of ‘Webservicex’.

This will have the sub-option for “Connection Time-out in seconds”, which is asking for the time in seconds we need to assign before the connection time expires.

We are keeping it as “150 seconds” for an instance. Kindly select as per the requirement.

Then we need to configure the “Scheduled Import Settings” which is falling under this ‘Currency setup’ title.

This will show us various sub-options to get the settings done:

1) Enabled: For this, we need to select “Yes” in case we are allowing the automatic update of currency rates.


2) Service: This will have the name of the rate provider, which is “webservicex” by default.

3) Start Time: This will have the time frame we need to assign in seconds, minutes or hours for updating the currency rates.


4) Frequency: This option will set the frequency we need to have for rates, i.e. daily, weekly or monthly.


5) Last options are for Error Email Recipient, Email Sender & Template which we need to select as per our store requirements.


After doing all these settings, we need to save the work done so far with our “Save Config” button. We need to the Cache management as well if it is prompted.


How to Configure Currency Catalog Price Scope

Step 2: Set the Import Connection

  • On the left panel, under,General select.Currency Setup
  • Open the sectionWebserviceX, enter the accepted duration (in seconds) of inactivity before the connection times out in the fieldConnection Timeout in Seconds.

  • How to Configure Currency Webservicex

Step 3: Complete the Scheduled Import Settings

  • Continuing in the tabCurrency Setup, open the sectionScheduled Import Settings.
  • If you want to auto-update currency rate, choose “Yes” in the fieldEnabled. Then do the following:
    • Set byService selecting the existing list and the default value is “Webservicex”.
    • Set Start Time (hours, munites, seconds) to auto-update the rate.
    • Set forFrequence the rate updating: Daily, Weekly, or Monthly.
    • In the fieldError Email Recipient, you will insert an email address which receives the email notification when there is any error in the import process. If enter many emails, the comma is used to separate them.
    • Set Error Email Sender who will appear on the email notification
    • Set toError Email Template the email template used for the error notification.
  • Save Config to complete.
  • When the system message displays together with “Cache Management” link, you need to click on the link to refresh the invalid cache.

Step 4: Refresh the Currency Rates

Make sure that the currency rates have been already updated with the current values before they go into effect. Scroll down this post and get the guide to update the rates manually even or to import the rates automatically.

Modify the currency symbols

As mentioned above, you can modify the currency symbols comfortably.

How to Configure Currency Currency Symbols

  • On the Admin Panel,Stores > Currency > Currency Symbols
  • Enable to use the standard symbol or clear the checkboxUse Standard and insert a custom symbol as you want.
  • Save Currency Symbols to enable the new symbol.
  • Remember to refresh the cache by clicking the “Cache Management” link on the sysstem message.

Update Currency Rates

Before updating the currency rates, ensure that the current rate configuration is ready to use. The currency rates can be set manually, or imported into the store. Especially, you can configure the currency rates to be auto-update on schedule and these rates are always lastest.

How to Configure Currency Currency Rates

Update a Currency Rate as manual

  • On the Admin,Stores > Currency > Currency Rates
  • Choose the rate you want to change, and overwrite a new value for each currency supported.
  • Click toSave Currency Rates enable it.

Import Currency Rates

  • On the Admin,Stores > Currency > Currency Rates
  • Choose the whileImport Service “WebserviceX” is the default service.
  • Click on the Importbutton.

The updated rates appear in the Currency Rates list. If the rates have changed since the last update, the old rate appears below for reference.

  • Save Currency Rates to enable it.
  • Remember to refresh the cache by clicking the “Cache Management” link on the system message.

Import Currency Rates on Schedule

  • Enable Cron (Schedule Task) on your store.
  • Complete the Currency Rate Setup and establish the import connection and schedule.
  • To ensure that the import runs well on schedule, let check the Currency Rates list. Then, wait for the duration of the frequency setting established for the schedule, and check the rates again.

Ref: Magento 2 User Guide

Viewed 903 Times

Post On 2022-12-07