PrintUp Biz docs Yêu cầu & nghiệm thu P0
Baseline · brief v2026-09-16 (16/09/2026) 5d0302ef

E15. Cấu hình sản phẩm, báo giá tay, sản phẩm tiêu chuẩn

User stories của epic E15. Cấu hình sản phẩm, báo giá tay, sản phẩm tiêu chuẩn.

Nguồn: PRD Core Flow đặt hàng v0.4 (30/09/2026, cập nhật 01/10/2026). Người soạn: Hoàng Trọng Thanh Tùng (Product Manager PrintUp). Người duyệt: Nguyễn Hoàng Nam (CEO PrintUp). Mã BR-xx, QT-xx trong mục User stories là mã của PRD v0.4, khác mã cùng tên ở trang Trạng thái & quy tắc và danh mục FR lưu trữ.

Mỗi story mở đầu bằng câu “Là …, tôi muốn …, để …”. Story Must có dòng Liên kết và tiêu chí Cho – Khi – Thì; story Should/Could ở dạng ngắn. Mã S-xx, E-xx, ST-xx, TH-xx, CFG.xxx tra ở Dữ liệu & trạng thái, Copy, Email.

Thêm theo danh mục v1.1 (29/09/2026). Đánh số tiếp theo US-57 để không đổi mã các story cũ.

US-58 · KH cấu hình sản phẩm theo các bước (Must)

Là KH, tôi muốn cấu hình sản phẩm theo từng bước có sẵn giá trị mặc định, để không bỏ sót lựa chọn nào.

Liên kết: S-02 · config.step.*

  • Cho một loại sản phẩm, thì chỉ hiện tùy chọn cho phép của loại đó, có sẵn giá trị mặc định; bước bắt buộc không được trống; gia công thành phẩm hiển thị để biết, không cho chọn.
  • Dưới lựa chọn số màu và ô Pantone luôn có config.colors.disclaimer.
  • Cho mọi loại sản phẩm có in, ở bước Gia công bề mặt, thì danh sách lựa chọn gồm Không phủ, Cán màng bóng, Cán màng mờ, Cán mờ chống trầy, Phủ UV, Phủ IR (chọn 1; config.surface.options). Loại nào không làm được một lựa chọn thì SA tắt lựa chọn đó cho loại ấy.
  • Cho KH bật ép kim, thì hiện lựa chọn màu nhũ: Nhũ đồng hoặc Nhũ bạc, không có giá trị mặc định; chưa chọn thì nút thêm vào giỏ bị khóa kèm config.foil.color.required. Màu nhũ hiện trong tóm tắt cấu hình, mục giỏ và đơn.

US-59 · Hệ thống áp quy tắc ràng buộc QT-01..QT-25 (Must)

Là CEO PrintUp, tôi muốn hệ thống tự áp các quy tắc ràng buộc khi KH cấu hình, để chặn tổ hợp không sản xuất được và cảnh báo rủi ro trước khi KH đặt.

Liên kết: S-02 · config.rule.*

  • Cho một quy tắc mức chặn, khi KH chọn tổ hợp vi phạm, thì hiện khối config.rule.block và khóa nút thêm vào giỏ.
  • Cho quy tắc mức cảnh báo (ví dụ in màu trên kraft), thì KH phải bấm “Tôi đã hiểu” mới đi tiếp; lựa chọn xác nhận được lưu theo mục giỏ.
  • Cho quy tắc tự thêm công đoạn hoặc phí, thì công đoạn và phí hiện trong khối giá kèm câu giải thích.
  • Quy tắc cấu hình được, không viết cứng trong code.

US-60 · KH nhập thông tin bổ sung khi tùy chọn yêu cầu (Must)

Là KH, tôi muốn được hỏi thêm thông tin khi chọn tùy chọn cần dữ liệu riêng (mã Pantone, file vùng gia công, dữ liệu đánh số), để đơn đủ thông tin sản xuất ngay từ đầu.

  • Cho KH chọn in màu pha, khi để trống mã Pantone, thì hiện config.pantone.required và khóa nút.
  • Cho KH chọn UV định hình, ép kim, dập nổi, thì danh sách file bắt buộc thêm file vùng tương ứng; với thiết kế AI, AI đề xuất vùng và KH xác nhận ở bản duyệt.
  • Cho KH chọn đánh số nhảy hoặc QR, thì KH tải tệp dữ liệu CSV và số lượng bằng số dòng dữ liệu.

US-61 · Tự chuyển sang yêu cầu báo giá khi vượt chuẩn (Must)

Là KH, tôi muốn được chuyển sang yêu cầu báo giá khi cấu hình vượt chuẩn, để vẫn đặt được sản phẩm đặc biệt thay vì bị chặn.

