K+ Ngân hàng số — Dịch vụ Backend
Hệ sinh thái ngân hàng số bán lẻ — KienlongBank

Tổng quan
K+ là hệ sinh thái ngân hàng số bán lẻ của KienlongBank, nơi tôi làm backend developer trên 3 dịch vụ lõi (aje-cms-mvc, ssf-mb-profile, myshop) trải rộng 3 mảng nghiệp vụ: liên kết tài khoản Hộ Kinh Doanh (HKD) với quy trình maker-checker, tích hợp đối tác HILO cho hóa đơn điện tử, và báo cáo đối soát IBFT/NAPAS. Công việc tuân thủ kiến trúc CQRS trọn vẹn — từ entity, repository tới service, handler và controller — kết hợp đồng bộ hướng sự kiện và bài toán migration dữ liệu CMS → Profile.
Vấn đề & Thách thức
Làm việc trong một hệ thống ngân hàng đã vận hành nghĩa là dữ liệu nằm không đúng chỗ và tích hợp đối tác phải không làm chậm luồng nghiệp vụ chính. Ba bài toán nổi bật: chuyển liên kết tổ chức từ CMS cũ sang service Profile chuyên dụng mà không làm vỡ luồng maker-checker, đồng bộ dữ liệu shop/nhân viên/gói dịch vụ sang đối tác hóa đơn điện tử HILO một cách tin cậy sau khi transaction commit, và xuất báo cáo IBFT/NAPAS ở quy mô lớn (tới 100.000 bản ghi) kèm bảo vệ file bằng password và watermark.
Giaodiện
Quy trình thực hiện
Liên kết Tổ chức & Migration (CMS → Profile)
Xây dựng trọn bộ CRUD CQRS cho liên kết tài khoản tổ chức (CreateUserOrgInfoHandler, GetDetail, UpdateStatus, lịch sử liên kết) với state machine 9 trạng thái và quy trình maker-checker, sau đó dẫn dắt việc chuyển nơi lưu trữ từ CMS cũ sang service ssf-mb-profile — thiết kế schema (UserOrganizationInfo, UserOrganizationAccount, UserOrgUpdateInfo), mở API ghi cho các cập nhật đã phê duyệt, và tích hợp CoreBank (FlexCube) để validate và bổ sung dữ liệu.
Tích hợp Đối tác HILO (Đồng bộ Hướng sự kiện)
Thiết kế cơ chế đồng bộ tách rời bằng Spring Events (@Async + @TransactionalEventListener(AFTER_COMMIT)) để thay đổi shop, nhân viên và gói dịch vụ chỉ đồng bộ sang đối tác hóa đơn điện tử HILO sau khi transaction commit, kèm log trace thành công/thất bại. Chuyển 9 handler sang API mới của HILO, bổ sung tính VAT và kiểm tra thông tin hóa đơn, đồng thời giữ thiết kế mở để thêm đối tác mới mà không đụng tới handler lõi.
Báo cáo & Xuất file IBFT/NAPAS
Xây dựng 8 API xuất Excel (báo nợ, báo có, sao chép, tra cứu, hoàn trả, tra soát, đối soát, tra cứu đơn lẻ) ánh xạ tới Oracle procedure (PKG_NAPAS_INVESTIGATION, PKG_NAPAS_QUERY) qua ODS. Áp dụng pipeline Template Method (validate → build → fetch với phân trang 2.000 bản ghi và giới hạn 100.000 bản ghi → export → audit log) và bảo vệ file bằng password cùng watermark qua ExcelSecurityUtil.