FX rates
Call our API to offer the best foreign exchange rates at your checkout.
Reach supports local processing of payments in 135+ currencies, allowing you to present and process in your customer's local currency. This results in the best foreign exchange (FX) rates for cross-border transactions. Using Reach local processing will improve your sales and help customers avoid high conversion costs and fees. Reach FX solutions give your customers much better rates than their banks currently charge them.
Both the Drop-In and Checkout API support FX and get rates.
This guide provides a simple way to access these rates so customers can shop in their local currency. Watch the following video for more information on FX and getting rates.
Get rates
Use the /getRates call to get the list of current foreign exchange rates for your cross-border transactions. We guarantee these rates for 24 hours, and returns based on this rate are honored for up to 30 days.
Best practice
Attempting to create an order using an expired rate will cause an error. We recommend sending a /getRates call once every six hours to ensure you have the latest rate.
Each response will contain the following parameters:
Parameter | Description |
---|---|
Id | A unique identifier used to identify the rate offer during checkout. |
Currency | The currency of the given rate offer. |
Expiry | The date and time the rate expires. The rate is valid for 24 hours. |
Rate | The rate of the given currency compared to your remittance currency. Use this to calculate the prices your customers see in your shop. |

Using getRates on your store
When a shopper selects or uses the default currency, the checkout cart sends a /getRates call. The response updates the prices in the cart to reflect the latest currency rate for the selected currency. It also saves the rateOfferID
and passes it into the checkout call.

Rate offers
Using a /getRate call, you can retrieve details about any rate offer your customer has received within 24 hours.
Note
Rate offers are based on the remittance currency configured for each merchant. If your remittance currency is USD, the rate offer uses USD as the base currency.
To maintain accurate pricing visibility for your customers, save the rateOfferID
in cookies or browser storage so they can view the same prices they were presented with over the last 24 hours, regardless of currency fluctuations.
Best practice
We recommend sending a /getRates call once every six hours to ensure you have the latest rate.
To get a customer's rate offer, use /getRate and include the MerchantId
and RateOfferId
as query parameters, as shown in the following example.
https://checkout.rch.how/v<x>.<yy>/getRate?MerchantId=%7BYourMerchantId%7D&RateOfferId=%7BYourRateOfferId%7D
The response will return a JSON object with the offer's Id
, Currency
, Expiry
date and Rate
.
{
"Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"Currency": "string",
"Expiry": "2025-05-19T15:46:57.695Z",
"Rate": 0
}
Updated 2 days ago