VPB API
Tích hợp giao dịch VPBank
Kết nối lịch sử giao dịch VPBank, lọc số tiền và nội dung để tự động gạch nợ hoặc hoàn tất đơn. Kết nối này phù hợp cho phần mềm bán hàng, website hội viên và hệ thống quản lý công nợ.
Phương thứcGET
Định dạngJSON
Xác thựcToken
Phiên bảnV1, V2, V3
Tài liệu API theo phiên bản
Chọn phiên bản tương ứng trong trang quản lý tài khoản VPBank để xem tham số và dữ liệu trả về.
Tham số cần thiết
| Tham số | Bắt buộc | Mô tả |
|---|---|---|
YOUR_TOKEN | Có | Token API được cấp trong trang quản lý. |
Code mẫu
curl --request GET \
"https://thueapibank.vn/historyapivpbank/YOUR_TOKEN" \
--header "Accept: application/json"
<?php
$ch = curl_init('https://thueapibank.vn/historyapivpbank/YOUR_TOKEN');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 20,
CURLOPT_HTTPHEADER => ['Accept: application/json'],
]);
$response = curl_exec($ch);
$data = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
curl_close($ch);
const response = await fetch('https://thueapibank.vn/historyapivpbank/YOUR_TOKEN', {
headers: { Accept: 'application/json' }
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
Response mẫu
{
"status": "success",
"message": "Thành công",
"transactions": [
{
"type": "IN",
"transactionID": "FT26091912345678",
"amount": 450000,
"description": "DH1024 THANH TOAN",
"transactionDate": "2026-09-19 10:24:36"
}
]
}
Tham số cần thiết
| Tham số | Bắt buộc | Mô tả |
|---|---|---|
YOUR_TOKEN | Có | Token API được cấp trong trang quản lý. |
Code mẫu
curl --request GET \
"https://thueapibank.vn/historyapivpbankv2/YOUR_TOKEN" \
--header "Accept: application/json"
<?php
$ch = curl_init('https://thueapibank.vn/historyapivpbankv2/YOUR_TOKEN');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 20,
CURLOPT_HTTPHEADER => ['Accept: application/json'],
]);
$response = curl_exec($ch);
$data = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
curl_close($ch);
const response = await fetch('https://thueapibank.vn/historyapivpbankv2/YOUR_TOKEN', {
headers: { Accept: 'application/json' }
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
Response mẫu
{
"status": "success",
"message": "Thành công",
"transactions": [
{
"type": "IN",
"transactionID": "FT26091912345678",
"amount": 450000,
"description": "DH1024 THANH TOAN",
"transactionDate": "2026-09-19 10:24:36"
}
]
}
Tham số cần thiết
| Tham số | Bắt buộc | Mô tả |
|---|---|---|
PASSWORD | Có | Mật khẩu hoặc mã xác thực kết nối. |
ACCOUNT_NUMBER | Có | Số tài khoản VPBank cần truy vấn. |
YOUR_TOKEN | Có | Token API được cấp trong trang quản lý. |
Code mẫu
curl --request GET \
"https://thueapibank.vn/historyapivpbankv3/PASSWORD/ACCOUNT_NUMBER/YOUR_TOKEN" \
--header "Accept: application/json"
<?php
$ch = curl_init('https://thueapibank.vn/historyapivpbankv3/PASSWORD/ACCOUNT_NUMBER/YOUR_TOKEN');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 20,
CURLOPT_HTTPHEADER => ['Accept: application/json'],
]);
$response = curl_exec($ch);
$data = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
curl_close($ch);
const response = await fetch('https://thueapibank.vn/historyapivpbankv3/PASSWORD/ACCOUNT_NUMBER/YOUR_TOKEN', {
headers: { Accept: 'application/json' }
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
Response mẫu
{
"status": "success",
"message": "Thành công",
"transactions": [
{
"type": "IN",
"transactionID": "FT26091912345678",
"amount": 450000,
"description": "DH1024 THANH TOAN",
"transactionDate": "2026-09-19 10:24:36"
}
]
}
Response thực tế có thể bổ sung trường riêng của VPBank. Luôn kiểm tra trường tồn tại trước khi đọc.
Luồng xử lý khuyến nghị
- 1Lưu mã giao dịch
Dùng
transactionIDlàm khóa chống xử lý trùng. - 2Chỉ xử lý tiền vào
Kiểm tra
type === "IN"trước khi ghép đơn. - 3Ghép đúng đơn hàng
So khớp số tiền và mã đơn trong nội dung chuyển khoản.
- 4Đối soát lại
Chạy tác vụ định kỳ để bù các webhook bị chậm hoặc thất bại.
Câu hỏi về API VPBank
API VPBank dùng để làm gì?
API giúp lấy dữ liệu giao dịch VPBank dạng JSON để xác nhận chuyển khoản, cộng số dư và đối soát tự động.
Nên dùng phiên bản API nào?
Nên ưu tiên phiên bản mới nhất mà tài khoản của bạn đang hỗ trợ. V1 và V2 phù hợp tích hợp bằng token; V3 bổ sung thông tin tài khoản trong đường dẫn.
Có thể nhận giao dịch VPBank qua webhook không?
Có. Sau khi thêm tài khoản, bạn có thể cấu hình URL webhook để hệ thống gửi sự kiện giao dịch mới về máy chủ của bạn.