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

Tổng quan PRD Core Flow

Bối cảnh, mục tiêu, phạm vi, vai trò, danh mục sản phẩm, ưu tiên và epic, yêu cầu phi chức năng, phụ thuộc và mốc.

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ữ.

PRD này định nghĩa Core Flow đặt hàng của PrintUp cho go-live 06/11/2026: khách chọn sản phẩm, tự thiết kế bằng AI hoặc gửi file, duyệt bản in, cọc 70%, sản xuất, thanh toán 30% còn lại, nhận hàng và hóa đơn; kèm 5 role quản trị và đại lý giới thiệu. Bản v0.4 viết lại các story mức Must theo dạng Cho – Khi – Thì để đội phát triển (kể cả khi dùng AI viết code) làm được mà không phải đoán. Trạng thái đơn, tham số, trường hợp đặc biệt, copy và email nằm ở 3 phụ lục cuối tài liệu: A. Dữ liệu & trạng thái, B. Copy, C. Email.

Thông tin tài liệu

Mục Nội dung
Phiên bản v0.4 – bản nháp 30/09/2026: cập nhật theo họp 30/09 (cọc 70%, tự thiết kế bằng AI, giao hàng, hóa đơn, điều khoản) và chính sách đặt hàng v0.1; story Must viết theo Cho – Khi – Thì; thêm 3 phụ lục A. Dữ liệu & trạng thái, B. Copy, C. Email
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)
Người đọc Nhóm dự án PrintUp, đơn vị phát triển
Phạm vi Luồng khách hàng, 5 role quản trị (ở mức liên quan tới đơn), đại lý giới thiệu. Màn quản trị chi tiết: tài liệu Requirement Quản trị 5 vai trò
Mốc liên quan Gửi đơn vị phát triển 30/09/2026 · Chốt giá 30/10/2026 · Go-live 06/11/2026
Tài liệu đi kèm Phụ lục A. Dữ liệu & trạng thái · Phụ lục B. Copy · Phụ lục C. Email · Chính sách và điều khoản đặt hàng PrintUp v0.1 · Prototype luồng đặt hàng · Prototype quản trị 5 vai trò
Mức chia sẻ Chia sẻ được trong nhóm dự án và đơn vị phát triển.
Cách đọc cho đội phát triển Mỗi story mở đầu bằng câu “Là …, tôi muốn …, để …” (in nghiêng) nêu ai cần, cần gì và vì sao. Story Must ghi thêm màn hình (S-xx), mã copy, email (E-xx), trạng thái (ST-xx), tham số (CFG.xxx) và trường hợp (TH-xx) liên quan. Con số chưa chốt đều là tham số cấu hình có giá trị mặc định, không viết cứng.

Quy ước: Đã biết = đã có quyết định. Giả định = đang dùng để viết, cần xác nhận. CHƯA CHỐT = chờ quyết định, xem mục Câu hỏi mở.

Bối cảnh và vấn đề

PrintUp nhận đơn in và bao bì số lượng nhỏ (100–500 cái) cho 8 nhóm, 56 loại sản phẩm (chi tiết ở mục Danh mục sản phẩm).

Khách nhỏ hiện gặp 4 vấn đề khi đặt in:

  • Phải hỏi giá qua sale hoặc Zalo, chờ báo giá.
  • Số lượng tối thiểu cao (thường 200–500 cái).
  • Tự chuẩn bị file, dễ sai quy cách, bị trả đi trả lại.
  • Không biết đơn đang ở bước nào, lo lệch màu và trễ hạn.

Core Flow giải quyết bằng: giá hiển thị theo quy cách, hướng dẫn file theo từng sản phẩm, duyệt file trước khi in, theo dõi trạng thái đơn, và chia thanh toán thành cọc 70% sau khi chốt file, 30% còn lại trước khi giao.

Mục tiêu, chỉ số và phạm vi

Mục tiêu của bản go-live: một khách lạ tự đặt được một đơn từ đầu đến cuối trên web mà không cần gọi sale, và mọi role nội bộ xử lý đơn đó trên cùng hệ thống.

Chỉ số theo dõi (con số mục tiêu CHƯA CHỐT, lấy từ KPI dự án khi CEO PrintUp duyệt):

Chỉ số Cách đo
Tỷ lệ đơn gửi → đã cọc Số đơn đã cọc / số đơn đã gửi
Số vòng sửa file trung bình Số lần tải lại file trước khi chốt, theo đơn
Thời gian từ gửi đơn đến chốt file Giờ, trung vị
Tỷ lệ đơn giao đúng hạn Đơn giao trước ngày dự kiến / tổng đơn giao
Tỷ lệ đơn có mã đại lý Đơn có mã / tổng đơn đã cọc

