Skip to main content

Generate dynamic QR

API: POST /v1/bank/generate-dynamic-qr

Generates a dynamic QR code for a specific transaction, supporting one-time or recurring payments.

Usage​

const result = await client.bank.generateDynamicQr({
vaAccountNumber: 'V1T199988811',
qrCodeType: 'dynamic-one-time-payment',
bankBin: '970418',
amount: 500000,
expireInMinute: 30,
purpose: 'Thanh toan hoa don HD001',
});

Parameters​

FieldTypeRequiredDescription
vaAccountNumberstring✓Virtual account (VA) number
qrCodeTypestring✓dynamic-one-time-payment or dynamic-recurring-payment
bankBinstring✓Bank BIN. Use BankBinEnum
amountnumber✓Payment amount
expireInMinutenumber✓QR expiry time (minutes)
merchantIdnumber✕Merchant ID (required when calling via Master Merchant)
purposestring✕Payment description
extraInfostring✕Additional information

Response​

{
"code": "00",
"message": "Success",
"data": {
"qrCode": "00020101021238540010A00000072701...",
"qrAccount": "88880935926988",
"billId": "QR_BILL_202507231420"
}
}
FieldTypeDescription
data.qrCodestringQR content string
data.qrAccountstringReceiving account number
data.billIdstringBill ID in the Tingee system