Skip to content

PRD: Màn chọn món

ModuleSale (CORE-07)PRD IDPRD-PCK-001
Trạng tháiPlannedOwnerHải Cao · Khoa Nguyễn · Phát Nguyễn
Ngày2026-06-11Phiên bảnv0.1 (draft)
Packages@nx/commerce · apps/sale-rendererURDPCK
EpicBANA-1326Khung thời gianTháng 6/2026 (Theo tháng)

TL;DR

Thu ngân chọn bất kỳ món nào trong tối đa 3 chạm. Options của sản phẩm (size, đá, đường…) resolve về đúng một ProductVariant với giá cập nhật trực tiếp; món 1-variant bỏ qua bước chọn. Phía sau là API ma trận variant - POS không còn phải đoán từ danh sách variant phẳng.

1. Bối cảnh & Vấn đề

POS hôm nay liệt kê variant phẳng - mỗi size/màu là một dòng riêng. Không có bước resolve Options→Variant, không có API ma trận: chọn đúng variant của món nhiều option vừa chậm vừa dễ sai, modal add-on/bundle chỉ phủ một phần. Chọn món là thao tác lặp nhiều nhất tại quầy - mỗi chạm thừa bị trả giá hàng nghìn lần mỗi ngày.

2. Mục tiêu & Loại trừ

Mục tiêu - ≤3 chạm cho mọi món (URD-PCK-001) · options resolve về đúng một variant (002) · món 1-variant bỏ chooser (003) · giá live (004) · tổ hợp sai không chọn được (005) · mặc định hợp lý (006) · quét barcode bỏ qua picker (007).

Loại trừ - công cụ dọn dữ liệu catalog (việc riêng) · chế độ quầy bán lẻ (PRD-RTL-001) · thiết kế lại bundle/combo.

3. Thước đo thành công

Thước đoMục tiêu
Số chạm cho món có option≤3 (đo trên menu thật)
Chọn nhầm món do nhân viên pilot báoGần như 0

4. Persona & Tình huống

Thu ngân/phục vụ giờ cao điểm: cần đúng variant thật nhanh, không đọc danh sách dài.

5. User Story

  • Là thu ngân, tôi chạm món trà sữa, chọn size Lít đá - đúng variant đúng giá vào giỏ, 3 chạm.
  • Là thu ngân, tôi chạm chai nước suối và nó vào giỏ ngay.

6. Yêu cầu chức năng

Giao URD PCK URD-PCK-001…007 (Must 001-004; Should 005-007).

7. Yêu cầu phi chức năng

  • Picker mở và resolve tức thì trên phần cứng POS hiện có; không làm chậm tìm kiếm/quét.

8. UX & Luồng

Thiết kế trước: chip option (size/đá/đường) chọn sẵn mặc định, giá nhảy theo lựa chọn, ảnh + tên luôn hiển thị. Một chạm xác nhận là vào giỏ.

  1. Chạm món → sheet option (mặc định sẵn) → xác nhận → giỏ.
  2. Món 1-variant → vào giỏ thẳng.
  3. Quét barcode → vào giỏ thẳng (không qua picker).

9. Dữ liệu & Miền nghiệp vụ

  • API ma trận variant mới phía commerce: tổ hợp option → variantId, giá, tồn theo kênh; tổ hợp sai bị loại từ server.
  • Không đổi schema - variant và option đã có; thiếu là API resolve + UI.

10. Phụ thuộc & Giả định

Phụ thuộcVì sao
Nhập liệu Options/Variants sạch (form client)Chất lượng picker = chất lượng dữ liệu catalog
Thiết kế (T6)Chặn build

11. Rủi ro & Câu hỏi mở

  • Menu cũ dữ liệu bẩn có thể resolve kém → cần audit dữ liệu merchant pilot.
  • Số chiều option tối đa hỗ trợ trong v1 (đề xuất: 3).

12. Kế hoạch phát hành & Tiêu chí

Build tháng 6 (WK24-26) · ship trong màn bán hiện tại. Ra mắt: AC-PCK-01 pass trên menu merchant thật; không chậm hơn hiện tại.

13. FAQ

  • Có thay modal bundle không? Không - bundle/add-on giữ nguyên; đây là fix resolve variant cho món đơn.

Tham chiếu

URD PCK · Giai đoạn 2 - Theo tháng · Epic BANA-1326

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.