Test Cases: Thuế & Hóa đơn
| Module | CORE-10 | URD | Thuế & Hóa đơn URD |
|---|
1. Tóm tắt độ phủ
| Khu vực | Yêu cầu URD | Test case | Đã phủ |
|---|---|---|---|
Định danh thuế (TAX) | 3 | 4 | ✅ |
Nhóm thuế (GRP) | 4 | 4 | ✅ |
Cấu hình hóa đơn (CFG) | 7 | 7 | ✅ |
Vòng đời hóa đơn (INV) | 9 | 10 | ✅ |
Yêu cầu hóa đơn & Yêu cầu của người mua (REQ) | 5 | 5 | ✅ |
Chế độ phát hành (MOD) | 4 | 4 | ✅ |
Mọi yêu cầu Must đều được phủ. Các kỳ vọng phụ thuộc nhà cung cấp (phát hành, nộp lên cơ quan thuế, webhook) được kiểm thử trên bộ nhà cung cấp hiện tại — VNPAY / VNIS qua iiapi cộng T-VAN.
2. Test Cases
TC-<AREA>-NNNkhớp vớiURD-<AREA>-NNN. Ưu tiên = P1 (nghiêm trọng) / P2 (lớn) / P3 (nhỏ).
2.1 Định danh thuế (TAX)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-TAX-001 | URD-TAX-001 | Đăng ký định danh thuế người bán | 1. Chủ mở cài đặt thuế. 2. Nhập MST, tên doanh nghiệp, địa chỉ. | Định danh thuế được lưu và dùng làm người bán trên hóa đơn đã phát hành | P1 |
| TC-TAX-002 | URD-TAX-002 | Tra cứu địa chỉ VN | 1. Chủ nhập một địa chỉ. 2. Chọn tỉnh rồi phường. | Tùy chọn tỉnh / phường / đơn vị tải lên và lựa chọn được lưu | P2 |
| TC-TAX-003 | URD-TAX-003 | Từ chối mã số thuế sai định dạng | 1. Chủ nhập mã số thuế có chữ cái hoặc sai độ dài. | Mã số thuế bị từ chối với lỗi định dạng rõ ràng | P2 |
| TC-TAX-004 | URD-TAX-003 | Chấp nhận mã số thuế hợp lệ có số 0 đầu | 1. Chủ nhập một mã số thuế hợp lệ bắt đầu bằng số 0. | Mã được chấp nhận và các số 0 đầu được giữ nguyên | P3 |
2.2 Nhóm thuế (GRP)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-GRP-001 | URD-GRP-001 | Định nghĩa một nhóm thuế | 1. Chủ tạo một nhóm thuế với các mục quy tắc của nó. | Nhóm thuế được lưu và sẵn sàng để áp | P1 |
| TC-GRP-002 | URD-GRP-002 | Cấp thuế lên sản phẩm | 1. Một nhóm thuế khớp một sản phẩm. 2. Sản phẩm được tạo/cập nhật. | Đúng thuế được áp lên sản phẩm khớp | P1 |
| TC-GRP-003 | URD-GRP-003 | Điều hòa khi gỡ sản phẩm | 1. Một sản phẩm có thuế đã áp bị gỡ. | Thuế đã áp của nó được điều hòa đi; không còn thuế mồ côi | P2 |
| TC-GRP-004 | URD-GRP-004 | Chặn phương pháp thuế không tương thích | 1. Chủ áp một nhóm thuế có phương pháp xung đột với của merchant. | Nhóm bị từ chối với thông báo không-tương-thích phương pháp | P2 |
2.3 Cấu hình hóa đơn (CFG)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-CFG-001 | URD-CFG-001 | Tạo hồ sơ hóa đơn | 1. Chủ tạo một hồ sơ hóa đơn merchant liên kết với định danh thuế. | Hồ sơ được lưu và hoạt động cho merchant | P1 |
| TC-CFG-002 | URD-CFG-002 | Kết nối nhà cung cấp với thông tin xác thực mã hóa | 1. Chủ nhập thông tin xác thực nhà cung cấp và lưu. | Thông tin xác thực được lưu mã hóa; kết nối nhà cung cấp dùng được | P1 |
| TC-CFG-003 | URD-CFG-003 | Cấu hình chính sách loại hóa đơn | 1. Chủ đặt số, danh mục, phương pháp thuế, và chế độ phát hành theo từng loại hóa đơn. | Cấu hình được lưu và áp cho phát hành tương lai | P1 |
| TC-CFG-004 | URD-CFG-004 | Định tuyến một kênh bán | 1. Chủ ánh xạ một kênh bán tới một cấu hình nhà cung cấp. | Kênh phát hành qua cấu hình đã ánh xạ | P1 |
| TC-CFG-005 | URD-CFG-005 | Từ chối ánh xạ hoạt động thứ hai | 1. Một kênh đã có ánh xạ hoạt động. 2. Chủ thêm một ánh xạ hoạt động khác. | Ánh xạ hoạt động trùng bị từ chối (một hoạt động cho mỗi kênh) | P2 |
| TC-CFG-006 | URD-CFG-006 | Chia sẻ hồ sơ cho nhiều chi nhánh | 1. Chủ đặt chia sẻ thành mọi-chi-nhánh / whitelist. | Các merchant chi nhánh đã tham gia có thể dùng hồ sơ chia sẻ | P2 |
| TC-CFG-007 | URD-CFG-007 | Onboarding có hướng dẫn | 1. Chủ chạy wizard onboarding đầu đến cuối. | Nhà cung cấp được cấu hình và sẵn sàng phát hành ở cuối | P3 |
2.4 Vòng đời hóa đơn (INV)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-INV-001 | URD-INV-001 | Vào hàng đợi khi thanh toán thành công | 1. Một thanh toán cho một đơn thành công. | Một hóa đơn được đưa vào hàng đợi phát hành | P1 |
| TC-INV-002 | URD-INV-002 | Phát hành thành công | 1. Một hóa đơn trong hàng đợi được nhà cung cấp xử lý. | Một số hóa đơn và mã cơ quan thuế được ghi nhận; trạng thái là success | P1 |
| TC-INV-003 | URD-INV-003 | Chuyển đổi trạng thái | 1. Theo dõi một hóa đơn từ trong-hàng-đợi tới đã-phát-hành. | Trạng thái đi pending → processing → success không bỏ qua trạng thái | P1 |
| TC-INV-004 | URD-INV-004 | Thử lại khi nhà cung cấp thất bại | 1. Nhà cung cấp trả lỗi khi phát hành. | Một lần thử lại được lên lịch theo chính sách đã cấu hình | P1 |
| TC-INV-005 | URD-INV-004 | Thất bại sau số lần thử tối đa | 1. Mọi lần thử lại thất bại đến mức tối đa đã cấu hình. | Trạng thái thành failed và thất bại nằm trong dấu vết kiểm toán | P2 |
| TC-INV-006 | URD-INV-005 | Nộp lên cơ quan thuế | 1. Nộp được bật. 2. Một hóa đơn được phát hành. | Hóa đơn được nộp lên CQT qua T-VAN và trạng thái phản hồi của nó được theo dõi | P1 |
| TC-INV-007 | URD-INV-005 | Ghi nhận từ chối của cơ quan thuế | 1. CQT từ chối một hóa đơn đã nộp. | Lý do từ chối được ghi nhận với hóa đơn | P2 |
| TC-INV-008 | URD-INV-006 | Dấu vết kiểm toán bất biến | 1. Một hóa đơn trải qua vài thay đổi trạng thái. | Mỗi sự kiện được ghi nhận; các mục hiện có không thể bị sửa | P1 |
| TC-INV-009 | URD-INV-007, URD-INV-008 | Điều chỉnh / hủy hóa đơn đã phát hành | 1. Chủ điều chỉnh rồi hủy một hóa đơn đã phát hành kèm lý do. | Một bản điều chỉnh liên kết tới bản gốc; việc hủy ghi nhận lý do của nó | P2 |
| TC-INV-010 | URD-INV-009 | Từ chối webhook không ký | 1. Một webhook đầu vào của nhà cung cấp đến với chữ ký không hợp lệ. | Webhook bị từ chối; không thay đổi trạng thái nào được áp | P2 |
2.5 Yêu cầu hóa đơn & Yêu cầu của người mua (REQ)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-REQ-001 | URD-REQ-001 | Thu thông tin người mua | 1. Thông tin người mua (tên, mã số thuế, địa chỉ, email) được nhập cho một hóa đơn. | Chi tiết người mua được lưu với yêu cầu hóa đơn | P1 |
| TC-REQ-002 | URD-REQ-002 | Luồng trực tiếp của thu ngân | 1. Thu ngân thu thông tin người mua tại quầy và phát hành. | Hóa đơn được phát hành với chi tiết người mua đã thu | P1 |
| TC-REQ-003 | URD-REQ-003 | Yêu cầu trước thời hạn | 1. Người mua quét QR biên lai trước thời hạn và gửi thông tin. | Hóa đơn được phát hành với chi tiết người mua đã gửi | P2 |
| TC-REQ-004 | URD-REQ-004 | Yêu cầu hết hạn | 1. Người mua mở link yêu cầu sau thời hạn. | Yêu cầu đã hết hạn và không hóa đơn nào được phát hành | P2 |
| TC-REQ-005 | URD-REQ-005 | Kênh giao | 1. Một hóa đơn / link yêu cầu được giao. | Nó được giao qua kênh đã cấu hình (QR biên lai, email, hoặc SMS) | P3 |
2.6 Chế độ phát hành (MOD)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-MOD-001 | URD-MOD-001 | Phát hành thời gian thực | 1. Một thanh toán thành công với chế độ thời-gian-thực đã cấu hình. | Hóa đơn được phát hành ngay lập tức | P1 |
| TC-MOD-002 | URD-MOD-002 | Phát hành thủ công | 1. Thu ngân kích hoạt phát hành cho một đơn theo yêu cầu. | Hóa đơn được phát hành khi thu ngân khởi tạo | P2 |
| TC-MOD-003 | URD-MOD-003 | Phát hành theo lô đã lên lịch | 1. Job đã lên lịch chạy với các hóa đơn đang chờ. | Lô được phát hành bởi job đã lên lịch | P2 |
| TC-MOD-004 | URD-MOD-004 | Phát hành tự phục vụ của người mua | 1. Người mua hoàn tất một yêu cầu QR. | Hóa đơn được phát hành qua đường tự-phục-vụ của người mua | P2 |
3. Truy vết
Mọi yêu cầu Must ánh xạ tới ≥1 test case. Không có khoảng trống.
| Yêu cầu URD | Test case | Trạng thái |
|---|---|---|
| URD-TAX-001 | TC-TAX-001 | ✅ Đã phủ |
| URD-TAX-002 | TC-TAX-002 | ✅ Đã phủ |
| URD-TAX-003 | TC-TAX-003, TC-TAX-004 | ✅ Đã phủ |
| URD-GRP-001 | TC-GRP-001 | ✅ Đã phủ |
| URD-GRP-002 | TC-GRP-002 | ✅ Đã phủ |
| URD-GRP-003 | TC-GRP-003 | ✅ Đã phủ |
| URD-GRP-004 | TC-GRP-004 | ✅ Đã phủ |
| URD-CFG-001 | TC-CFG-001 | ✅ Đã phủ |
| URD-CFG-002 | TC-CFG-002 | ✅ Đã phủ |
| URD-CFG-003 | TC-CFG-003 | ✅ Đã phủ |
| URD-CFG-004 | TC-CFG-004 | ✅ Đã phủ |
| URD-CFG-005 | TC-CFG-005 | ✅ Đã phủ |
| URD-CFG-006 | TC-CFG-006 | ✅ Đã phủ |
| URD-CFG-007 | TC-CFG-007 | ✅ Đã phủ |
| URD-INV-001 | TC-INV-001 | ✅ Đã phủ |
| URD-INV-002 | TC-INV-002 | ✅ Đã phủ |
| URD-INV-003 | TC-INV-003 | ✅ Đã phủ |
| URD-INV-004 | TC-INV-004, TC-INV-005 | ✅ Đã phủ |
| URD-INV-005 | TC-INV-006, TC-INV-007 | ✅ Đã phủ |
| URD-INV-006 | TC-INV-008 | ✅ Đã phủ |
| URD-INV-007 | TC-INV-009 | ✅ Đã phủ |
| URD-INV-008 | TC-INV-009 | ✅ Đã phủ |
| URD-INV-009 | TC-INV-010 | ✅ Đã phủ |
| URD-REQ-001 | TC-REQ-001 | ✅ Đã phủ |
| URD-REQ-002 | TC-REQ-002 | ✅ Đã phủ |
| URD-REQ-003 | TC-REQ-003 | ✅ Đã phủ |
| URD-REQ-004 | TC-REQ-004 | ✅ Đã phủ |
| URD-REQ-005 | TC-REQ-005 | ✅ Đã phủ |
| URD-MOD-001 | TC-MOD-001 | ✅ Đã phủ |
| URD-MOD-002 | TC-MOD-002 | ✅ Đã phủ |
| URD-MOD-003 | TC-MOD-003 | ✅ Đã phủ |
| URD-MOD-004 | TC-MOD-004 | ✅ Đã phủ |