Mô hình kết nối Bkav Webservice
Dành cho eHoadon
- Tổng quan
- Mô tả
Là cổng thông tin tiếp nhận yêu cầu của đối tác (Partner) để trao đồi các thông tin liên quan đến Hóa đơn trên trang ehoadon.vn (Tạo, cập nhật, lấy trạng thái, thông tin chi tiết, lịch sử xử lý…) sử dụng giao thức SOAP (Simple Object Accesss Protocol).
- Khái niệm
- Mô hình
- Bkav eHoadon (https://van.ehoadon.vn): Hệ thống quản lý Hoá đơn Điện tử của Bkav.
- Bkav eHoadon demo (https://demo.ehoadon.vn): Hệ thống Hoá đơn Điện tử demo phục vụ cho việc demo và test các tính năng. Hoá đơn trên hệ thống demo không có giá trị pháp lý.
- Webservice URL: Địa chỉ Website cho phép Client kết nối tới Bkav eHoadon để gọi dịch vụ Web Service.
- Bkav eHoadon: https://wsdemo.ehoadon.vn/WSPublicEhoadon.asmx
- Bkav eHoadon demo: https://ws.ehoadon.vn/WSPublicEhoadon.asmx
- PartnerGUID: GUID định danh riêng. Bkav cung cấp mỗi Partner một PartnerGUID riêng.
- PartnerToken: Để mã hóa dữ liệu (trên đường truyền). Bkav cung cấp mỗi Partner một Token riêng.
- Tài khoản eHoadon: Là tài khoản của khách hàng sử dụng dịch vụ eHoadon của Bkav trên hệ thống van.ehoadon.vn. Để có thể kết nối thành công đến ws.ehoadon.vn Partner phải có tài khoản trên hệ thống van.ehoadon.vn, đã được thiết lập Mẫu hóa đơn, Dải số thông báo phát hành hóa đơn.
- Tài khoản eHoadon demo: Là tài khoản của khách hàng sử dụng dịch vụ eHoadon demo của Bkav trên hệ thống demo.ehoadon.vn. Để có thể kết nối thành công đến wsdemo.ehoadon.vn, Partner phải có tài khoản trên hệ thống demo.ehoadon.vn, đã được thiết lập Mẫu hóa đơn, Dải số thông báo phát hành hóa đơn.
- PartnerInvoiceID/PartnerInvoiceStringID: Mã định danh duy nhất cho 1 Hoá đơn tại Client - phục vụ cho việc check trùng khi gửi dữ liệu lên Bkav. Client chỉ gán thông tin vào 1 trong 2 trường khi gửi dữ liệu Hoá đơn lên Bkav.
- InvoiceGUID: Là GUID định danh Hoá đơn trên hệ thống Bkav eHoadon, được ghi trong kết quả trả về client khi tạo Hoá đơn thành công.
- MTC: Mã tra cứu để tìm kiếm Hoá đơn tại địa chỉ: http://tracuu.ehoadon.vn/ (đối với hệ thống eHoadon), http://demo.ehoadon.vn/mtc (đối với hệ thống demo eHoadon).
- Client khởi tạo object CommandData, truyền Mã lệnh và object chứa tham số đầu vào (ứng với từng Mã lệnh) lên Webservice. Object CommandData được
- Convert sang string (json/xml).
- Zip lại sang mảng byte.
- Mã hóa AES - 256 base64 sử dụng thuật toán AES (có key và Token) .
- Endcode ToBase64 string trước khi được gửi lên Webservice thông qua hàm ExecCommand.
- Webservice trả về 1 string encryptedResult. String này là object Result đã được thực hiện
- Decode Base64 to bytes.
- Giải mã thuật toán AES (theo key và Token).
- UnZip
- Convert To Object Result chứa 2 property: Status (là trạng thái xử lý command) và Object (là đối tượng chứa dữ liệu của kết quả trả về).