TCB API
Tích hợp giao dịch Techcombank
Đọc giao dịch Techcombank theo thời gian gần thực và chuẩn hóa dữ liệu cho quy trình xác nhận chuyển khoản. Kết nối này phù hợp cho shop có lượng đơn lớn, dịch vụ số và hệ thống đối soát nội bộ.
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 Techcombank để 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/historyapitcb/YOUR_TOKEN" \
--header "Accept: application/json"
<?php
$ch = curl_init('https://thueapibank.vn/historyapitcb/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/historyapitcb/YOUR_TOKEN', {
headers: { Accept: 'application/json' }
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
Response mẫu
[
{
"id": "e4c09c229d1c1b73019d29321b5177cf",
"arrangementId": "877b50be-bc84-4c21-bead-4d29e3f53105",
"reference": "FT26085420250938\\BNK",
"description": "MS00P00000001199697,NGUYEN THI HANG,BUI THANH PHUONG chuyen tien",
"typeGroup": "OTHERS",
"type": "DBIT",
"category": "Spending",
"bookingDate": "2026-03-26",
"valueDate": "2026-03-26",
"creditDebitIndicator": "DBIT",
"transactionAmountCurrency": {
"amount": "40000",
"currencyCode": "VND"
},
"counterPartyName": "NGUYEN THI HANG",
"counterPartyAccountNumber": "19074709158011",
"counterPartyBankName": "Techcombank",
"runningBalance": 4471541,
"additions": {
"creditBank": "Techcombank",
"accountNoOthCate": "1001",
"accountDebitName": "BUI THANH PHUONG",
"accountNoOthName": "VND-TGTT-NGUYEN THI HANG",
"externalId": "D-1112211222-212701166720366.020001",
"debitBank": "Techcombank",
"accountNoOth": "19074709158011",
"creditAcctName": "NGUYEN THI HANG",
"debitAcctName": "BUI THANH PHUONG",
"creditAcctNo": "19074709158011",
"additionalInfo": "{\"SERVICE.ID\":\"OMNIR-VA\"}",
"debitAcctNo": "1112211222",
"creditCate": "1001",
"debitCate": "1001",
"accountCreditName": "VND-TGTT-NGUYEN THI HANG"
},
"checkImageAvailability": "UNAVAILABLE",
"creationTime": "2026-03-26T05:39:26+07:00",
"state": "COMPLETED"
},
{
"id": "e4c0b0829d1c17ea019d261f78466536",
"arrangementId": "877b50be-bc84-4c21-bead-4d29e3f53105",
"reference": "FT26084670098026\\BNK",
"description": "BUI THANH PHUONG chuyen tien",
"typeGroup": "OTHERS",
"type": "CRDT",
"category": "Income",
"bookingDate": "2026-03-25",
"valueDate": "2026-03-25",
"creditDebitIndicator": "CRDT",
"transactionAmountCurrency": {
"amount": "510000",
"currencyCode": "VND"
},
"runningBalance": 4511541,
"additions": {
"creditBank": "Techcombank",
"accountDebitName": "VND-BNK-CK247 NH KHAC – TK TCB",
"creditAcctNo": "1112211222",
"additionalInfo": "{\"PAY.DETAILS\":\"BUI THANH PHUONG chuyen tien\"}",
"externalId": "C-1112211222-212699542675963.020001",
"creditCate": "1001",
"creditAcctName": "BUI THANH PHUONG",
"debitCate": "15002",
"accountCreditName": "BUI THANH PHUONG"
},
"checkImageAvailability": "UNAVAILABLE",
"creationTime": "2026-03-25T21:06:03+07:00",
"state": "COMPLETED"
},
{
"id": "e4c0b0829d1c17ea019d261f78466541",
"arrangementId": "877b50be-bc84-4c21-bead-4d29e3f53105",
"reference": "FT26084185288437\\BNK",
"description": "BUI THANH PHUONG chuyen tien",
"typeGroup": "OTHERS",
"type": "CRDT",
"category": "Income",
"bookingDate": "2026-03-24",
"valueDate": "2026-03-24",
"creditDebitIndicator": "CRDT",
"transactionAmountCurrency": {
"amount": "2000",
"currencyCode": "VND"
},
"runningBalance": 4001541,
"additions": {
"creditBank": "Techcombank",
"accountDebitName": "VND-BNK-CK247 NH KHAC – TK TCB",
"creditAcctNo": "1112211222",
"additionalInfo": "{\"PAY.DETAILS\":\"BUI THANH PHUONG chuyen tien\"}",
"externalId": "C-1112211222-212685830284389.040001",
"creditCate": "1001",
"creditAcctName": "BUI THANH PHUONG",
"debitCate": "15002",
"accountCreditName": "BUI THANH PHUONG"
},
"checkImageAvailability": "UNAVAILABLE",
"creationTime": "2026-03-24T23:26:29+07:00",
"state": "COMPLETED"
}
]
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/historyapitcbv2/YOUR_TOKEN" \
--header "Accept: application/json"
<?php
$ch = curl_init('https://thueapibank.vn/historyapitcbv2/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/historyapitcbv2/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": [
{
"transactionID": 3172,
"amount": 13000,
"description": "E4S9J GD 519816-013124 22:29:46",
"transactionDate": "01/02/2024",
"type": "IN"
},
{
"transactionID": 3171,
"amount": 10000,
"description": "Thanh toan QR E923Z GD 343127-013124 20:40:43",
"transactionDate": "01/02/2024",
"type": "OUT"
}
]
}
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 Techcombank 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/historyapitcbv3/PASSWORD/ACCOUNT_NUMBER/YOUR_TOKEN" \
--header "Accept: application/json"
<?php
$ch = curl_init('https://thueapibank.vn/historyapitcbv3/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/historyapitcbv3/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 Techcombank. 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 Techcombank
API Techcombank dùng để làm gì?
API giúp lấy dữ liệu giao dịch Techcombank 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 Techcombank 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.