Luồng nghiệp vụ
1. Tổng quan luồng nghiệp vụ

2. Tạo/Kích hoạt tài khoản, chứng thư số
Bước 1: Tạo/Kích hoạt tài khoản
- Đối với khách hàng Cá nhân
- Có thể sử dụng chức năng Tạo tài khoản/Kích hoạt tài khoản trên SDK để tự thực hiện
- Hoặc đối tác gọi API partner_init từ phía backend truyền đủ thông tin, sau đó gọi hàm createAccount trên SDK để mở màn hình Tạo/Kích hoạt tài khoản.
- Đối với khách hàng Cá nhân trong Doanh nghiệp hoặc Doanh nghiệp gửi thông tin cho đầu mối hỗ trợ của VNPT khởi tạo
Bước 2: Mua gói chứng thư số
- Nếu khách hàng chưa có chứng thư thì thực hiện chọn gói chứng thư sau đó eKYC, thanh toán, Ký hợp đồng sau đó thực hiện kích hoạt chứng thư
- Nếu chứng thư số được đầu mối hỗ trợ của VNPT khởi tạo thì khách hàng thực hiện bước 3
Bước 3: Nguời dùng thực hiện kích hoạt chứng thư số
- Khi kích hoạt chứng thư số thành công SDK sẽ trả lại thông tin: accessToken, credentialId, serial để đối tác tạo giao dịch Ký số
3. Ký số

Bước 1: Gọi hàm getAuthentication lấy thông tin chứng thư số hợp lệ gồm: accessToken, credentialId, serial
- Trường hợp người dùng có nhiều chứng thư đang hoạt động thì SDK tự hiện giao diện chọn chứng thư để ký số
- Lưu ý: Khi gọi hàm getAuthentication mà khách hàng chưa có tài khoản, chứng thư số SDK sẽ điều hướng sang các màn tương ứng. Người dùng tạo tài khoản, kích hoạt chứng thư số thành công SDK sẽ trả lại thông tin chứng thư để đối tác tạo giao dịch ký số
Bước 2: Từ phía Backend đối tác gọi API Ký số 769 truyền kèm thông tin chứng thư số để tạo giao dịch Ký số
Bước 3: Lấy tran_code từ response của API Ký số 769 truyền vào hàm getWaitingTransaction để mờ màn hình Xác nhận giao dịch Ký số
Đối tác tự gửi Notification về ứng dụng của mình để thông báo cho người dùng sau khi tạo giao dịch phía backend thành công, SDK VNPT SmartCA sẽ không gửi.
4. Thay đổi thiết bị/Kích hoạt lại chứng thư

- SDK sẽ yêu cầu thực hiện kích hoạt lại chứng thư số trong trường hợp:
- Người dùng xóa ứng dụng (người dùng Android)
- Chứng thư số được kích hoạt trên ứng dụng khác hoặc thiết bị khác.
- Khi kích hoạt lại thành công SDK trả thông tin chứng thư để tạo giao dịch Ký số.
5. Quản lý tài khoản:
Đối tác tạo 1 chức năng riêng trên ứng dụng của mình gọi hàm getMainInfo của SDK để người dùng sử dụng các chức năng như:
- Đăng nhập, Đăng xuất
- Quản lý chứng thư: Đổi thiết bị, quên mã PIN, kích hoạt lại, mua mới, gia hạn chứng thư, ...
- Xem Lịch sử giao dịch
- Đăng ký, thay đổi thông tin tài khoản
- Đổi/Quên mật khẩu
- ...
6. Tùy chỉnh SDK
SDK cho phép tùy chỉnh các tham số
-
Thông tin khách hàng/Người dùng
- customerId: Số CCCD, HC, MST
- customerPhone: Số điện thoại
- customerEmail: Email
- packageDefault: Gói mặc định hiển thị khi mua Chứng thư số, ví dụ PS0
- password: Mật khẩu mặc định khi tạo tài khoản
khi gọi hàm createAccount SDK sẽ tự điền các thông tin đó, không cho khách hàng chỉnh sửa, nếu để trống khách hàng tự nhập
-
Giao diện SDK
- borderRadiusBtn: bo góc của nút bấm, ví dụ: 999
- colorSecondBtn: Màu nền nút bấm phụ, ví dụ: #FFFFFF
- colorPrimaryBtn: Màu nền nút bấm chính, ví dụ: #4788FF
- featuresLink: Đường dẫn tới trang hướng dẫn sử dụng các tính năng sdk
- logoCustom: Logo của đối tác, mã hoá Base64 dạng "iVBORw0KGgoAAAANSUhEUgAAANgAAA......"
- backgroundLogin: Ảnh nền màn đăng nhập, mã hoá Base64 dạng "iVBORw0KGgoAAAANSUhEUgAAANgAAA......"