PUSH QR VÀO VIETQR PAYBOX
TÀI LIỆU ĐẨY MÃ QR XUỐNG THIẾT BỊ PAYBOX
Last updated
TÀI LIỆU ĐẨY MÃ QR XUỐNG THIẾT BỊ PAYBOX
Last updated
Mục đích: Dùng để tạo lấy token Dùng để lấy bearer token phục vụ cho việc truy cập API tạo mã thanh toán VietQR.
POST:
Header:
Name
Value
Content-Type
application/json
Authorization
Basic Authentication:
Base64[username:password]
username, password do VietQR cung cấp
Response Body:
Name
Type
Desc
access_token
String
Là Bearer Token được VietQR cung cấp sau khi hoàn thành bước 4. Dùng để truy cập tạo mã thanh toán VietQR.
token_type
String
Là dạng token dạng “Bearer”
expires_in
int
Thời gian hết hạn của token. Mặc định là 300 giây
cURL:
curl --location --request POST 'https://api.vietqr.org/vqr/api/token_generate' \
--header 'Authorization: Basic Y3VzdG9tZXItdmlldHFydGVzdC11c2VyMjQ2ODpZM1Z6ZEc5dFpYSXRkbWxsZEhGeWRHVnpkQzExYzJWeU1qUTJPQT09'
Response:
{
"access_token": "eyJhbGciOiJIUzUxMiJ9.eyJhdXRob3JpdGllcyI6WyJST0xFX1VTRVIiXSwidXNlciI6IlkzVnpkRzl0WlhJdGRtbGxkSEZ5ZEdWemRDMTFjMlZ5TWpRMk9BPT0iLCJpYXQiOjE3MjEzNzI2MzQsImV4cCI6MTcyMTM3MjkzNH0.D19qvrpYHUgcGjDCXuXXAv3j6lZr6tfmIB0VzdCzAXMJAElGok04sNLysS6PRLdRb0hSgEX5_9KpLjB-xErn-A",
"token_type": "Bearer",
"expires_in": 300
}
Mục đích: Dùng truyền mã QR xuống thiết bị để hiển thị
POST:
Request Header:
Name
Value
Content-Type
application/json
Authorization
Bearer Token
Request Body:
Name
Type
Desc
bankAccount
String
STK được liên kết với thiết bị paybox
bankCode
String
Mã ngân hàng được liên kết với thiết bị paybox
amount
String
Số tiền
content
String
Nội dung thanh toán
qrCode
String
Mã QR Code cần truyền xuống thiết bị
terminalCode
String
Mã thiết bị (định dạng VVB)
serialNumber
String
Mã thiết bị (định dạng VVB)
orderId
String
Mã đơn hàng
checkSum
String
mã hóa checkSum MD5(password + bankAccount + amount + bankCode)
Response Body:
Name
Type
Desc
status
String
“SUCCESS”: Thành công
“FAILED”: Thất bại
message
String
Mã lỗi
cURL:
curl --location 'https://api.vietqr.org/vqr/api/tid/send-qr' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJhdXRob3JpdGllcyI6WyJST0xFX1VTRVIiXSwidXNlciI6IllXUnRhVzR0ZG5GeUxXRmpkR2wyWlMxclpYa3RNak15Tmc9PSIsImlhdCI6MTc0NDYwNTE5MCwiZXhwIjoxNzQ0NjA1NDkwfQ.KaHnBRrmE4xQRqvLFoDN5Hlrv0olprlgW-3El-jALV8SmKK1RQuO50-1HLrAOlNfjMnFRxoMjX77Ll_B3X2F4g' \
--header 'Cookie: JSESSIONID=006F5D39156747B38EB4187401E14210' \
--data '{
"bankAccount": "037356",
"bankCode": "MB",
"amount": "1000",
"content": "",
"qrCode": "123",
"terminalCode": "VVB407323",
"serialNumber": "ZSV242400203",
"orderId": "1234",
"checkSum": "0a644dad4146ddb232a2d8d619ed3b70"
}'
Response:
{
"status": "SUCCESS",
"message": ""
}
curl --location --request POST 'https://api.vietqr.org/vqr/api/token_generate' \
--header 'Authorization: Basic Y3VzdG9tZXItdmlldHFydGVzdC11c2VyMjQ2ODpZM1Z6ZEc5dFpYSXRkbWxsZEhGeWRHVnpkQzExYzJWeU1qUTJPQT09' \
--header 'Cookie: JSESSIONID=8E0DE1EDE33EC191F611536DB6895898; JSESSIONID=DC4871188D95F26D481CB72C012F8F8D; JSESSIONID=F42DA5E6
API
Import
Truyền dữ liệu
Response
API Get Token
curl --location --request POST 'https://api.vietqr.org/vqr/api/token_generate' \
--header 'Authorization: Basic Y3VzdG9tZXItdmlldHFydGVzdC11c2VyMjQ2ODpZM1Z6ZEc5dFpYSXRkbWxsZEhGeWRHVnpkQzExYzJWeU1qUTJPQT09' \
--header 'Cookie: JSESSIONID=8E0DE1EDE33EC191F611536DB6895898; JSESSIONID=DC4871188D95F26D481CB72C012F8F8D; JSESSIONID=F42DA5E6B21EC2F3788ADE512EB6AEFF'
Truyền thông tin username và password do VietQR cung cấp vào Basic Auth
Token có thời hạn sử dụng là 300s (5 phút)
API Generate QR Code
curl --location 'https://api.vietqr.org/vqr/api/qr/generate-customer' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJhdXRob3JpdGllcyI6WyJST0xFX1VTRVIiXSwidXNlciI6IlkzVnpkRzl0WlhJdGRtbGxkSEZ5ZEdWemRDMTFjMlZ5TWpRMk9BPT0iLCJpYXQiOjE3NDQ3MTMzMDksImV4cCI6MTc0NDcxMzYwOX0.cY3g8qGdBH20owYDmTfOodL_j2ieg6tcPasdEJslVt-z1dJzg6M2aZ0yuJ2dmh56O0AgHjWsu0Q9O67bmu1pgw' \
--header 'Cookie: JSESSIONID=57714DA017AF2E5EC3851BB1CE7DCDAB; JSESSIONID=023FE56A409B1D90B6860ED141EBF915; JSESSIONID=DC4871188D95F26D481CB72C012F8F8D; JSESSIONID=C3913C5A8AE870D3E7450FDBE1E36927' \
--data '{
"amount": 99999,
"content": "Anh Hieu Dep Trai",
"bankAccount": "0852240768",
"bankCode": "MB",
"userBankName": "HA TRUNG HIEU",
"transType": "C",
"orderId": "Z153",
"qrType": 0
}
'
Truyền token lấy được ở bước trên vào mục Header
và sửa thông tin body để tạo mã QR
Thông tin đầy đủ của mã QR động
API Push QR Pay Box
curl --location 'https://api.vietqr.org/vqr/api/tid/send-qr' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJhdXRob3JpdGllcyI6WyJST0xFX1VTRVIiXSwidXNlciI6IlkzVnpkRzl0WlhJdGRtbGxkSEZ5ZEdWemRDMTFjMlZ5TWpRMk9BPT0iLCJpYXQiOjE3NDQ3MTMzMDksImV4cCI6MTc0NDcxMzYwOX0.cY3g8qGdBH20owYDmTfOodL_j2ieg6tcPasdEJslVt-z1dJzg6M2aZ0yuJ2dmh56O0AgHjWsu0Q9O67bmu1pgw' \
--header 'Cookie: JSESSIONID=006F5D39156747B38EB4187401E14210; JSESSIONID=C3913C5A8AE870D3E7450FDBE1E36927' \
--data '{
"bankAccount": "0852240768",
"bankCode": "MB",
"amount": 99999,
"content": "Anh Hieu Dep Trai",
"qrCode": "00020101021138540010A00000072701240006970422011008522407680208QRIBFTTA53037045405999995802VN62350831VQRbc67cc3484 Anh Hieu Dep Trai6304E9A9",
"terminalCode": "VVB567340",
"serialNumber": "VVB567340",
"orderId": "Z153",
"checkSum": "8f95bb14f078099ab0001184bae0f59f"
}'
Truyền token lấy được ở bước trên vào mục Header
và sửa thông tin body để push mã QR về Pay box
Success
Note:
qrCode: response API Generate QR Code
checkSum: mã hóa checkSum MD5(password + bankAccount + amount + bankCode)
tid/send-qr
web mã hóa MD5