Vietcombank Exchange Rates API
Free Vietcombank exchange rate feed with no key: buy, transfer and sell VND rates for every quoted currency as XML, refreshed through the trading day. Tested example.
Endpoint tested and returned HTTP 200 on 2026-08-21
What is the Vietcombank Exchange Rates API?
Vietcombank publishes its retail exchange rate board as a free XML feed with no key. Each currency carries three rates — cash buying, transfer and selling — in Vietnamese dong, with a timestamp for the board.
Vietnam has no freely accessible central bank FX API, so the commercial bank boards are what most Vietnamese applications actually use, and Vietcombank's is the most widely cited of them. Three columns per currency reflect real Vietnamese banking practice: `Buy` is the cash buying rate, `Transfer` is the rate for an inbound wire, and `Sell` is what you pay to buy the currency. They differ by enough to matter on any meaningful amount.
Two things to handle carefully. The values are strings with **comma thousands separators**, such as `"18,130.53"` — strip the commas before parsing or you will get 18. And the feed carries a comment asking for no more than one request every five minutes; the response also sets an Access-Control-Allow-Origin naming Vietcombank's own domain, so browser calls from your site will be blocked and must be proxied.
Quick facts
- Base URL
https://portal.vietcombank.com.vn/UserControls/TVPortal.TyGia- Authentication
- No key. The feed is published for public reference and asks callers to poll no more than once every five minutes.
- Rate limit
- Self-declared: one request per five minutes. Respect it — this is a bank's public-facing portal, not a metered API.
- Pricing
- Free.
- CORS
- Not enabled — call it from your server
- Official docs
- Read the docs
How to use the Vietcombank Exchange Rates API
Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.
1. Current Vietcombank exchange rate board
GET https://portal.vietcombank.com.vn/UserControls/TVPortal.TyGia/pXML.aspx?b=10
curl 'https://portal.vietcombank.com.vn/UserControls/TVPortal.TyGia/pXML.aspx?b=10'const res = await fetch("https://portal.vietcombank.com.vn/UserControls/TVPortal.TyGia/pXML.aspx?b=10");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://portal.vietcombank.com.vn/UserControls/TVPortal.TyGia/pXML.aspx?b=10", timeout=20)
res.raise_for_status()
print(res.json())<!--For reference only. Only one request every 5 minutes!-->
<ExrateList>
<DateTime>8/21/2026 2:42:34 PM</DateTime>
<Exrate CurrencyCode="AUD" CurrencyName="AUSTRALIAN DOLLAR " Buy="18,130.53" Transfer="18,313.67" Sell="18,900.44" />
<Exrate CurrencyCode="CAD" CurrencyName="CANADIAN DOLLAR " Buy="18,452.94" Transfer="18,639.33" Sell="19,236.53" />
<Exrate CurrencyCode="CHF" CurrParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
b | query | Optional | Board identifier used by the portal. `10` returns the standard published rate board. 10 |
Response fields
ExrateList/DateTimeelement- When the board was published, in Vietnamese local time and US month-first date order.
Exrate@CurrencyCodeattribute- ISO 4217 code.
Exrate@CurrencyNameattribute- Currency name, space-padded to a fixed width. Trim before display.
Exrate@Buyattribute- Cash buying rate in dong, as a string with comma thousands separators. May be empty for currencies not bought in cash.
Exrate@Transferattribute- Rate for an inbound transfer — normally better than the cash buying rate.
Exrate@Sellattribute- Selling rate, what you pay to buy the currency.
What you can build with the Vietcombank Exchange Rates API
- Show a Vietnamese dong conversion on a pricing page
- Compare cash and transfer rates when estimating remittance costs
- Cache the daily board for accounting conversions
- Cross-check a payment provider's rate against a published bank board
Common errors and how to fix them
Parsed value of 18 instead of 18130.53
Comma thousands separators were left in the string.
Fix: Strip all commas before parsing. This is a formatting convention, not a decimal separator.
Empty Buy attribute
The bank does not deal in that currency as physical cash.
Fix: Fall back to `Transfer` and label which rate you displayed.
CORS error in the browser
The response names Vietcombank's own origin, not a wildcard.
Fix: Proxy the request through your own backend. A direct front-end fetch will be blocked.
Rate-limited or blocked
Polling more often than the feed asks for.
Fix: One request per five minutes at most. Cache and share the result across your users.
Vietcombank Exchange Rates API — frequently asked questions
Is there a free Vietnam exchange rate API?
Vietcombank's published rate board is the most commonly used free source. It requires no key and returns XML, but it is a commercial bank's retail board rather than an official central bank rate.
What is the difference between Buy, Transfer and Sell?
`Buy` is the rate for physical cash the bank buys from you, `Transfer` is for an inbound wire and is usually better, and `Sell` is what you pay to buy foreign currency. Pick the one matching your transaction type.
Why do the numbers have commas in them?
They are thousands separators in the Vietnamese formatting convention, not decimal points. Remove every comma before parsing, otherwise `18,130.53` truncates to 18.
How often should I poll this feed?
No more than once every five minutes — the feed itself carries a comment saying so. Cache the response and serve it to all your users from that cache.
Tools that pair with this API
XML to JSON Converter
Convert XML to JSON online. Elements become objects, attributes are prefixed with @, text is preserved, and parse errors are reported clearly — in-browser.
XML Formatter
Format and beautify XML online with proper indentation, or minify it to a single line. Parse errors are reported clearly — free, fast and fully private.
Percentage Change Calculator
Work out the percentage increase or decrease between an old and a new value. See the absolute change and whether it went up or down, instantly and privately.
Vietcombank Exchange Rates is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.