{"openapi":"3.1.0","info":{"title":"Vietnam Exchange Rates API","version":"1.0.0","description":"Live Vietnamese đồng (VND) bank counter exchange rates from Vietcombank, Vietnam's largest commercial bank. Unlike a central-bank reference or a parallel-market rate, these are the rates a customer actually transacts at, quoted in three forms: the cash rate (buying banknotes), the transfer rate (buying via wire) and the sell rate (the bank selling foreign currency). The rates endpoint returns every quoted currency against the đồng with all three rates and the buy/sell spread; the rate endpoint returns one currency; the convert endpoint converts any amount between a currency and the đồng at the chosen rate. Read live, nothing stored. This is Vietnam's own commercial-bank counter-rate layer — distinct from central-bank reference feeds and from parallel-market APIs.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/vietnam-api","description":"oanor gateway"}],"tags":[{"name":"Rates"},{"name":"Convert"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/rate":{"get":{"operationId":"get_v1_rate","tags":["Rates"],"summary":"One currency by code","description":"","parameters":[{"name":"currency","in":"query","required":true,"description":"Currency code","schema":{"type":"string"},"example":"USD"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"name":"Us Dollar","sell":26410,"quote":"VND","source":"Vietcombank","updated":"2026-06-10T23:00:00+07:00","cash_buy":26100,"currency":"USD","spread_pct":1.0716,"transfer_buy":26130},"meta":{"timestamp":"2026-06-10T22:57:08.001Z","request_id":"b1f6bb91-0218-43eb-838e-0f6cde93f906"},"status":"ok","message":"Rate retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/rates":{"get":{"operationId":"get_v1_rates","tags":["Rates"],"summary":"Every quoted currency vs the dong","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":20,"quote":"VND","rates":[{"name":"Us Dollar","sell":26410,"quote":"VND","cash_buy":26100,"currency":"USD","spread_pct":1.0716,"transfer_buy":26130},{"name":"Euro","sell":31151.89,"quote":"VND","cash_buy":29591.86,"currency":"EUR","spread_pct":4.2191,"transfer_buy":29890.76},{"name":"Uk Pound Sterling","sell":35753.05,"quote":"VND","cash_buy":34297.2,"currency":"GBP","spread_pct":3.2023,"transfer_buy":34643.64},{"name":"Japanese Yen","sell":168.51,"quote":"VND","cash_buy":158.45,"currency":"JPY","spread_pct":5.2858,"transfer_buy":160.05},{"name":"Australian Dollar","sell":18769.82,"quote":"VND","cash_buy":18005.52,"currency":"AUD","spread_pct":3.2024,"transfer_buy":18187.39},{"name":"Singapore Dollar","sell":20803.65,"quote":"VND","cash_buy":19916.65,"currency":"SGD","spread_pct":3.409,"transfer_buy":20117.83},{"name":"Thai Baht","sell":816.26,"quote":"VND","cash_buy":704.76,"currency":"THB","spread_pct":4.2398,"transfer_buy":783.06},{"name":"Canadian Dollar","sell":19171.04,"quote":"VND","cash_buy":18390.4,"currency":"CAD","spread_pct":3.2023,"transfer_buy":18576.17},{"name":"Swiss Franc","sell":33468.37,"quote":"VND","cash_buy":32105.56,"currency":"CHF","spread_pct":3.2024,"transfer_buy":32429.85},{"name":"Hong Kong Dollar","sell":3423.89,"quote":"VND","cash_buy":3264.81,"currency":"HKD","spread_pct":3.8238,"transfer_buy":3297.79},{"name":"Chinese Yuan","sell":3950.16,"quote":"VND","cash_buy":3789.31,"currency":"CNY","spread_pct":3.2023,"transfer_buy":3827.59},{"name":"Danish Krone","sell":4141.47,"quote":"VND","currency":"DKK","spread_pct":3.8236,"transfer_buy":3988.95},{"name":"Indian Rupee","sell":286.37,"quote":"VND","currency":"INR","spread_pct":4.3014,"transfer_buy":274.56},{"name":"Korean Won","sell":18.07,"quote":"VND","cash_buy":14.99,"currency":"KRW","spread_pct":8.5285,"transfer_buy":16.65},{"name":"Kuwaiti Dinar","sell":89348.69,"quote":"VND","currency":"KWD","spread_pct":4.8467,"transfer_buy":85218.44},{"name":"Malaysian Ringgit","sell":6549.25,"quote":"VND","currency":"MYR","spread_pct":2.1753,"transfer_buy":6409.82},{"name":"Norwegian Krone","sell":2826.66,"quote":"VND","currency":"NOK","spread_pct":4.2398,"transfer_buy":2711.69},{"name":"Russian Ruble","sell":385.39,"quote":"VND","currency":"RUB","spread_pct":10.6934,"transfer_buy":348.16},{"name":"Saudi Arabian Riyal","sell":7272.41,"quote":"VND","currency":"SAR","spread_pct":4.3034,"transfer_buy":6972.36},{"name":"Swedish Krona","sell":2835.42,"quote":"VND","currency":"SEK","spread_pct":4.2396,"transfer_buy":2720.1}],"source":"Vietcombank","updated":"2026-06-10T23:00:00+07:00"},"meta":{"timestamp":"2026-06-10T22:57:08.444Z","request_id":"772f1873-1475-4394-8e6d-20b1f5004cf0"},"status":"ok","message":"Rates retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/convert":{"get":{"operationId":"get_v1_convert","tags":["Convert"],"summary":"Convert between a currency and the dong","description":"","parameters":[{"name":"amount","in":"query","required":true,"description":"Amount to convert","schema":{"type":"string"},"example":"100"},{"name":"from","in":"query","required":false,"description":"From currency code","schema":{"type":"string"},"example":"USD"},{"name":"to","in":"query","required":false,"description":"To currency code","schema":{"type":"string"},"example":"VND"},{"name":"rate","in":"query","required":false,"description":"cash, transfer or sell","schema":{"type":"string"},"example":"sell"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"to":"VND","from":"USD","amount":100,"result":2641000,"source":"Vietcombank","updated":"2026-06-10T23:00:00+07:00","rate_type":"sell","vnd_per_to":1,"vnd_per_from":26410},"meta":{"timestamp":"2026-06-10T22:57:08.889Z","request_id":"542b98d3-e12e-486d-ac3d-bab22f2bf31d"},"status":"ok","message":"Conversion completed","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Service metadata","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Rates are VND per 1 unit of foreign currency. cash = buy banknotes, transfer = buy by wire, sell = bank sells FX.","source":"Vietcombank (www.vietcombank.com.vn, live)","service":"vietnam-api","endpoints":{"GET /v1/meta":"This document.","GET /v1/rate":"One currency by code (currency=USD).","GET /v1/rates":"Every quoted currency vs the đồng with cash/transfer/sell and spread.","GET /v1/convert":"Convert between a currency and the đồng (amount=100, from=USD, to=VND, rate=sell)."},"currencies":20,"description":"Live Vietnamese đồng (VND) bank counter exchange rates from Vietcombank, Vietnam's largest commercial bank. Unlike a central-bank reference or a parallel-market rate, these are the rates a customer actually transacts at, quoted in three forms: the cash rate (buying banknotes), the transfer rate (buying via wire) and the sell rate (the bank selling foreign currency). The rates endpoint returns every quoted currency against the đồng with all three rates and the spread; the rate endpoint returns one currency; the convert endpoint converts any amount between a currency and the đồng at the chosen rate. Live, no key, nothing stored. Distinct from central-bank reference feeds and from parallel-market APIs — this is Vietnam's own commercial-bank counter-rate layer.","usd_sell_vnd":26410,"upstream_status":"ok"},"meta":{"timestamp":"2026-06-10T22:57:09.300Z","request_id":"ba4c1b81-0213-4c1e-9be1-be49bc72b212"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":2800,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":550,"monthly_call_quota":65000,"rps_limit":10,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1800,"monthly_call_quota":330000,"rps_limit":30,"hard_limit":true},{"slug":"scale","name":"Scale","price_cents_month":4400,"monthly_call_quota":2100000,"rps_limit":100,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/vietnam-api"}