Trong phạm vi: luồng A–G trong mục Tổng quan luồng.

Ngoài phạm vi bản này: đại lý đặt hộ khách; bán lại dưới thương hiệu đại lý; tích hợp tự động với đơn vị vận chuyển (bản này Admin nhập mã vận đơn bằng tay, xem P0-1); review từ khách; đặt lại đơn cũ; ứng dụng di động riêng (nếu chưa có trong phạm vi đã ký với đơn vị phát triển).

Vai trò người dùng

Vai trò Làm gì trong Core Flow
Khách hàng Chọn sản phẩm, gửi file hoặc yêu cầu thiết kế, duyệt file, thanh toán, theo dõi đơn, nhận hàng và hóa đơn
Đại lý Giới thiệu khách bằng mã giới thiệu; xem khách, đơn và hoa hồng của mình. Không đặt hộ khách.
Super Admin Tạo tài khoản, phân quyền; cấu hình sản phẩm, quy cách, bảng giá, tỷ lệ hoa hồng; bật/tắt module mẫu thử và tự động xuất hóa đơn; xem báo cáo tổng thể
Admin (CSKH) Quản lý đơn và thông tin khách; cập nhật trạng thái; trao đổi với khách; điều phối giao hàng
Thiết kế/Kỹ thuật Làm thiết kế theo yêu cầu; kiểm tra file in; phản hồi đạt/chưa đạt qua chat; gửi bản duyệt
Sản xuất Xác nhận đơn; làm mẫu thử; cập nhật đặt nguyên vật liệu, đang sản xuất, thành phẩm
Kế toán Đối soát thanh toán; xuất hóa đơn; xử lý hoàn tiền; đối soát và chi trả hoa hồng; báo cáo tài chính

Danh mục sản phẩm

Danh mục v1.1 có 56 loại trong 8 nhóm. Mỗi loại thuộc 1 trong 3 chế độ giá, và chế độ giá quyết định khách đi luồng nào.

Mã Nhóm Số loại Giá tức thời Báo giá tay Giá cố định
HG Hộp giấy đơn 10 9 0 1
HL Hộp giấy lắp ráp 10 5 4 1
HX Hộp gập xếp phẳng 5 4 1 0
TG Túi giấy 6 4 1 1
TN Tem nhãn 6 4 2 0
CM Catalog – tờ rơi – menu 6 5 1 0
ND Bộ nhận diện thương hiệu 6 6 0 0
HQ Hộp quà tặng 7 4 3 0
Tổng 56 41 12 3

3 chế độ giá và luồng tương ứng

Chế độ Khách thấy gì Luồng Ví dụ
Giá tức thời (print_engine) Chọn cấu hình, thấy giá ngay Đầy đủ A–G: file, duyệt file, thanh toán, sản xuất, giao HG-01 hộp nắp gài, ND-01 danh thiếp
Báo giá tay (manual_quote) Nút “Yêu cầu báo giá”, không hiện giá Khách gửi yêu cầu → PrintUp báo giá (hiệu lực 7 ngày) → khách chấp nhận → vào luồng đầy đủ HL-02 thùng 4 nắp, HQ-05 hộp có khay lót
Giá cố định (fixed_unit) Chọn mã kích thước + số lượng Không cần file, không qua sản xuất; thanh toán rồi giao HG-10 hộp mộc, TG-06 túi kraft mộc

Một loại giá tức thời cũng tự chuyển sang báo giá tay khi khách chọn cấu hình vượt chuẩn: kích thước ngoài bộ chuẩn, tùy chọn đánh dấu (*), ép kim/dập nổi dưới ngưỡng số lượng.

Cấu hình một sản phẩm đi qua 7 bước: kiểu/hình dáng → nguyên vật liệu → số màu in → gia công bề mặt → ghép lớp → gia công thành phẩm (cố định theo kết cấu, khách không chọn) → hoàn thiện. Mỗi loại có danh sách tùy chọn cho phép, giá trị mặc định và bước bắt buộc. 25 quy tắc ràng buộc (QT-01..QT-25) quy định khi nào chặn, cảnh báo, tự thêm công đoạn hoặc chuyển báo giá tay.

