Giao diện
Impact Matrix — LMS Nâng cấp Thanh toán Online ​
Version: v0.1-20260115 Project: 2026-LMS-Nang-cap-thanh-toan Prepared by: BA Team Status: Draft
1. Summary ​
Nâng cấp LMS để hỗ trợ thanh toán online (VNPay, MoMo) thay thế luồng xác nhận thủ công. Ảnh hưởng đến payment flow, module tài chính, báo cáo kế toán, và phân quyền Accountant.
2. Impact Matrix ​
Severity Definition ​
| Severity | Khi nào dùng |
|---|---|
| High | Core flow, data integrity, compliance, integration, release risk |
| Medium | Secondary flow, report, permission, vận hành |
| Low | UI/content/minor behavior không ảnh hưởng core |
Impact Table ​
| # | Area | Impact | Severity | Owner | Dependency | Notes |
|---|---|---|---|---|---|---|
| 1 | Business Process | Thêm bước thanh toán online sau khi user xác nhận học phí. Luồng cũ xác nhận thủ công vẫn giữ làm fallback. | High | BA | Payment Gateway | Cần cập nhật process guide. |
| 2 | Module / Function | Payment module cần tạo payment request, nhận callback, và cập nhật trạng thái đơn. | High | Tech Lead | VNPay/MoMo API | Phụ thuộc SLA gateway. |
| 3 | Screen / UI | Màn hình "Xác nhận học phí" thêm nút "Thanh toán online". Thêm trang kết quả thanh toán (success/fail). | Medium | FE Dev | Figma mockup | TODO: add screenshot. |
| 4 | Data Model / Migration | Bảng payments thêm cột transaction_id, payment_method, gateway_status. Migration cần test rollback. | High | Tech Lead | DB Migration | Cần xác nhận kiểu dữ liệu với Accountant. |
| 5 | API / Integration / Job | Tích hợp webhook callback từ VNPay và MoMo. Cần job kiểm tra trạng thái timeout. | High | Tech Lead | VNPay, MoMo | Cần sandbox test trước go-live. |
| 6 | Role / Permission | Accountant cần quyền xem danh sách giao dịch online, không có quyền chỉnh sửa. | Medium | PO | — | Xác nhận với Accountant lead. |
| 7 | Business Rule | Đơn hàng quá hạn thanh toán (>30 phút) tự động hủy. Refund theo chính sách gateway. | High | BA | Policy doc | Chính sách refund chưa có văn bản chính thức. |
| 8 | NFR / Constraint | Thời gian phản hồi callback ≤3s. Hệ thống phải idempotent với duplicate callback. | High | Tech Lead | — | Cần load test. |
| 9 | Notification / Email / Task | Gửi email xác nhận sau khi thanh toán thành công. Gửi email thông báo nếu thanh toán thất bại. | Medium | BA | Email service | Template email cần PO duyệt. |
| 10 | Reporting / Analytics | Báo cáo kế toán thêm cột transaction_id, payment_method, gateway_status. | Medium | Accountant | — | Xác nhận format xuất Excel. |
| 11 | Test / Regression | Test end-to-end luồng thanh toán (success, fail, timeout, duplicate callback). Regression luồng cũ. | High | QA | Sandbox gateway | Cần tài khoản sandbox VNPay/MoMo. |
| 12 | Release / Deployment / Training | Feature flag cho phép bật/tắt thanh toán online theo BU. Training Accountant và CS trước go-live. | Medium | PO | Ops | Lên kế hoạch rollout theo giai đoạn. |
3. Risk Summary ​
| Risk | Severity | Mitigation |
|---|---|---|
| Gateway downtime làm gián đoạn thanh toán | High | Giữ luồng thủ công làm fallback; monitor gateway SLA. |
| Duplicate callback gây ghi sai trạng thái đơn | High | Implement idempotency key; unit test + integration test. |
| Chính sách refund chưa được phê duyệt | Medium | Block go-live cho đến khi có văn bản chính thức. |
| Báo cáo kế toán sai format | Low | Demo báo cáo mẫu với Accountant trước sprint cuối. |
4. Open Questions ​
| # | Question | Owner | Due | Status |
|---|---|---|---|---|
| 1 | Chính sách refund chính thức là gì? Ai phê duyệt? | PO | 2026-01-20 | Open |
| 2 | Thời gian timeout đơn hàng là 30 phút hay có thể cấu hình? | BA + Tech Lead | 2026-01-18 | Open |
| 3 | Cần tích hợp cả VNPay và MoMo trong v1 hay chỉ một cổng? | PO | 2026-01-15 | Open |
5. References ​
- BRD / Requirement:
ba/projects/2026-LMS-Nang-cap-thanh-toan/docs/brd-v0.1.md - Project Context:
ba/projects/2026-LMS-Nang-cap-thanh-toan/project-context.md - Project Decisions:
ba/projects/2026-LMS-Nang-cap-thanh-toan/project-decisions.md - Related KB:
ba/knowledge-base/sapp/LMS-Pro/README.md - Related system sources (mind_keep, chỉ đọc):
shared/api-docs/<domain>.md·be/libs/database/src/lib/entities/<entity>· mànfe/app/.../app/lib/screens/...