UI_Hoá đơn & Thuế
Giới thiệu & tài liệu liên quan
Đặc tả giao diện cho module Hoá đơn & Thuế (SYS-01). Xem thêm Tổng quan module · UC · SRS.
Quy tắc thiết lập một lần
Thiết lập tuân thủ (định danh thuế → nhóm thuế → hồ sơ & nhà cung cấp) là luồng onboarding một lần của Chủ sân; sau đó vận hành hằng ngày chỉ xoay quanh danh sách hoá đơn và màn phát hành.
Trạng thái ảnh chụp
Pickleball hiện chưa có ứng dụng/màn hình thật trong workspace nên các ảnh chụp dưới đây ⏳ chờ chụp thực tế. Các bảng hạng mục được mô tả từ năng lực đã chốt ở Tổng quan module và URD; cần cập nhật ảnh khi có môi trường dev.
1/ Danh sách màn hình
| Mã | Màn hình | Mô tả |
|---|---|---|
| MH1 | Định danh thuế người bán | Đăng ký MST, tên, địa chỉ; tra cứu tỉnh/phường VN |
| MH2 | Hồ sơ hoá đơn & nhà cung cấp | Kết nối nhà cung cấp T-VAN, cấu hình số/danh mục, định tuyến kênh |
| MH3 | Nhóm thuế | Mẫu quy tắc thuế áp lên sân / FNB / dụng cụ |
| MH4 | Danh sách & chi tiết hoá đơn | Danh sách kèm trạng thái + mã CQT; chi tiết & dấu vết kiểm toán |
| MH5 | Phát hành & thông tin người mua | Thu thông tin người mua, chọn loại hoá đơn, phát hành tại quầy |
| MH6 | Điều chỉnh / Huỷ hoá đơn | Điều chỉnh/thay thế bằng dòng hàng mới hoặc huỷ kèm lý do |
| MH7 | Trang khách tự yêu cầu (QR) | Người chơi nhập thông tin người mua để tự nhận hoá đơn |
2/ Luồng di chuyển màn hình
3/ Mô tả màn hình
MH1 — Định danh thuế người bán ⏳ chờ chụp thực tế
Form đăng ký người bán: MST, tên doanh nghiệp, địa chỉ; ô tra cứu tỉnh/phường hành chính và nút tiếp tục.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Mã số thuế (MST) | Textbox | Text | Có | ≤ 14 | Ràng buộc: đúng định dạng MST Việt Nam |
| 2 | Tên doanh nghiệp | Textbox | Text | Có | ≤ 255 | Ràng buộc: không để trống; in làm người bán |
| 3 | Địa chỉ | Textbox | Text | Có | ≤ 255 | Ràng buộc: không để trống |
| 4 | Tỉnh / Phường / Đơn vị | List | Select | Có | - | Hành vi: tra cứu danh mục hành chính VN |
| 5 | Nút Tiếp tục | Button | Click | - | - | Hành vi: kiểm tra hợp lệ rồi sang MH3 |
MH2 — Hồ sơ hoá đơn & nhà cung cấp ⏳ chờ chụp thực tế
Khối chọn nhà cung cấp T-VAN + nhập thông tin xác thực; khối cấu hình số/danh mục/chính sách; bảng định tuyến kênh bán tới cấu hình.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Nhà cung cấp T-VAN | List | Select | Có | - | Hành vi: chọn VNPT / Viettel / MISA |
| 2 | Thông tin xác thực | Textbox | Text | Có | - | Ràng buộc: lưu ở dạng mã hoá |
| 3 | Số & danh mục hoá đơn | Textbox | Text | Có | - | Mục đích: cấu hình theo từng loại hoá đơn |
| 4 | Chính sách thử lại | Textbox (số) | Text | Có | - | Mục đích: số lần tối đa + lịch trễ khi thất bại |
| 5 | Định tuyến kênh bán | List | Select | Có | - | Hành vi: ánh xạ đơn sân / đơn bán hàng tới cấu hình |
| 6 | Chia sẻ hồ sơ chi nhánh | List | Select | Không | - | Hành vi: riêng tư / mọi chi nhánh / whitelist |
| 7 | Nút Lưu thiết lập | Button | Click | - | - | Hành vi: kiểm tra kết nối, mã hoá & lưu hồ sơ |
MH3 — Nhóm thuế ⏳ chờ chụp thực tế
Danh sách mẫu nhóm thuế; mỗi nhóm có điều kiện khớp + thuế suất; gán nhóm cho sản phẩm/dịch vụ.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Tên nhóm thuế | Textbox | Text | Có | ≤ 120 | Ràng buộc: không để trống |
| 2 | Thuế suất | Textbox (số) | Text | Có | - | Mục đích: ví dụ 8% VAT |
| 3 | Điều kiện khớp sản phẩm | List | Select | Có | - | Hành vi: chọn loại áp dụng (sân / FNB / dụng cụ) |
| 4 | Gán nhóm cho sản phẩm | Checkbox | Check | - | - | Hành vi: áp nhóm thuế lên sản phẩm khớp |
| 5 | Nút Lưu nhóm thuế | Button | Click | - | - | Hành vi: lưu mẫu, điều hoà thuế đã áp |
MH4 — Danh sách & chi tiết hoá đơn ⏳ chờ chụp thực tế
Bảng danh sách hoá đơn có bộ lọc và cột trạng thái + mã CQT; panel chi tiết hiển thị dòng hàng, dấu vết kiểm toán và các nút thao tác.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Bộ lọc / tìm kiếm | Textbox | Text | Không | - | Hành vi: lọc theo số / ngày / tên người mua / trạng thái |
| 2 | Bảng hoá đơn | List | Click | - | - | Mục đích: mở chi tiết một hoá đơn |
| 3 | Badge trạng thái | Label | ReadOnly | - | - | Mục đích: chờ / đang xử lý / thành công / thất bại / đã huỷ |
| 4 | Mã cơ quan thuế | Label | ReadOnly | - | - | Mục đích: hiển thị số hoá đơn + mã CQT |
| 5 | Dấu vết kiểm toán | List | ReadOnly | - | - | Mục đích: liệt kê mọi sự kiện của hoá đơn |
| 6 | Nút In / chia sẻ | Button | Click | - | - | Hành vi: gửi link / PDF cho khách |
| 7 | Nút Xuất hoá đơn | Button | Click | - | - | Hành vi: mở MH5 |
| 8 | Nút Điều chỉnh / Huỷ | Button | Click | - | - | Hành vi: mở MH6 (chỉ với hoá đơn đã phát hành) |
MH5 — Phát hành & thông tin người mua ⏳ chờ chụp thực tế
Form thu thông tin người mua (cá nhân / công ty), chọn loại hoá đơn, nút phát hành; vùng thông báo lỗi & nút thử lại khi nhà cung cấp lỗi.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Loại hoá đơn | List | Select | Có | - | Hành vi: cá nhân / VAT công ty |
| 2 | Tên người mua | Textbox | Text | Có | ≤ 255 | Ràng buộc: không để trống |
| 3 | MST người mua | Textbox | Text | Có khi VAT công ty | ≤ 14 | Ràng buộc: bắt buộc với hoá đơn công ty |
| 4 | Địa chỉ người mua | Textbox | Text | Không | ≤ 255 | Mục đích: in trên hoá đơn |
| 5 | Email người mua | Textbox | Text | Có | ≤ 255 | Mục đích: giao hoá đơn qua email |
| 6 | Cảnh báo lỗi phát hành | Alert | ReadOnly | - | - | Hành vi: hiển thị lỗi nhà cung cấp, cho thử lại |
| 7 | Nút Phát hành | Button | Click | - | - | Hành vi: ký số & phát hành qua nhà cung cấp |
MH6 — Điều chỉnh / Huỷ hoá đơn ⏳ chờ chụp thực tế
Hai chế độ: điều chỉnh/thay thế (nhập dòng hàng + mô tả mới) hoặc huỷ (lý do bắt buộc); hiển thị liên kết về hoá đơn gốc.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Chọn thao tác | List | Select | Có | - | Hành vi: Điều chỉnh / Thay thế / Huỷ |
| 2 | Dòng hàng sửa | List | Text/Select | Có khi điều chỉnh | - | Mục đích: dòng hàng và tổng riêng của bản sửa |
| 3 | Mô tả điều chỉnh | Textbox | Text | Có khi điều chỉnh | ≤ 255 | Mục đích: ghi rõ nội dung sửa |
| 4 | Lý do huỷ | Textbox | Text | Có khi huỷ | ≤ 255 | Ràng buộc: bắt buộc nhập khi huỷ |
| 5 | Liên kết hoá đơn gốc | Label | ReadOnly | - | - | Mục đích: bản sửa luôn trỏ về hoá đơn gốc |
| 6 | Nút Xác nhận | Button | Click | - | - | Hành vi: phát hành bản sửa / xác nhận huỷ |
MH7 — Trang khách tự yêu cầu (QR) ⏳ chờ chụp thực tế
Trang web mở từ QR receipt: kiểm tra token/thời hạn rồi cho người chơi nhập thông tin người mua và gửi.
| STT | Hạng mục | Kiểu hiển thị | Kiểu thao tác | Bắt buộc | Độ dài | Mô tả |
|---|---|---|---|---|---|---|
| 1 | Trạng thái yêu cầu | Label | ReadOnly | - | - | Mục đích: còn hạn / đã hết hạn |
| 2 | Tên người mua | Textbox | Text | Có | ≤ 255 | Ràng buộc: không để trống |
| 3 | MST | Textbox | Text | Không | ≤ 14 | Mục đích: cho hoá đơn công ty |
| 4 | Địa chỉ | Textbox | Text | Không | ≤ 255 | Mục đích: in trên hoá đơn |
| 5 | Textbox | Text | Có | ≤ 255 | Mục đích: nhận hoá đơn qua email | |
| 6 | Nút Gửi thông tin | Button | Click | - | - | Hành vi: phát hành hoá đơn với thông tin người mua |