Dữ liệu QR code, đặc biệt là trong thanh toán chuẩn EMVCo, tuân theo cấu trúc tiêu chuẩn và được định nghĩa rõ ràng. Các trường thông tin được tổ chức theo cặp ID - Value và có thể bao gồm nhiều thành phần khác nhau tùy theo mục đích. Dưới đây là chi tiết cấu trúc và nội dung thường có trong QR code thanh toán:
1. Cấu trúc cơ bản của QR Code EMVCo
Mỗi trường dữ liệu bao gồm:
Cấu trúc:
ID | Length | Value
ID | Tên Trường | Ý Nghĩa | Ví dụ |
---|---|---|---|
00 | Payload Format Indicator | Chỉ định định dạng QR code, thường là 01 cho EMVCo | 000201 |
01 | Point of Initiation | Loại QR (tĩnh hoặc động). 11 (động), 12 (tĩnh) | 010211 |
26-51 | Merchant Account Info | Thông tin tài khoản của người bán, mã quốc gia, ngân hàng | 26 cho VNPAY, 29 ... |
52 | Merchant Category Code | Mã loại hình kinh doanh, ví dụ: 0000 (không xác định) | 52040000 |
53 | Transaction Currency | Loại tiền tệ giao dịch theo chuẩn ISO 4217, như 704 cho VND | 5303704 |
54 | Transaction Amount | Số tiền giao dịch | 5403100 (100 VND) |
58 | Country Code | Mã quốc gia, theo ISO 3166-1 Alpha-2, như VN cho Việt Nam | 5802VN |
59 | Merchant Name | Tên đơn vị chấp nhận thanh toán | 5910My Store |
60 | Merchant City | Thành phố của người bán | 6010Hanoi |
62 | Additional Data Field | Dữ liệu bổ sung như mã tham chiếu, mã đơn hàng | 6214Ref123456 |
63 | CRC | Mã kiểm tra CRC16 (Checksum) để xác thực QR | 6304E4A8 |
0002010102115204000053037045403100 5802VN5910My Store6010Hanoi6214Ref1234566304E4A8
000201 => 00 là id, 02 là độ dài của dữ liệu,
01
dữ liệu (Payload format: EMV QR)01
: 11
(Dynamic QR)52
: 0000
(Merchant Category Code)53
: 704
(Currency VND)54
: 100
(Amount: 100 VND)58
: VN
(Country Code)59
: My Store
(Merchant Name)60
: Hanoi
(City)62
: Ref123456
(Reference Data)63
: E4A8
(CRC Checksum)Bạn có thể xây dựng nội dung này bằng cách nối các chuỗi ID - Length - Value và đảm bảo tính toán CRC chính xác.
Tham khảo mã nguồn C#
Github: https://github.com/anpero-vietnam/anpero-all-payment-library/wiki/QR-Code-data-generator
Nuget: https://www.nuget.org/packages/QRPaymentCode
Cập nhật tin tức nhanh nhất và mới nhất