Liên kết: S-02 → S-04 · config.toquote.* · TH-10

  • Cho KH chọn kích thước ngoài bộ chuẩn, tùy chọn đánh dấu *, ép kim dưới ngưỡng hoặc giá dưới sàn, thì ẩn giá, hiện lý do và nút config.toquote.cta; bấm nút thì mở S-04 với cấu hình đã chọn điền sẵn.

US-62 · KH gửi yêu cầu báo giá (Must)

Là KH, tôi muốn gửi yêu cầu báo giá kèm mô tả, kích thước và số lượng, để nhận giá cho sản phẩm ngoài bảng giá sẵn.

Liên kết: S-04 · quote.* · E-26

  • Cho KH ở S-04, khi thiếu mô tả, kích thước hoặc số lượng dự kiến, thì không gửi được; đủ thì tạo mã YC, hiện quote.sent và gửi E-26. KH chưa có tài khoản thì nhập email và được tạo tài khoản như US-07.

US-63 · PrintUp soạn và gửi báo giá tay (Must)

Là người soạn báo giá của PrintUp, tôi muốn gửi báo giá tay có hạn hiệu lực cho từng yêu cầu, để KH nhận giá chính thức và giá không bị dùng quá hạn.

Liên kết: E-27 · CFG.quote_valid_days · J-05 · P0-8

  • Cho một YC, khi người soạn gửi báo giá (quy cách, số lượng, đơn giá, thành tiền, ghi chú), thì tạo mã BG, hạn hiệu lực = ngày gửi + CFG.quote_valid_days, gửi E-27.
  • Quá hạn thì BG tự khóa (J-05).

US-64 · KH chấp nhận hoặc từ chối báo giá (Must)

Là KH, tôi muốn chấp nhận hoặc từ chối báo giá ngay trên hệ thống, để đặt hàng tiếp với giá đã báo hoặc gửi yêu cầu mới.

Liên kết: S-04 · quote.accept, quote.reject, quote.expired · TH-22, TH-23 · P0-6

  • Cho BG còn hạn, khi KH chấp nhận, thì tạo mục giỏ với giá khóa theo BG; mục đi tiếp luồng file, đặt hàng, cọc như sản phẩm giá tức thời (theo cách thu tiền chốt ở P0-6).
  • Khi KH từ chối, thì BG chuyển “Đã từ chối” và hiện quote.rejected kèm nút gửi yêu cầu mới.

US-65 · KH mua sản phẩm tiêu chuẩn (Must)

Là KH, tôi muốn mua sản phẩm tiêu chuẩn theo bó mà không cần file, để đặt nhanh hàng có sẵn.

Liên kết: S-05 · std.* · P0-6, P1-20

  • Cho KH ở S-05, thì chọn mã kích thước có sẵn và số lượng theo bội số bó (nút −/+ nhảy đúng một bó); không cần file, không qua Thiết kế và Sản xuất.
  • Cho mã kích thước Admin đã ẩn do hết lô, thì hiện std.soldout và không chọn được.

US-66 · KH mua sản phẩm tiêu chuẩn kèm tem dán (Must)

Là KH, tôi muốn mua sản phẩm tiêu chuẩn kèm tem dán in thương hiệu, để có bao bì mang thương hiệu mà không phải in hộp riêng.

  • Cho KH tick std.addon.label, khi thêm vào giỏ, thì giỏ tạo 2 mục liên kết: sản phẩm tiêu chuẩn và tem TN-01 cùng số lượng; mục tem cần file thiết kế như US-14/US-15. Giao chung hay riêng: P0-3.

US-67 · SA cấu hình danh mục không cần code (Must)

Là Super Admin, tôi muốn khai báo danh mục sản phẩm bằng cấu hình, để thêm hoặc đổi sản phẩm mà không cần đơn vị phát triển sửa code.

  • Cho SA khai báo loại sản phẩm, tùy chọn, quy tắc, bộ kích thước chuẩn, số lượng tối thiểu, bước nhảy, định mức và cấu trúc mặt cho thiết kế AI, khi thiếu tham số bắt buộc, thì không publish được và hiện danh sách còn thiếu.
  • Chuyển một loại từ báo giá tay sang giá tức thời chỉ bằng cấu hình.
Mã Story Ưu tiên AC ngắn
US-68 Admin cho phép giá dưới giá sàn trên một đơn — Là Admin, tôi muốn cho phép giá dưới giá sàn trên một đơn cụ thể, để linh hoạt với khách đặc biệt mà vẫn lưu vết lý do. Should Bắt buộc ghi lý do, lưu vết.
US-69 KH tải file mẫu (khuôn 1:1) theo loại và kích thước — Là KH, tôi muốn tải file mẫu đúng khuôn theo loại và kích thước, để tự dàn trang đúng ngay từ đầu. Should Khuôn thật có đường cắt, cấn, tràn lề, vùng an toàn; sơ đồ nguyên lý hiện có chỉ dùng minh họa (P1-22).

Cập nhật lần cuối 01/10/2026 bởi Hoàng Tùng · 6b3bfefc · Lịch sử thay đổi