Tỷ giá ngoại tệ API
Tỷ giá mua tiền mặt, mua chuyển khoản, bán của Vietcombank cho 20 ngoại tệ, tra theo ngày, quy đổi VND và tỷ giá thị trường của 160 đồng tiền.
API tỷ giá trả về bảng tỷ giá của Vietcombank, mốc tham chiếu mà đa số doanh nghiệp Việt Nam dùng: giá mua tiền mặt, mua chuyển khoản và giá bán của 20 ngoại tệ (USD, EUR, JPY, CNY, KRW, SGD…). Truyền date=YYYY-MM-DD để lấy tỷ giá của một ngày trước đây, ví dụ ngày xuất hoá đơn; bảng của các ngày cũ được cache, bảng hôm nay được làm mới mỗi 15 phút.
Khi có amount, from và to, API quy đổi: từ ngoại tệ sang VND bạn nhận được số tiền theo từng giá mua và theo giá bán; từ VND sang ngoại tệ là số ngoại tệ ngân hàng bán cho bạn. Quy đổi giữa hai ngoại tệ, hoặc đồng tiền Vietcombank không niêm yết, dùng tỷ giá trung bình thị trường trong ngày (open.er-api.com, khoảng 160 đồng tiền); source=market&base=EUR trả về cả bảng.
Tỷ giá mang tính tham khảo: từng chi nhánh, hình thức giao dịch có thể khác. Phản hồi luôn ghi nguồn, ngày của bảng tỷ giá và thời điểm Vietcombank cập nhật gần nhất.
Tham số
| Tên | Vị trí | Kiểu | Bắt buộc | Mặc định | |
|---|---|---|---|---|---|
date | query | string | không | Ngày của bảng tỷ giá, YYYY-MM-DD (mặc định: hôm nay theo giờ Việt Nam). | |
currencies | query | string | không | Chỉ lấy các mã này, ví dụ USD,EUR. | |
amount | query | number | không | 1 | Số tiền cần quy đổi. |
from | query | string | không | Đổi từ đồng tiền (bật chế độ quy đổi). | |
to | query | string | không | VND | Đổi sang đồng tiền. |
source | query | string | không | vietcombank | vietcombank hoặc market (tỷ giá thị trường, chỉ hôm nay). |
base | query | string | không | USD | Đồng tiền cơ sở khi source=market. |
Ví dụ
curl "https://apibox.io.vn/v1/exchange-rates?amount=100&from=USD" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch('https://apibox.io.vn/v1/exchange-rates?amount=100&from=USD', {
method: 'GET',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
},
});
const data = await res.json();
console.log(data);import requests
res = requests.get(
"https://apibox.io.vn/v1/exchange-rates?amount=100&from=USD",
headers={"Authorization": "Bearer YOUR_API_KEY"},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/exchange-rates?amount=100&from=USD');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));Kết quả trả về
{
"amount": 100,
"from": "USD",
"to": "VND",
"source": "Vietcombank",
"date": "2026-11-10",
"updated_at": "2026-11-10T16:14:44+07:00",
"rate": {
"cash_buy": 25380,
"transfer_buy": 25410,
"sell": 25790
},
"result": {
"cash_buy": 2538000,
"transfer_buy": 2541000,
"sell": 2579000
},
"note": "cash_buy / transfer_buy: VND you receive when selling the currency to the bank; sell: VND you pay to buy it."
}
Ứng dụng
- Hiển thị tỷ giá USD/VND hôm nay trên web bán hàng, du lịch
- Quy đổi số tiền hoá đơn theo tỷ giá ngày xuất hoá đơn
- Xuất dữ liệu kế toán kèm tỷ giá ngân hàng từng ngày
- Bảng giá nhiều loại tiền tệ
Hỏi đáp
Kế toán nên dùng tỷ giá nào?
Với doanh thu ngoại tệ, thường dùng tỷ giá mua chuyển khoản của ngân hàng giao dịch tại ngày phát sinh; dùng date= để lấy. API trả cả ba mức giá của Vietcombank để bạn áp dụng theo chính sách của mình.
Tra cứu được bao xa?
Xa như Vietcombank còn công bố bảng tỷ giá (nhiều năm). Ngày nghỉ, cuối tuần trả về bảng cuối cùng của ngày đó.
Đổi USD sang EUR được không?
Được. Các cặp không có VND dùng tỷ giá trung bình thị trường trong ngày (nguồn open.er-api.com) và chỉ có cho ngày hôm nay.
API liên quan
Kiểm tra JSON
Kiểm tra cú pháp JSON, báo đúng dòng và cột bị lỗi, và validate dữ liệu theo JSON Schema (draft 4, 7, 2019-09 hoặc 2020-12).
{ }Định dạng JSON
Làm đẹp JSON với thụt lề 0-8 dấu cách hoặc tab, rút gọn (minify) hoặc sắp xếp key theo bảng chữ cái. Báo lỗi cú pháp kèm dòng và cột.
CSVCSV sang JSON
Chuyển CSV thành mảng object JSON theo dòng tiêu đề, tự nhận dấu phân cách, tự chuyển số và boolean, báo lỗi từng dòng.