Chưa có dữ liệu: bộ kích thước chuẩn, số lượng tối thiểu, bước nhảy số lượng, hao phí, định mức của cả 56 loại đang trống; Sản xuất và Kế toán nhập, hạn 30/10/2026. Một số năng lực máy ghi CẦN KIỂM CHỨNG (in flexo, offset UV, máy dán đáy khóa, máy làm túi).

Nguồn: [Project]PrintUp/DanhMucSanPham/Luồng sản phẩm PrintUp - Cấu hình danh mục - v1.1 - 29-09-2026.xlsx (Sheet 1, 8, 9, 10). Sơ đồ khai triển cho 8 nhóm (8 file PDF cùng thư mục, ngày 29/09/2026) là bản vẽ nguyên lý, đủ 56 loại (mỗi loại 1 trang), ghi rõ “KHÔNG phải khuôn bế sản xuất; không theo tỉ lệ in”. Dùng được để minh họa kết cấu trên trang chi tiết sản phẩm; chưa dùng được làm file mẫu cho khách thiết kế.

Ưu tiên và epic

Mức ưu tiên dưới đây là đề xuất của Product Manager PrintUp, cần CEO PrintUp duyệt. Nguyên tắc: thiếu Must thì khách không đặt được một đơn trọn vẹn, nên không go-live.

Mức Ý nghĩa Hạn
Must Bắt buộc để go-live Trước 06/11/2026
Should Cần sớm; nếu trễ thì làm tay tạm thời Go-live hoặc bản ngay sau
Could Có thì tốt Sau go-live
Mã Epic Ưu tiên Role chính
E1 Thiết lập và cấu hình Must Super Admin
E2 Tài khoản khách hàng Must Khách hàng
E3 Chọn sản phẩm và file thiết kế Must Khách hàng
E4 Giỏ hàng nhiều sản phẩm Must Khách hàng
E5 Đặt hàng: nhận hàng, hóa đơn, hình thức giao, mã giới thiệu, điều khoản Must (đơn gấp: Should) Khách hàng, Admin
E6 File thiết kế và duyệt file Must Thiết kế, Khách hàng
E7 Thanh toán cọc 70% và 30% còn lại Must Khách hàng, Kế toán
E8 Sản xuất, theo dõi đơn, yêu cầu, chat, thông báo Must Sản xuất, Khách hàng, Admin
E9 Hóa đơn và giao hàng Must Kế toán, Admin
E10 Khiếu nại Should Khách hàng, Admin
E11 Hủy đơn và hoàn tiền trước mốc đặt nguyên vật liệu Should Khách hàng, Kế toán
E12 Module mẫu thử (bật/tắt) Should Sản xuất, Admin
E13 Đại lý và hoa hồng Should (ghi nhận mã: Must) Đại lý, Admin, Kế toán
E14 Báo cáo tổng thể Should Super Admin, Kế toán
E15 Cấu hình sản phẩm, báo giá tay, sản phẩm tiêu chuẩn Must (giá dưới sàn, file mẫu: Should) Khách hàng, Super Admin, Admin
E16 Tự động theo chính sách: nhắc và tự hủy khi chưa cọc, quá hạn thanh toán cuối, giao không thành công; ngày giao mới; phiên bản chính sách; AI quét nội dung Must cho US-70 đến US-72 (đề xuất); Should cho US-73 đến US-75 Hệ thống, Admin, Super Admin

Ghi nhận mã giới thiệu để ở Must vì nếu thiếu, đơn phát sinh từ đại lý trong những tuần đầu sẽ không truy được hoa hồng. View Đại lý và chi trả có thể làm tay bằng bảng đối soát trong thời gian đầu.

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

