Multi Currency payments
XPay allows eCommerce merchants to display prices in the customer's local currency and accept payments in 46 international currencies. The conversion is fully managed by the payment platform.
Supported currencies
The service supports 46 international currencies. Payment acceptance is available for Visa and Mastercard schemes.
| ISO code | Name | COUNTRY |
|---|---|---|
| ARS | Argentine Peso | Argentina |
| AUD | Australian dollar | Australia, Australian Antarctic Territory, Christmas Island, Cocos Islands, Heard and McDonald Islands, Kiribati, Nauru, Norfolk Island, Tuvalu |
| BHD | Bahraini Dinar | Bahrain |
| CAD | Canadian dollar | Canada |
| CLP | Chilean Peso | Chile |
| CNY | Chinese Renminbi (Yuan) | China |
| COP | Colombian Peso | Colombia |
| CZK | Czech crown | Republic |
| DKK | Danish krone | Denmark, Faroe Islands, Greenland |
| HKD | Hong Kong dollar | Hong Kong |
| HUF | Hungarian Forint | Hungary |
| INR | Indian rupee | India, Bhutan |
| JPY | Japanese yen | Japan |
| KZT | Tenge Kazakh | Kazakhstan |
| JOD | Jordanian Dinar | Jordan |
| KRW | South Korean Won | South Korea |
| KWD | Kuwaiti Dinar | Kuwait |
| MYR | Ringgit Malaysian | Malaysia |
| MXN | Mexican peso | Mexico |
| NGN | Naira Nigerian | Nigeria |
| NOK | Norwegian krone | Norway |
| PHP | Filipino Weight | Philippines |
| QAR | Qatari Rial | Qatar |
| RUB | Russian ruble | Russia |
| SAR | Rial Saudi | Saudi Arabia |
| SGD | Singapore dollar | Singapore |
| VND | Vietnamese Dong | Vietnam |
| ZAR | South African Rand | South Africa |
| SEK | Swedish krona | Sweden |
| CHF | Swiss franc | Switzerland, Liechtenstein, Italy (Italian Champion only) |
| THB | Thai Baht | Thailand |
| AED | United Arab Emirates Dirham | United Arab Emirates |
| EGP | Egyptian lira | Egypt |
| GBP | British pound (or pound sterling) | United Kingdom |
| USD | US dollar | United States of America, American Samoa, British Indian Ocean Territory, Ecuador, El Salvador, Guam, Haiti, Marshall Islands, Micronesia, Northern Mariana Islands, Palau, PAnama, East Timor, Turks and Caicos Islands, US Virgin Islands < / td> |
| TWD | New Taiwanese dollar | Taiwan |
| BYN | Belarusian ruble | Belarus |
| VEF | Venezuelan Bolivar | Venezuela |
| RSD | Serbian Dinar | Serbia |
| AZN | Manat Azerbaijani | Azerbaijan |
| RON | New Romanian leu | Romania |
| TRY | New Turkish lira | Turkey |
| AOA | Kwanza Angolan | Angola |
| BYR | Belarusian ruble | Belarus |
| UAH | Ukrainian hryvnia | Ukraine |
| PLN | Polish Zloty | Poland |
| BRL | Brazilian Real | Brazil |
- The list is subject to periodic updates. To check real-time availability, please visit the Nexi Business portal or contact Nexi support.
- In the Integration methods APIs, you can change the currency by modifying the value of the "currency" parameter within the "order" object.
Settlement methods
For Nexi customers, payouts are credited in EUR, whereas for Intesa Sanpaolo customers, settlements can take place in the merchant's local currency according to the following rules:
| Currency | Method | Payout timeframe | Conditions |
|---|---|---|---|
| EUR | Default settlement currency. Automatic conversion from any other currency. | t+1 (next business day) | Available for Nexi and Intesa Sanpaolo customers. |
| CHF, GBP | Direct currency settlement, without conversion. | t+1 (next business day) | Available for Intesa Sanpaolo merchants only. |
| BGN, HRK, DKK, NOK, PLN, CZK, RON, SEK, HUF | Post-conversion settlement from EUR. | t+2 (second business day) | Available for Intesa Sanpaolo merchants only, provided their registered office is in the country corresponding to the currency. |
NOTE: settlement in non-EUR currencies (BGN, HRK, DKK, NOK, PLN, CZK, RON, SEK, HUF) requires the merchant to have its registered office in the country corresponding to the requested currency and is available only for Intesa Sanpaolo customers. For Nexi customers, payouts are available in EUR only.
mccExchangeRates API
The mccExchangeRates API is the main tool for integrating exchange rate management directly into the merchant's backend. It allows you to:
- retrieve in real time the exchange rates applied by Nexi for each supported currency;
- define custom price lists per currency, displaying the exact price in the customer's local currency;
- calculate the amount that will be credited in EUR, ensuring accuracy in accounting reconciliation;
- dynamically update prices on the eCommerce website for each checkout session.
| Endpoint | Description |
|---|---|
| GET /mccExchangeRates | Returns current exchange rates for all supported currencies: ISO code, FX rate, and update timestamp. API Specifications: GET /mccExchangeRates |
| GET /orders/{orderId} | Within the additionalData attribute, it is possible to retrieve the exchange rate applied to each individual order and operation. The field name is: “CONVERSION_RATE”. The “CONVERSION_RATE_DATE” field contains the application date of the exchange rate. API Specifications: GET /orders/{orderId} Below is an example of the contents of the "additionalData" object containing information related to the exchange rate:
|
NOTE: the exchange rates shown and returned by this API are applicable only to Nexi customers. For Intesa Sanpaolo customers, the exchange rates applied to each individual transaction are returned through other methods.
Payment Flow
The standard multi-currency payment flow consists of the following phases:
| # | Phase | Description |
|---|---|---|
| 1 | Payment request | The API call to XPay includes the currency parameter (ISO code) and the amount in the customer's local currency. |
| 2 | Authorization | XPay processes the transaction on the Visa/Mastercard schemes in the specified currency. |
| 3 | Settlement | The amount is converted into EUR or another currency and credited to the merchant's account (t+1 or t+2 depending on the currency) and based on the merchant's agreement type. |
| 4 | FX rate retrieval | The exchange rate applied by the settlement can be retrieved via getOrders or by calling the mccExchangeRates API to obtain the updated rate. |
- Multi-currency MIT recurring payments (MIT, Incremental, No Show, Delayed Charge) are not supported. Therefore, it is not possible to support card storage and/or subsequent subscriptions in multi-currency mode.
- For merchants integrated via Plugins, simply follow the plugin configuration guide in the dedicated sections for e-commerce platforms. The plugins supporting multi-currency are: BigCommerce, WooCommerce, PrestaShop, Magento, OpenCart.
Key Parameters
Main parameters to include in the payment request to enable multi-currency mode:
| Parameter | Type / Format | Description |
|---|---|---|
| currency | String — ISO 4217 | ISO code of the customer's currency (e.g., USD, JPY, GBP). Determines the currency in which the payment is displayed and processed. |
| amount | Integer (cents) | Amount in the customer's currency in cents, or as a whole unit for zero-decimal currencies (JPY, KRW, BHD, KWD). |
NOTE: For zero-decimal currencies (JPY, KRW, BHD, KWD, OMR), pass the amount as a whole integer without multiplying by 100. Refer to the specific currency details in the API documentation.