PUSH QR VÀO VIETQR PAYBOX

TÀI LIỆU ĐẨY MÃ QR XUỐNG THIẾT BỊ PAYBOX

  1. GỌI API Get Token

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:

https://api.vietqr.org/vqr/api/token_generate

Header:

Name

Value

Content-Type

application/json

Authorization

Basic Authentication:

Base64[username:password]

Liên hệ VietQR : 0922333636 hoặc 0939603636 để được cấp Username, password.

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

}

  1. Gọi API truyền mã QR xuống thiết bị

Mục đích: Dùng truyền mã QR xuống thiết bị để hiển thị

POST: https://api.vietqr.org/vqr/api/tid/send-qr

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": ""

}

2 - HƯỚNG DẪN CÁC BƯỚC KẾT NỐI

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)

https://www.md5hashgenerator.com web mã hóa MD5

Last updated