NGÂN HÀNG NHÀ NƯỚC
VIỆT NAM
-------
|
CỘNG HÒA XÃ HỘI CHỦ
NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
---------------
|
Số: 2525/QĐ-NHNN
|
Hà Nội, ngày 15
tháng 11 năm 2024
|
QUYẾT
ĐỊNH
BAN HÀNH TIÊU CHUẨN CƠ SỞ ĐẶC TẢ KỸ THUẬT
QR CODE HIỂN THỊ TỪ PHÍA KHÁCH HÀNG TẠI VIỆT NAM
THỐNG
ĐỐC NGÂN HÀNG NHÀ NƯỚC
Căn cứ Luật Ngân
hàng Nhà nước Việt Nam ngày 16 tháng 6 năm 2010;
Căn cứ Luật Tiêu
chuẩn và Quy chuẩn kỹ thuật ngày 29 tháng 6 năm 2006 và Luật sửa đổi, bổ
sung một số điều của 37 Luật có liên quan đến quy hoạch ngày 20 tháng 11 năm
2018;
Căn cứ Nghị định số
127/2007/NĐ-CP ngày 01 tháng 8 năm 2007 của Chính phủ quy định chi tiết thi
hành một số điều của Luật Tiêu chuẩn và Quy chuẩn kỹ thuật;
Căn cứ Nghị định số
78/2018/NĐ-CP ngày 16 tháng 5 năm 2018 của Chính phủ sửa đổi, bổ sung một số Điều
của Nghị định số 127/2007/NĐ-CP ngày 01 tháng 8 năm 2007 của Chính phủ quy định
chi tiết thi hành một số Điều Luật Tiêu chuẩn và Quy chuẩn kỹ thuật;
Căn cứ Nghị định số
102/2022/NĐ-CP ngày 12 tháng 12 năm 2022 của Chính phủ quy định chức năng,
nhiệm vụ, quyền hạn và cơ cấu tổ chức của Ngân hàng Nhà nước Việt Nam;
Căn cứ Thông tư số
11/2021/TT-BKHCN ngày 18 tháng 11 năm 2021 của Bộ Khoa học và Công nghệ quy
định chi tiết xây dựng và áp dụng tiêu chuẩn;
Căn cứ Tiêu chuẩn
Quốc gia TCVN 7322:2009 Công nghệ thông tin - Kỹ thuật phân định và thu
nhận dữ liệu tự động -Yêu cầu kỹ thuật đối với mã hình QR Code 2005;
Theo đề nghị của Vụ
trưởng Vụ Thanh toán và Cục trưởng Cục Công nghệ thông tin.
QUYẾT
ĐỊNH:
Điều 1. Ban
hành kèm theo Quyết định này Tiêu chuẩn cơ sở:
TCCS 04:2024/NHNN Đặc
tả kỹ thuật QR Code hiển thị từ phía khách hàng tại Việt Nam
Điều 2. Quyết
định này có hiệu lực thi hành kể từ ngày ký./.
Nơi nhận:
-
Ban Lãnh đạo NHNN;
- Vụ PC, Cục CNTT, CQTTGSNH;
- Các tổ chức cung ứng dịch vụ thanh toán;
- Các tổ chức cung ứng dịch vụ trung gian thanh toán;
- Lưu: VP, TT(3b). LTMy.
|
KT. THỐNG ĐỐC
PHÓ THỐNG ĐỐC
Phạm
Tiến Dũng
|
TIÊU
CHUẨN CƠ SỞ
TCCS
04:2024/NHNN
ĐẶC TẢ KỸ THUẬT QR CODE HIỂN THỊ TỪ
PHÍA KHÁCH HÀNG TẠI VIỆT NAM
(kèm
theo quyết định số 2525/QĐ-NHNN ngày 15 tháng 11 năm 2024 của Ngân hàng Nhà
nước Việt Nam)
MỤC LỤC
1. Mục đích
2. Phạm vi áp dụng
3. Tài liệu viện
dẫn
4. Thuật ngữ và
định nghĩa
5. Đặc tả kỹ thuật
QR Code khách hàng
Lời nói đầu
TCCS 04:2024/NHNN do
Vụ Thanh toán và Cục Công nghệ thông tin đề nghị, Ngân hàng Nhà nước
Việt Nam (sau đây gọi tắt là Ngân hàng Nhà nước, viết tắt là NHNN) công bố.
Tiêu chuẩn cơ sở
(sau đây viết tắt là TCCS) này là tiêu chuẩn yêu cầu kỹ thuật có thể
được xem xét, sửa đổi, bổ sung để đảm bảo tính thực tiễn, khả năng
tương thích với hệ thống thanh toán quốc tế và nâng cao bảo mật trong
quá trình triển khai và phù hợp với các quy định của pháp luật
hiện hành.
ĐẶC
TẢ KỸ THUẬT QR CODE HIỂN THỊ TỪ PHÍA KHÁCH HÀNG TẠI VIỆT NAM
(Loại
TCCS: Tiêu chuẩn yêu cầu kỹ thuật)
1.
Mục đích
- Đặt ra tiêu chuẩn
chung, thống nhất trong yêu cầu kỹ thuật về định dạng của QR Code hiển
thị từ phía khách hàng tại Việt Nam, tạo thuận lợi cho việc kết nối
liên thông thanh toán bằng mã QR.
- Hỗ trợ, thúc đẩy
sự nhất quán, đồng bộ trong yêu cầu kỹ thuật của QR Code hiển thị từ phía
khách hàng tại Việt Nam với thế giới.
2.
Phạm vi áp dụng
Tài liệu quy định
các yêu cầu về đặc tả kỹ thuật, định dạng cấu trúc và thành phần dữ
liệu QR Code hiển thị từ phía khách hàng, được sử dụng trong lĩnh vực thanh
toán thực hiện trên lãnh thổ Việt Nam do các tổ chức cung ứng dịch vụ
thanh toán, tổ chức cung ứng dịch vụ trung gian thanh toán (sau đây gọi
chung là tổ chức cung ứng dịch vụ) cung cấp.
3. Tài liệu viện
dẫn
Các tài liệu viện
dẫn dưới đây được áp dụng cho tài liệu này. Đối với các tài liệu
viện dẫn ghi năm công bố thì áp dụng phiên bản được nêu. Đối với các
tài liệu viện dẫn không ghi năm công bố thì áp dụng phiên bản mới nhất,
bao gồm cả các sửa đổi, bổ sung (nếu có).
Tài
liệu
|
Tên
tài liệu
|
TCVN
|
Tiêu chuẩn quốc gia
về Công nghệ thông tin - Kỹ thuật phân định và thu nhận dữ liệu tự động - Yêu
cầu kỹ thuật đối với mã hình QR Code 2005
|
[EMV]
|
EMV ICC
Specifications for Payment Systems, Version 4.3, November 2011, and all
published bulletins. Integrated Circuit Card Specifications for Payment
Systems.
Hướng dẫn kỹ
thuật EMV ICC cho hệ thống thanh toán, phiên bản 4.3, tháng 11/2011, và
tất cả các báo cáo được phát hành. Hướng dẫn kỹ thuật về thẻ tích
hợp vi mạch (thẻ chip) cho hệ thống thanh toán.
|
[EMV QRCPS]
|
EMV QR Code
Specification for Payment Systems (Consumer-Presented Mode) version 1.1
November 2020
Tài liệu đặc tả
dữ liệu QR Code cho các hệ thống thanh toán (hiển thị từ phía khách
hàng) phiên bản 1.1 phát hành tháng 11/2020.
|
[EMV Báo cáo số 167]
|
EMV Specification
Bulletin No. 167—Payment Account Reference (PAR)
Báo cáo hướng
dẫn số 167 của EMV - Tham chiếu Tài khoản thanh toán (PAR)
|
[ISO 639]
|
Codes for the
representation of names of languages—Part 1: Alpha - 2 Code. Note: This
standard is updated continuously by ISO. Additions/Changes to ISO 639 Codes
as published in ISO 639-1: 1988 (Alpha-2 code) and ISO 639-2: 1998 (Alpha-3
code). Codes for the Representation of Names of Languages are available
on: http://www.loc.gov/standards/iso639-2/php/code_changes.php
Mã số đại diện
cho tên của ngôn ngữ - Phần 1: Mã alpha-2.
Ghi chú: Tiêu
chuẩn này được cập nhật liên tục bởi ISO. Các thay đổi/bổ sung trong
ISO 639 như được xuất bản trong ISO 639-1: 1988 (mã Alpha-2) và ISO 639-2:
1998 (mã Alpha-3).
Mã số đại diện
cho tên của ngôn ngữ có tại link sau:
http://www.loc.gov/standards/iso639-2/php/code_changes.php
|
[ISO 7813]
|
ISO/IEC 7813.
Identification Cards—Financial Transaction Cards
ISO/IEC 7813. Thẻ
định danh - Thẻ giao dịch tài chính
|
[ISO 8583]
|
ISO/IEC 8583.
Financial transaction card originated messages — Interchange message
specifications
ISO/IEC 8583. Tin
nhắn xuất phát từ thẻ giao dịch tài chính - Hướng dẫn kỹ thuật về trao
đổi tin nhắn
|
[ISO 7816-5]
|
ISO/IEC 7816-5.
Identification Cards—Integrated Circuit Cards with Contacts—Part 5: Numbering
System and Registration Procedure for Application Identifiers
ISO/IEC 7816-5. Thẻ
định danh - Thẻ tích hợp vi mạch có tiếp xúc Phần 5: Hệ thống đánh số
và thủ tục đăng ký mã định danh ứng dụng
|
[ISO 8825]
|
ISO/IEC 8825-1.
Information technology—ASN.1 encoding rules: Specification of Basic Encoding
Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules
(DER)
ISO/IEC 8825-1.
Công nghệ thông tin - Quy tắc mã hóa ASN.1: Hướng dẫn chi tiết Quy tắc mã
hóa cơ bản (BER), Quy tắc mã hóa tiêu chuẩn (CER) và Quy tắc mã hóa phân
biệt (DER)
|
[ISO 18004]
|
ISO/IEC 18004.
Information technology—Automatic identification and data capture
techniques—QR Code bar code symbology specification.
ISO/IEC 18004. Công
nghệ thông tin - Kỹ thuật xác thực tự động và thu thập dữ liệu -
Hướng dẫn kỹ thuật về việc sử dụng ký hiệu mã hình của QR Code
|
[RFC 3966]
|
RFC 3966. The tel
URI for Telephone Numbers
RFC 3966. URI Tel cho
số điện thoại
|
[RFC 4648]
|
RFC 4648. The
Base16, Base32, and Base64 Data Encodings
RFC 4648. Mã hóa
dữ liệu Base16, Base32 và Base64
|
[RFC 6068]
|
RFC 6068. URI
Scheme ‘mailto’
|
4. Thuật ngữ và
định nghĩa
Các thuật ngữ
trong tài liệu được định nghĩa như sau:
4.1. QR code hiển
thị từ phía khách hàng (QR Code khách hàng): là mã phản hồi
nhanh (Quick response Code) do Ứng dụng trên thiết bị di động của khách
hàng hiển thị để thực hiện giao dịch thanh toán và tuân thủ TCCS về
đặc tả kỹ thuật, định dạng cấu trúc và thành phần dữ liệu được quy
định trong TCCS này.
4.2. Khách hàng: là cá nhân, tổ
chức sử dụng dịch vụ do tổ chức cung ứng dịch vụ cung cấp, thực hiện Giao
dịch thanh toán QR Code khách hàng tại Đơn vị chấp nhận thanh toán.
4.3. Ứng dụng trên
thiết bị di động:
là ứng dụng do tổ chức cung ứng dịch vụ cung cấp trên thiết bị di động của
khách hàng, cho phép tạo mã QR Code khách hàng để sử dụng trong giao
dịch thanh toán.
4.4. Tổ chức cung ứng
dịch vụ:
là tổ chức cung ứng dịch vụ thanh toán, tổ chức cung ứng dịch vụ trung
gian thanh toán thực hiện việc kết nối và xử lý Giao dịch thanh toán
QR Code khách hàng.
4.4.1. Tổ chức cung
ứng dịch vụ thanh toán bao gồm: Ngân hàng Nhà nước; Ngân hàng thương mại,
ngân hàng chính sách, ngân hàng hợp tác xã (sau đây gọi tắt là ngân
hàng); Chi nhánh ngân hàng nước ngoài.
4.4.2. Tổ chức cung
ứng dịch vụ trung gian thanh toán là tổ chức không phải là ngân hàng, chi
nhánh ngân hàng nước ngoài được Ngân hàng Nhà nước cấp Giấy phép hoạt
động cung ứng dịch vụ trung gian thanh toán.
4.5. Hệ thống xử lý
Giao dịch QR Code khách hàng: là hệ thống được cài đặt tại Đơn vị
chấp nhận thanh toán, cho phép đọc thông tin QR Code khách hàng, phân tích
và xử lý giao dịch QR Code để thực hiện giao dịch thanh toán và tuân
thủ TCCS về đặc tả kỹ thuật, định dạng cấu trúc và thành phần dữ liệu
được quy định trong TCCS này, bao gồm đầu đọc QR Code và phần mềm xử lý,
phân tích giao dịch QR Code.
4.6. Giao dịch thanh
toán QR Code khách hàng: là giao dịch thanh toán tiền hàng hóa, dịch vụ
cho Đơn vị chấp nhận thanh toán thông qua quá trình khách hàng cung cấp
QR Code khách hàng được tạo từ Ứng dụng trên thiết bị di động của khách
hàng cho Đơn vị chấp nhận thanh toán, Đơn vị chấp nhận thanh toán dùng
Hệ thống xử lý Giao dịch QR Code khách hàng để gửi yêu cầu thanh toán,
tiếp nhận xác nhận thanh toán giao dịch của khách hàng.
4.7. Đơn vị chấp
nhận thanh toán (ĐVCNTT): là tổ chức, cá nhân chấp nhận thanh toán hàng
hóa, dịch vụ qua QR Code khách hàng theo hợp đồng, thỏa thuận đã ký với
tổ chức cung ứng dịch vụ.
4.8. Một số thuật ngữ
dưới đây được sử dụng với ý nghĩa như sau:
4.8.1. Yêu cầu hiện diện
của đối tượng dữ liệu bao gồm một trong các trường hợp sau:
- M: Mandatory - luôn
bắt buộc phải có.
- C: Conditional - phải
có trong một số trường hợp.
- O: Optional - có
thể có.
4.8.2. Độ dài đối tượng
dữ liệu
Độ dài của các
đối tượng dữ liệu được thể hiện bằng byte. Không có kích thước tối đa
cho QR Code tuy nhiên với QR Code khách hàng được khuyến nghị là 519 byte
để đảm bảo chất lượng thời gian đọc và thời gian xử lý giao dịch.
4.8.3. Giá trị của một
số đối tượng dữ liệu trong QR Code khách hàng có một trong các định
dạng sau:
- Alphanumeric (sau
đây viết tắt là an) là định dạng chữ và số chứa một ký tự trên mỗi
byte. Các ký tự được phép là chữ cái latinh (a đến z và A đến X, viết
hoa và không viết hoa) và chữ số (0 đến 9). ‘an*’ là ký tự chữ (chỉ cho
phép ký tự in hoa) và số.
- Alphanumeric
Special (sau đây viết tắt là ans) là định dạng chữ số đặc biệt chứa một
ký tự trên mỗi byte, các ký tự được phép và cách mã hóa của chúng
được ghi tại bảng Bộ ký tự thông thường trong phụ lục B [EMV] Book 4.
- Binary/ bit (sau
đây viết tắt là b): là định dạng dữ liệu chứa số nhị phân không dấu
hoặc tổ hợp bit.
- Compressed numeric
(sau đây viết tắt là cn) là định dạng dữ liệu số nén chứa hai chữ số
(có giá trị trong khoảng từ ‘0’ đến ‘9’ hệ Hex) trên mỗi byte. Những đối
tượng dữ liệu được này được căn trái và độn thêm ký tự ‘F’ hệ Hex ở
sau.
- Numeric (sau đây
viết tắt là n) Đối tượng dữ liệu số chứa hai chữ số (có giá trị
trong khoảng từ ‘0’ đến ‘9’ hệ Hex) trên mỗi byte. Những chữ số này được
căn phải và độn thêm các số 0 hệ Hex ở trước. Đôi khi các hướng dẫn kỹ
thuật khác gọi định dạng dữ liệu này là Binary Coded Decimal (BCD) -
Số thập phân được mã hóa nhị phân hoặc gói dữ liệu không dấu.
5. Đặc tả kỹ
thuật QR Code khách hàng
QR Code khách hàng
trên Ứng dụng trên thiết bị di động gồm hai đối tượng sau:
• Ứng dụng trên thiết
bị di động: bao gồm chức năng mã hóa các thông tin dành cho thanh toán
của khách hàng dựa trên hướng dẫn này, sau đó hiển thị thành QR Code
khách hàng.
• QR Code: định dạng
chứa thông tin thanh toán và các dữ liệu khác dựa trên hướng dẫn này,
được chuyển đổi sang base64 và mã hóa vào QR Code.
Hệ thống xử lý
Giao dịch QR Code khách hàng của ĐVCNTT gồm hai đối tượng sau:
• Đầu đọc QR Code (máy
quét quang học được sử dụng để đọc và xử lý QR Code): quét QR Code, giải
mã QR Code, chuyển đổi thành dạng chuỗi (được mã hóa base64 trong QR
Code) và gửi tới Hệ thống xử lý Giao dịch QR Code khách hàng.
• Phầm mềm xử lý, phân
tích giao dịch QR Code: xử lý chuỗi dữ liệu mã hóa base64 trong QR Code
được miêu tả trong hướng dẫn này, bao gồm các chức năng: giải mã base64,
phân tích dữ liệu, kiểm tra nội dung, định dạng và xử lý giao dịch…
5.1.
Cấu trúc đối tượng dữ liệu QR Code khách hàng
Mục này chỉ ra các
đối tượng dữ liệu được bao gồm trong định dạng QR Code. Đối tượng dữ
liệu trong QR Code khách hàng được chia thành hai lớp:
• Dữ liệu được yêu
cầu dành cho xử lý thanh toán. Ví dụ, Hệ thống xử lý Giao dịch QR Code
khách hàng cần phải nhận diện được dữ liệu khách hàng, cần nhận diện
được mã định danh tổ chức cung cấp ứng dụng (AID) để định hướng đúng giao
dịch. Lớp dữ liệu sẽ được đặt trong Payload Format Indicator - Phiên bản
dữ liệu (tag ‘85’), Application template - Mẫu ứng dụng (tag ‘61’) và/hoặc
Common data template - Mẫu dữ liệu chung (tag ‘62’).
• Các dữ liệu khác
mà Hệ thống xử lý Giao dịch QR Code khách hàng không yêu cầu để xử lý
và chỉ được chuyển tiếp gửi tới tổ chức cung ứng dịch vụ. Ví dụ như lớp
dữ liệu này có thể được đặt tại Application Specific Transparent
Template - Mẫu đặc tả ứng dụng trong suốt (tag ‘63’) hoặc Common Data
Transparent Template - Mẫu dữ liệu chung trong suốt (tag ‘64’).
Dữ liệu trong QR
Code khách hàng phải bao gồm các đối tượng dữ liệu mã hóa theo Quy tắc
mã hóa cơ bản - Tag Length Value (BER-TLV) được nhắc tại Bảng dưới đây:
Tag
|
Ý
nghĩa
|
Độ
dài
|
Định
dạng
|
Hiện
diện
|
‘85’
|
Payload Format
Indicator
Phiên bản dữ liệu
|
5
|
an
|
M
|
‘61’
|
Application
template
|
var.
|
b
|
M
|
|
Mẫu ứng dụng
|
|
|
|
|
‘xxxx’
|
Additional BER-TLV
coded data objects
Đối tượng dữ liệu
bổ sung mã hóa BER-TLV
|
var.
|
b
|
O
|
‘63’
|
Application
Specific Transparent Template
Mẫu đặc tả ứng dụng
trong suốt
|
var.
|
b
|
O
|
|
‘xxxx’
|
Additional BER-TLV
coded data objects
Đối tượng dữ liệu
bổ sung mã hóa BER-TLV
|
var.
|
b
|
O
|
‘61’
|
Application
template
Mẫu ứng dụng
|
var.
|
b
|
O
|
|
‘xxxx’
|
Additional BER-TLV
coded data objects
Đối tượng dữ liệu
bổ sung mã hóa BER-TLV
|
var.
|
b
|
O
|
‘63’
|
Application
Specific Transparent Template
Mẫu đặc tả ứng dụng
trong suốt
|
var.
|
b
|
O
|
|
‘xxxx’
|
Additional BER-TLV
coded data objects
Đối tượng dữ liệu
bổ sung mã hóa BER-TLV
|
var.
|
b
|
O
|
‘62’
|
Common Data
Template
|
var.
|
b
|
O
|
|
Mẫu dữ liệu chung
|
|
|
|
|
‘xxxx’
|
Additional BER-TLV
coded data objects
Đối tượng dữ liệu
bổ sung mã hóa BER-TLV
|
var.
|
b
|
O
|
‘64’
|
Common Data
Transparent Template
Mẫu dữ liệu chung
trong suốt
|
var.
|
b
|
O
|
|
‘xxxx’
|
Additional BER-TLV
coded data objects
Đối tượng dữ liệu
bổ sung mã hóa BER-TLV
|
var.
|
b
|
O
|
‘xx’
|
Other Template
Mẫu khác
|
var.
|
b
|
O
|
|
‘yy’
|
Another template or
primitive data object
Mẫu khác hoặc đối
tượng dữ liệu gốc
|
var.
|
b
|
O
|
Các đối tượng dữ
liệu nằm trong QR Code khách hàng chỉ nên bao gồm những đối tượng quan
trọng đối với quá trình xử lý giao dịch và tối ưu hóa trải nghiệm
Khách hàng.
Phiên bản dữ liệu
(tag ‘85’) xác định phiên bản định dạng QR Code khách hàng và là đối
tượng dữ liệu đầu tiên trong định dạng QR Code khách hàng. Và sau đó
QR Code khách hàng bao gồm Mẫu ứng dụng - tag ‘61’ với Mẫu dữ liệu chung
- tag ‘62’ (nếu có). Các Mẫu khác cũng có thể xuất hiện sau cùng trong
dữ liệu của QR Code khách hàng.
• Mẫu ứng dụng - tag
‘61’ chứa dữ liệu ứng dụng cụ thể được xác định bởi mã định danh tổ
chức cung cấp ứng dụng AID (tag ‘4F’). Trong tag ‘61’ có thể chứa tag ‘63’
• Mẫu đặc tả ứng dụng
trong suốt - tag ‘63’ chứa dữ liệu ứng dụng cho Hệ thống xử lý giao dịch
QR Code khách hàng mà được xác định bởi mã định danh tổ chức cung cấp
ứng dụng AID (tag ‘4F’)
• Mẫu ứng dụng chung
- tag ‘62’ chứa dữ liệu thông thường áp dụng cho Hệ thống xử lý giao
dịch QR Code khách hàng trong Mẫu ứng dụng - tag ‘61’. Trong tag ‘62’ có
thể chứa tag ‘64’.
Trong một Mẫu ứng
dụng (tag ‘61’) hoặc một Mẫu dữ liệu chung (tag ‘62’) sẽ có các thông tin
và dữ liệu tuân theo quy tắc mã hóa BER-TLV, những dữ liệu này có thể
đặt theo bất kỳ trình tự nào. Tuy nhiên các “đối tượng dữ liệu bổ sung
mã hóa BER-TLV” xuất hiện trong tag ‘61’ và tag ‘62’ không được giống
nhau.
“Đối tượng dữ
liệu bổ sung mã hóa BER-TLV” trong các mẫu có thể bao gồm các đối
tượng dữ liệu như sau:
Tag
|
Đối
tượng dữ liệu
|
Hiện
diện
|
Điều
kiện
|
‘4F’
|
Application
Definition File (ADF) Name
Mã định danh tổ
chức cung cấp ứng dụng (AID)
|
M
|
|
‘50’
|
Application Label
Tên ứng dụng/ Mã
ứng dụng
|
O
|
|
‘57’
|
Track 2 Equivalent
Data
Thông tin thẻ
|
C
|
Hoặc Track 2
Equivanlent Data
hoặc Application PAN phải được sử dụng.
|
‘5A’
|
Application PAN
Số thẻ/tài khoản/ví
gắn với ứng dụng
|
C
|
‘5F20’
|
Cardholder Name
Tên chủ thẻ/ Tài khoản/ví
|
O
|
|
‘5F2D’
|
Language Preference
Ngôn ngữ
|
O
|
|
‘5F50’
|
Issuer URL
URL tổ chức phát
hành
|
O
|
|
‘9F08’
|
Application Version
Number
Phiên bản ứng dụng
|
O
|
|
‘9F19’
|
Token Requeston ID
Mã đơn vị yêu cầu
cấp Token
|
O
|
|
‘9F24’
|
Payment Account
Reference
Mã định danh liên
kết Thẻ/Tài khoản/Ví
|
O
|
|
‘9F25’
|
Last 4 Digits of
PAN
4 ký tự cuối của số
Thẻ/ Tài khoản/Ví
|
O
|
|
5.1.1. Phiên bản dữ
liệu QR Code khách hàng (tag ‘85’)
- Định dạng: an
- Độ dài: 5
- Yêu cầu hiện diện:
bắt buộc phải có
- Ý nghĩa: phiên bản
dữ liệu QR Code khách hàng là đối tượng dữ liệu đầu tiên trong QR Code
hiển thị từ phía khách hàng, dùng để xác định phiên bản đặc tả QR Code
khách hàng và các quy ước về định danh đối tượng dữ liệu.
Ba ký tự đầu tiên
luôn là “CPV” và hai ký tự sau cùng phải là chữ số thập phân xác định
phiên bản của định dạng chuỗi dữ liệu. Tại phiên bản này, đặc tả QR Code
khách hàng có giá trị là “CPV01”. Các giá trị khác được đăng ký dự
phòng dành cho các phiên bản trong tương lai.
5.1.2. Mã định danh
tổ chức cung cấp ứng dụng (tag ‘4F’)
- Định dạng: b
- Độ dài: 5-16
- Yêu cầu hiện diện:
bắt buộc phải có
- Ý nghĩa: mã định
danh tổ chức cung cấp ứng dụng được sử dụng để định danh tổ chức cung ứng
dịch vụ cho khách hàng cụ thể (AID). Một mã AID gồm mã định danh tổ chức
cung ứng dịch vụ đã đăng ký (RID) được quy định bởi ISO/IEC 7816-5. Các
tổ chức đã có mã IIN có thể sử dụng mã IIN thay thế cho RID. IIN được quy
định bởi ISO/IEC 7812-1
5.1.3. Tên ứng dụng/
Mã ứng dụng (tag ‘50’)
- Định dạng: ans
- Độ dài: 1-16
- Yêu cầu hiện diện:
có thể có
- Ý nghĩa: tên ứng
dụng/ mã ứng dụng được dùng để xác định đúng ứng dụng mà khách hàng sẽ
nhận yêu cầu thanh toán. Trường này cũng có thể được sử dụng khi in hóa
đơn cho khách hàng.
5.1.4. Thông tin thẻ
(tag ‘57’)
- Định dạng: b
- Độ dài: tối đa 19
byte (38 nibble)
- Yêu cầu hiện diện:
cần phải có trong một số trường hợp
- Ý nghĩa: là nhóm
thông tin sử dụng trong xác nhận giao dịch trực tuyến.
Nếu không có số
tài khoản “tag 5A” - mục 5.1.5 thì Hệ thống xử lý giao dịch QR Code
khách hàng sẽ sử dụng số tài khoản tại Track 2 để xử lý giao dịch QR
Code khách hàng. Track 2 cần tuân theo [ISO 7813], ngoại trừ trọng điểm bắt
đầu, trọng điểm cuối và LRC. Track2 được tạo thành từ các trường dữ
liệu như sau:
Trường
dữ liệu
|
Độ
dài
|
Định
dạng
|
Primary Account
Number
Số tài khoản
|
Tối đa 19 nibbles
|
n
|
Field Separator of
'D'
Ký tự phân cách
trường dữ liệu
|
1 nibble
|
b
|
Expiration Date
(YYMM)
Ngày hết hạn
|
4 nibbles
|
n
|
Service Code
Mã dịch vụ
|
3 nibbles
|
n
|
Discretionary Data
Dữ liệu tùy biến
|
var.
|
n
|
Padded with 'F' if
needed to ensure whole bytes
Chốt chuỗi với ký
tự “F” nếu cần bảo toàn toàn bộ dữ liệu
|
1 nibble
|
b
|
5.1.5. Số thẻ/ tài
khoản/ví gắn với ứng dụng (tag ‘5A’)
- Định dạng: cn
- Độ dài: tối đa 10
byte
- Yêu cầu hiện diện:
cần phải có trong một số trường hợp
- Ý nghĩa: là Số
thẻ/ số tài khoản/Số ví dùng cho thanh toán mà khách hàng lựa chọn khi
tạo QR Code từ Ứng dụng trên thiết bị di động. Hệ thống xử lý giao dịch
QR Code khách hàng có thể ưu tiên chỉ định thẻ/tài khoản/ví này để yêu
cầu khách hàng xác thực giao dịch. Ứng dụng trên thiết bị di động của
khách hàng có thể cho phép khách hàng chọn sang thẻ/tài khoản/ví thanh
toán khác (nếu cần). Trường này được sử dụng nếu QR Code không có Track 2
- mục 5.1.4.
5.1.6. Mã định danh
liên kết thẻ/tài khoản/ví (Token) (tag ‘9F24’)
- Định dạng: an*
- Độ dài: 29 byte
- Yêu cầu hiện diện:
cần phải có trong một số trường hợp
- Ý nghĩa: dùng để
xác định Số thẻ/số tài khoản/Số ví mặc định được sử dụng thanh toán
do khách hàng lựa chọn khi tạo QR Code từ Ứng dụng trên thiết bị di động
mà có liên kết với mã định danh này, được định nghĩa trong [EMV
Bulletin No.167]. Tổ chức cung ứng dịch vụ và ĐVCNTT có thể căn cứ để yêu
cầu xử lý giao dịch với số thẻ/tài khoản/số ví mặc định được liên kết
mã định danh này, hoặc cho phép khách hàng lựa chọn thẻ/tài khoản/ví
khác trong danh sách thẻ/tài khoản/ví đã được đăng ký gắn với mã định
danh liên kết này tại tổ chức cung ứng dịch vụ.
5.1.7. Mã đơn vị yêu
cầu cấp mã định danh liên kết thẻ/tài khoản/ví (tag ‘9F19’)
- Định dạng: n
- Độ dài: 6 byte
- Yêu cầu hiện diện:
cần phải có trong một số trường hợp
- Ý nghĩa: Do một thẻ
có thể được tạo nhiều Token từ các đơn vị yêu cầu cấp khác nhau. Vì
vậy cần dùng trường này để xác định duy nhất cặp dữ liệu Token phục vụ
khi chuẩn chi giao dịch (Token ID và Token Domain).
5.1.8. Tên chủ thẻ/
tài khoản/ví (tag ‘5F20’)
- Định dạng: ans
- Độ dài: 2-26 byte
- Yêu cầu hiện diện:
cần phải có trong một số trường hợp
- Ý nghĩa: tên chủ
tài khoản tại trường này cũng có thể được sử dụng khi in hóa đơn cho
khách hàng.
5.1.9. URL tổ chức
phát hành (tag ‘5F50’)
- Định dạng: ans
- Độ dài: 2-26 byte
- Yêu cầu hiện diện:
có thể có
- Ý nghĩa: giá trị
của URL tổ chức phát hành bao gồm thông tin của khách hàng cho việc
chuyển hóa đơn điện tử với cú pháp được xác định bởi một tiêu chuẩn
URI. Tiêu chuẩn URI được hỗ trợ là:
• Số điện thoại,
định nghĩa trong [RFC 3966]
• Địa chỉ email, định
nghĩa trong [RFC 6068] Dưới đây là ví dụ của URL tổ chức phát hành:
• Nếu giá trị là một
số điện thoại: tel: +84981234567
• Nếu giá trị là một
địa chỉ email: example@abc.abc
5.1.10. 4 số cuối của
thẻ/tài khoản/ví (tag ‘9F25’)
- Định dạng: n
- Độ dài: 2 byte
- Yêu cầu hiện diện:
có thể có
- Ý nghĩa: 4 số cuối
của tài khoản/thẻ/ví tại trường này cũng có thể được sử dụng khi in
hóa đơn cho khách hàng.
5.1.11. Ngôn ngữ (tag
‘5F2D’)
- Định dạng: an
- Độ dài: 2 - 8 Byte
- Yêu cầu hiện diện:
có thể có
- Ý nghĩa: ngôn ngữ
này được quy định từ chính Ứng dụng trên thiết bị di động mà khách hàng
sử dụng quy định. Nó dùng để xác định ngôn ngữ ưu tiên cho phần thông
báo đến khách hàng qua Ứng dụng trên thiết bị di động mà khách hàng cần
xác thực giao dịch thanh toán.
5.1.12. Số phiên bản
ứng dụng (tag ‘9F08’)
- Định dạng: b
- Độ dài: 2 Byte
- Yêu cầu hiện diện:
có thể có
- Ý nghĩa: là số
phiên bản được chỉ định bởi hệ thống thanh toán cho ứng dụng.
5.2.
Mã hóa QR Code khách hàng
Mục này đề cập đến
các bước chuyển đổi từ dữ liệu gốc thành QR Code khách hàng.
QR Code khách hàng
được tạo ra, mã hóa và hiển thị bởi thiết bị của khách hàng. Các
nhận định trong mục này là miêu tả bổ sung thông tin và được thêm vào
nhằm hỗ trợ người đọc hiểu được các yêu cầu chức năng của Đầu đọc QR Code
nêu tại mục 4.3.
Phương pháp chuyển
đổi từ dữ liệu gốc thành QR Code khách hàng có thể được thực hiện
bằng cách tuân theo các bước sau.
- Bước 1: Xác định
dữ liệu gốc sẽ đưa từng tag theo mô tả mục 4.1.
- Bước 2: Chuyển dữ
liệu thu thập được từ bước 1 thành hexa
- Bước 3: Chuyển đổi
dữ liệu nhị phân (binary data) sang chuỗi mã hóa base64 như mô tả tại [RFC
4648].
- Bước 4: Chuyển đổi
chuỗi dữ liệu base64 trên sang QR Code như mô tả tại [ISO 18004], sử dụng
các thông số và lựa chọn sau:
• Mode: sử dụng mode
Phương thức dịch kênh mở rộng – Extended Channel Interpretation (ECI) mặc
định và Byte mode.
• Error Correction: sử
dụng Error Correction mức độ L, M, Q hoặc H và giá trị p (như nêu tại Bảng
9 [ISO 18004] - ký tự Error Correction cho QR Code năm 2005.
• Symbol Version (Phiên
bản ký hiệu): sử dụng phiên bản QR Code nhỏ nhất chứa được dữ liệu.
• Data Masking (Áp mặt
nạ dữ liệu): thực hiện Data Masking định nghĩa nêu tại [ISO 18004].
• Orientation and
Reflectance: sử dụng quy ước Orientation and Reflectance thông thường.
5.3.
Đầu đọc QR Code khách hàng
Mục này đề cập đến
những yêu cầu để đầu đọc QR Code khách hàng phải tuân theo để đọc được
một QR Code khách hàng theo chuẩn. Hướng dẫn này sử dụng thuật ngữ
“Đầu đọc QR Code” để chỉ máy quét quang học được sử dụng để đọc và xử
lý QR Code khách hàng,
Để đọc QR Code, Đầu
đọc QR Code khách hàng phải có khả năng đọc các QR Code như được định
nghĩa trong [ISO 18004] bao gồm ECI mặc định, tức là [ISO 8859-1].
Đầu đọc có thể hỗ
trợ các tính năng [ISO 18004] sau:
• Micro QR Code/ Vi
mã QR
• Structured Append/ Kết
nối có cấu trúc
• ECIs other than the
default ECI/ ECI ngoài ECI mặc định
• Mirror
Imaging/Orientation/ Hình phản chiếu
• Reflectance
Reversal/ Sự đảo chiều của hệ số phản xạ
Đầu đọc QR Code phải
hỗ trợ khôi phục ít nhất 512 byte từ QR Code. Đầu đọc QR Code có thể hỗ trợ
khôi phục nhiều hơn 512 byte.
QR Code đọc bởi Đầu
đọc QR Code khách hàng là chuỗi dữ liệu trên QR Code được mã hóa base64
và phải được gửi tới Hệ thống xử lý giao dịch QR Code khách hàng.
Ghi chú: tất cả các
yêu cầu khác về Đầu đọc QR Code và phần cứng của merchant nằm ngoài phạm vi của
hướng dẫn này. Phản hồi của Đầu đọc QR Code với bất kỳ lỗi nào xảy ra trong quá
trình xử lý nằm ngoài phạm vi của hướng dẫn này.
5.4.
Thông tin bổ sung
Ví dụ minh họa về QR
Code hiển thị từ phía khách hàng
Ví dụ này cung cấp
các ví dụ về chuyển đổi từ dữ liệu gốc thành QR Code khách hàng như
đã nêu trong hướng dẫn này.
Ghi chú: giá trị
của đối tượng dữ liệu được cung cấp trong ví dụ dưới đây chỉ nhằm mục
đích minh họa cho mỗi đối tượng dữ liệu.
Bước 1: Dữ liệu
gốc theo từng tag như sau:
Tag 85 CPV01
Tag 61
Tag 4F
970000
Tag 50
BankName
Tag 63
Tag 57 0D 123 D 4873798800(Time inteval) F
Tag 9F24 09812345670000000000000000000
Tag 9F19 0981234567
Tag 62
Tag 5F20
Nguyen Van A
Tag 5F2D
vi
Tag 9F08
1.0.0
Tag 5F50
Trống dữ liệu
|
Bước 2: Chuyển dữ
liệu thu thập được từ bước 1 thành dữ liệu nhị phân (hiện thị dưới
dạng hex bytes)
85 05 4350563031
61 55
4F 06
393730303030
50 08
42616E6B4E616D65
63 41
57 12
304444313233443438373337393838303046
9F24 1D
3039383132333435363730303030303030303030303030303030303030
9F19 0A
30393831323334353637
62 1F
5F20 0C 4E677579656E2056616E2041
5F2D 02 7669
9F08 05
312E302E30
5F5000
|
Bước 3: Chuyển đổi
dữ liệu nhị phân (binary data) tại bước 2 trên sang chuỗi mã hóa base64.
hQVDUFYwMWFVTwY5NzAwMDBQCEJhbmtOYW1lY0FXEjBERDEyM
0Q0ODczNzk4ODAwRp8kHTA5ODEyMzQ1NjcwMDAwMDAwMDAwMD
AwMDAwMDAwnxkKMDk4MTIzNDU2N2IfXyAMTmd1eWVuIFZhbiBBX
y0CdmmfCAUxLjAuMF9QAA==
|
Bước 4: Chuyển đổi
chuỗi dữ liệu base64 tại bước 3 bên trên sang QR Code.