Nhóm Yêu cầu
Thiết bị Dùng tốt trên điện thoại và máy tính; phần lớn khách nhỏ đặt từ điện thoại (giả định). Prototype luồng đặt hàng là mẫu bố cục.
Phân quyền Mỗi role chỉ thấy dữ liệu và thao tác của mình. Thiết kế không thấy tên, số điện thoại, địa chỉ khách. Đại lý chỉ thấy đơn gắn mã của mình.
Đăng nhập Link đăng nhập qua email dùng một lần, có thời hạn (CFG.login_link_hours). Tài khoản tự tạo không cần mật khẩu đến khi khách tự đặt.
Lưu vết Lưu lịch sử đổi trạng thái (ai hoặc tác vụ nào, lúc nào, lý do), bằng chứng đồng ý, mọi phiên bản file, mọi giao dịch thanh toán, hoàn tiền, ghi nhận tay, phiếu điều chỉnh, bổ sung mã giới thiệu, thay đổi tham số CFG, email đã gửi.
Dữ liệu cá nhân CCCD, mã số thuế, địa chỉ, số điện thoại chỉ hiển thị cho role cần dùng. Cách thu, lưu, hiển thị theo mục 11 chính sách v0.1; cần luật sư xác nhận.
File Nhận file tải lên, link chia sẻ tải được, hoặc file do thiết kế AI xuất. Định dạng, dung lượng theo quy cách: CHƯA CHỐT. Lưu file đã duyệt theo CFG.file_retention_months.
Thanh toán QR SePay cố định số tiền và nội dung. Trạng thái thanh toán chỉ đổi khi SePay xác nhận đủ tiền, hoặc Kế toán ghi nhận tay có lưu vết. Xử lý trùng thông báo từ SePay không ghi nhận hai lần.
Giá Giá, tổng và tỷ lệ cọc khóa theo đơn khi gửi; đổi bảng giá hoặc tham số không ảnh hưởng đơn đã gửi.
Tác vụ tự động J-01 đến J-08 chạy theo giờ Việt Nam, tính ngày làm việc theo lịch nghỉ SA cấu hình; chạy lại không gây hủy hoặc gửi email trùng.
Email Gửi từ tên miền PrintUp; mỗi sự kiện một lần; thử lại khi lỗi; nội dung theo Phụ lục C.
Bảo mật thiết kế AI Mẫu, câu lệnh và logic sinh ảnh nằm phía máy chủ.
Ngôn ngữ, tiền tệ Tiếng Việt; VND; hiển thị rõ giá đã hay chưa gồm VAT theo CFG.price_includes_vat. Toàn bộ copy lấy từ Phụ lục B.

Phụ thuộc, rủi ro và mốc

Phụ thuộc

Phụ thuộc Người chuẩn bị Cần cho
Bộ quy cách, file bắt buộc, file mẫu và số lượng tối thiểu cho 56 loại sản phẩm (danh mục v1.1 đã có cấu trúc và tùy chọn; Sheet 10 còn trống, hạn 30/10/2026) Thiết kế + Sản xuất US-01, US-02, US-14
Bảng giá theo quy cách và số lượng CEO PrintUp + Kế toán US-02, US-13
Danh sách đơn vị vận chuyển, bảng phí giao và số ngày giao theo khu vực CEO PrintUp + Admin US-06, US-23, US-45
Nội dung điều khoản đặt hàng, chính sách hủy – hoàn, khiếu nại Luật sư US-26, US-49, US-51
Tài khoản SePay CEO PrintUp US-33, US-34
Dịch vụ gửi email (xác nhận đơn, link đăng nhập, thông báo) Đơn vị phát triển US-07, US-08, US-27, US-42
Đơn vị hóa đơn điện tử (CHƯA CHỐT) Kế toán US-43, US-44

Rủi ro

Rủi ro Ảnh hưởng Cách giảm
Mẫu thử, view Đại lý, tự động xuất hóa đơn, hủy – hoàn, khiếu nại, đơn gấp, đăng nhập bằng link email có thể ngoài phạm vi đã thống nhất với đơn vị phát triển Trễ go-live hoặc phát sinh chi phí Xác nhận với đơn vị phát triển ngày 02/10; phần ngoài phạm vi đi qua phiếu thay đổi
Câu hỏi P0 chốt muộn AC viết muộn, đơn vị phát triển phải làm lại Chốt P0 tại demo 02/10
Công suất sản xuất mùa Tết Giao trễ so với ngày đã công bố Công bố thời gian giao có dự phòng (P1-12)

Mốc

  1. 30/09/2026 – Gửi Business Requirements (bản này) cho đơn vị phát triển
  2. 02/10/2026 – Demo; chốt 8 câu P0; đơn vị phát triển phản hồi phạm vi
  3. 03/10/2026 – Đối chiếu AC của đơn vị phát triển với PRD, ghi khoảng trống
  4. 30/10/2026 – Chốt giá; chốt câu hỏi P1
  5. 06/11/2026 – Go-live

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

Baseline nguồn: biz-docs/SOURCE-REQUIREMENTS.md · 16/09/2026 · repo RunLumi/printup

Requirement có trong đặc tả 16/09/2026 được đánh dấu Baseline. Chi tiết chưa đủ để code/nghiệm thu phải nằm ở trạng thái Cần chốt hoặc D-xx Mở, không tự suy diễn thành cam kết. Trạng thái được cập nhật trong biz-docs/data/.