Skip to main content

Tạo QR Code động Tingee (Dynamic QR)

API này cho phép tạo mã QR động cho từng giao dịch cụ thể, hỗ trợ thanh toán một lần hoặc nhiều lần tùy theo cấu hình.

POST
URLhttps://uat-open-api.tingee.vn/v1/generate-dynamic-qr

API tạo mã QR động cho từng giao dịch. Kết quả trả về bao gồm chuỗi mã QR và thông tin hóa đơn trên hệ thống.

Header Request

HeaderBắt buộcMô tả
Content-Typeapplication/json
x-client-idMã định danh của đối tác do TINGEE cung cấp.
x-signatureChữ ký xác thực HMAC SHA512. Xem thêm tại Cách sinh chữ ký.
x-request-timestampThời gian gửi request (format: yyyyMMddHHmmssSSS, múi giờ UTC+7)

Body Parameter

TrườngKiểuBắt buộcMô tả
merchantIdnumberID của Merchant
(Bắt buộc nếu kết nối bằng tài khoản Master Merchant).
vaAccountNumberstringSố tài khoản định danh (VA).
qrCodeTypestringLoại QR: dynamic-one-time-payment hoặc dynamic-recurring-payment.
bankBinstringMã BIN ngân hàng. Xem tại Danh sách ngân hàng hỗ trợ.
amountnumberSố tiền cần thanh toán.
purposestringNội dung thanh toán.
expireInMinutenumberThời gian hết hạn QR động (phút).
extraInfostringThông tin bổ sung.

Ví dụ mã nguồn

curl --location --request POST 'https://uat-open-api.tingee.vn/v1/generate-dynamic-qr' \
--header 'accept: application/json' \
--header 'x-signature: YOUR_SIGNATURE' \
--header 'x-request-timestamp: 20251110175110111' \
--header 'x-client-id: YOUR_CLIENT_ID' \
--header 'Content-Type: application/json' \
--data '{
"vaAccountNumber": "V1T199988811",
"qrCodeType": "dynamic-one-time-payment",
"bankBin": "970418",
"amount": 500000,
"purpose": "Thanh toan cho hoa don HD2918732312"
}'

Response mẫu

{
"code": "00",
"message": "Success",
"data": {
"qrCode": "00020101021238540010A00000072701240006970418011088880935920208QRIBIDV2530370454085000005802VN... ",
"qrAccount": "88880935926988",
"billId": "QR_BILL_202507231420"
}
}
TrườngKiểuMô tả
codestringMã kết quả (00 = Thành công).
messagestringThông điệp phản hồi.
data.qrCodestringChuỗi nội dung của mã QR (để dùng thư viện render hoặc link ảnh).
data.qrAccountstringSố tài khoản nhận tiền tương ứng.
data.billIdstringMã vận đơn/hóa đơn tương ứng trên hệ thống Tingee.

Mã lỗi thường gặp

CodeMô tảHướng xử lý
90Sai format timestampKiểm tra format yyyyMMddHHmmssSSS.
91Request quá hạnKiểm tra thời gian gửi request.
97Sai chữ kýKiểm tra lại Secret Key và logic tạo Signature.
OthersLỗi khácXem Danh sách mã lỗi.