Foreign exchange rates posted by private banks, exchange markets, government entities & more.
In the example below, the endpoint will display all exchange ratesvreported by Maybank (the asterisk * represents ALL currencies).
https://xecdapi.xe.com/v1/alternative_source_rate?source=maybank&iso=*
Note on Alternative Source Rate Coverage: Some sources may experience temporary data gaps due to source website changes or access restrictions. For these sources, we continue to provide historical data and are working to restore full coverage.
API key created on your Xe Currency Data account's API page, sent as a Bearer token in the Authorization header.
In: header
Query Parameters
REQUIRED – Use the following source codes to represent the specific source you are querying for. The time(s) specified below highlights the time rates are published by each respective source within the API service.
| Source | Country | Name | Posts | Available at (UTC) | Effective for | Bid/Ask |
|---|---|---|---|---|---|---|
| anz | Australia | ANZ Investment Bank | Daily | 16:00 | Same day | ✓ |
| anz-fj | Fiji | ANZ Investment Bank (Fiji Markets) | Daily | 23:00 | Same day | ✓ |
| bazg | Switzerland | Federal Office for Customs and Border Security | Daily | 07:00 | Same day | |
| belarus_republic | Belarus | Republic of Belarus Official Website | Daily | 08:00 | Same day | |
| bmf | Germany | Federal Ministry of Finance | Monthly | 1st of month | Previous Month | |
| BNA | Argentina | Bank of the Argentine Nation (Banco de la Nación Argentina) | Daily | 17:00 | Same day | ✓ |
| brazil_ptax | Brazil | Central Bank of Brazil PTAX | Daily | 18:00 | Same day | ✓ |
| citibank-vn | Vietnam | Citibank Vietnam Markets | Daily | 11:00 | Same day | ✓ |
| commerzbank | Germany | Commerzbank | Daily | 01:00 | Same day | ✓ |
| cyprus_customs | Cyprus | Cyprus Customs & Excise Department | Monthly | End of Month | Same Month | |
| egypt | Egypt | Central Bank of Egypt (Market Rate) | Daily | 14:00 | Same day | ✓ |
| HKAB | Hong Kong | Hong Kong Association of Banks | Daily | 01:00 | Same day | ✓ |
| indonesia_treasury | Indonesia | Indonesia Treasury (Badan Kebijakan Fiskal) | Daily | 01:00 | Same day | |
| ireland_revenue | Ireland | Revenue - Irish Tax and Customs | Monthly | Monthly | Same Month | |
| maybank | Malaysia | Maybank | Daily | 06:00 | Same day | ✓ |
| mitsubishi_ufg | Japan | Mitsubishi UFJ Financial Group (Mitsubishi UFJ Financial Group) | Daily | 03:00 | Same day | ✓ |
| NatWest | United Kingdom of Great Britain and Northern Ireland | National Westminster Bank | Daily | 09:00 | Same day | ✓ |
| nzfma | New Zealand | New Zealand Financial Markets Association | Daily | 03:00 | Same day | |
| peru-sbs | Peru | Superintendency of Banking, Insurance and Private Pension Fund Administrators (Superintendencia de Banca, Seguros y AFP (República del Perú)) | Daily | 19:00 | Same day | ✓ |
| SFC | Colombia | Financial Superintendence of Colombia | Daily | 22:00 | Same day | |
| taiwan_customs | Taiwan | Customs Administration, Ministry of Finance (Taiwan Customs Administration) | Monthly | On days 1, 11, 21 of each month | Same Month | ✓ |
| uganda_ra | Uganda | Uganda Revenue Authority | Monthly | 1st of month | Same Month | |
| vietcom | Vietcombank | Joint Stock Commercial Bank for Foreign Trade of Vietnam | Daily | 17:00 | Same day | ✓ |
OPTIONAL - Comma separated list of to currencies ISO 4217 codes. This will limit the data returned to only those currencies you are interested in.
"*"OPTIONAL – This parameter can be used to specify the amount you want to convert, if an amount is not specified then 1 is assumed.
1OPTIONAL – YYYY-MM-DD format - request latest rates on, or before given date. Rates are often not posted on weekends and holidays. For sources that provide rates multiple times a day, use YYYY-MM-DDTHH:MM format to request rates at, or before, a time.
OPTIONAL – If ‘true’, the endpoint will respond with the inverse of the exchange rates.
falseOPTIONAL – is parameter can be used to specify the number of decimal places included in the output. Example: if 1 USD to EUR = 0.874852, adding decimal_places=3 to the query will result in the endpoint returning EUR = 0.875
20OPTIONAL – This parameter can be used to add a margin (+/-) to the exchange rate. Example: adding margin=2.05 to the query will result in the endpoint returning the current exchange rates with a +2.05% margin.
0OPTIONAL - Comma separated list of fields. One or more of "mid", "bid" or "ask".
"mid"Response Body
application/json
application/json
application/json
application/json
text/plain
curl -X GET "https://example.com/v1/alternative_source_rate?source=string"{ "terms": "https://www.xe.com/legal", "privacy": "https://www.xe.com/privacy", "source": "HKAB", "name": "Hong Kong Association of Banks", "amount": 1, "timestamp": "2026-09-23T16:00:00Z", "rates": [ { "fromCurrency": "AUD", "toCurrency": "HKD", "mid": 5.5168, "bid": 5.4365, "ask": 5.597 }, { "fromCurrency": "BND", "toCurrency": "HKD", "mid": 6.1258, "bid": 6.061, "ask": 6.1905 } ]}{ "code": 40, "message": "Missing required parameter: source", "documentation_url": "https://developers.xe.com/docs/currency-data-api"}{ "code": 1, "message": "Bad credentials", "documentation_url": "https://developers.xe.com/docs/currency-data-api"}{ "code": 3, "message": "Monthly rate limit exceeded.", "documentation_url": "https://developers.xe.com/docs/currency-data-api"}{ "code": 4, "message": "Current interval rate limit exceeded.", "documentation_url": "https://developers.xe.com/docs/currency-data-api"}"An unexpected error occurred"This endpoint will return basic information for a specific account. GET
Requires authentication over HTTPS with either an API key sent as a Bearer token or Basic authentication (Username and Password).
Convert from one base currency to one or multiple counter currencies. GET
**This feature is in beta.** Access and functionality may evolve. If you’d like to participate, please sign up for our free trial. This endpoint provides **indicative spot bid-ask pricing**, updated **every 10 seconds** and sourced from aggregated institutional liquidity. Data is **informational only** and may contain inaccuracies during the beta phase. ## Endpoint Example [https://xecdapi.xe.com/v1/bid_ask?from=GBP&to=EUR,USD](https://xecdapi.xe.com//v1/bid_ask?from=GBP&to=EUR,USD) ## Supported Currencies The Bid & Ask (Beta) endpoint supports the following currencies: **AUD, BRL, CAD, CHF, CNH, DKK, EUR, GBP, JPY, NOK, NZD, PLN, SEK, USD** Any pair can be requested in either direction (as **from** or **to**), with the following exceptions involving **CNH** (offshore Chinese yuan): - CNH is not available with **BRL**, **DKK**, or **PLN** in either direction. - CNH is supported only as the target currency for **NOK** and **SEK**: **from=NOK&to=CNH** and **from=SEK&to=CNH** are available, but **from=CNH&to=NOK** and **from=CNH&to=SEK** are not. The rates provided are indicative spot bid-ask prices derived from aggregated institutional liquidity sources and refreshed every 10 seconds. As this feature is in beta, behaviour and coverage may change, and occasional inaccuracies or inconsistencies may occur. These rates are intended for informational use only and should not be relied upon for financial reporting or decision-making.