Managing Product Prices in Multiple Currencies
Liferay DXP 2025.Q2+
Currently, this feature is behind a release feature flag (LPD-34908). The examples in this article use the Commerce Classic Site Initializer, which requires a beta feature flag (LPD-20379). Read Feature Flags for more information.
Buyers can shop in their preferred currency because of multi-currency support. When enabled, pricing adjusts based on the selected currency, improving flexibility for global commerce.
To configure multi-currency pricing,
-
Create a price list and define prices in different currencies.
-
Configure available currencies for the Currency Selector fragment.
-
Display the Currency Selector fragment in a page.
Alternatively, use one of these initializers that include the fragment:
- Commerce Classic Site Initializer (used in the example)
- Minium 4 Site Initializer
Creating a Price List
Create a price list and set prices in the target currency to support multi-currency pricing.
-
Create a price list with the following information:
- Name: JPY Price List
- Catalog: Commerce Classic
- Currency: JPY
-
Click the price list name to open it.
Alternatively, click Actions (
) for the price list and select Edit.
-
Select the Entries tab. Use the search bar to find an SKU.
For example, search for ABS Sensor and click Select next to the SKU. The SKU appears in the price list.
-
Click the SKU code to edit it. Under Price List Price, enter the amount.
The product now has a price set for the selected currency. Repeat these steps to assign prices to other products.
If no price is defined in the selected currency, the system converts the price from the active price list automatically using the exchange rate defined for that currency.
Exchange rates can be set manually or updated automatically via an Exchange Rate Provider.
Selecting Currencies in the Channel
Choose which currencies appear in the Currency Selector fragment by configuring them in the channel.
-
Open the Global Menu (
), go to the Commerce tab, and click Channels.
-
Click Liferay Commerce Channel and select the Currencies tab.
-
Click Add (
) and select the currencies you want to support. Click Add.
-
(Optional) Click (
) to remove a currency.
-
Click Save.
Displaying the Currency Selector in a Page
You can add the Currency Selector fragment to any page in a site connected to a channel.
-
Open the Site Menu (
), expand Site Builder, and go to Pages.
-
Create a new page or start editing one.
-
In the Fragments and Widgets sidebar, look for the Currency Selector fragment under Orders. Drag and drop it into the page and publish the page.
The fragment shows the available currencies set in the channel. If no currencies are set, all active currencies appear in the fragment.
Testing the Currency Selector in the Commerce Classic Site
In the Commerce Classic site, you can test the Currency Selector fragment as it appears in the header:
-
Open the Global Menu (
) and select the Commerce Classic site.
-
Use the search bar at the top to search for the ABS Sensor.
-
Use the Currency Selector fragment in the header to switch from USD to JPY.
The product price updates based on the selected currency.