PRD: Kênh bán hàng
| Module | Thương mại | PRD ID | PRD-SC-001 |
| Trạng thái | Sẵn sàng dev | FEAT | SC |
| Epic | — | Plane | BANA-1493 |
| Ngày | 2026-06-01 | Phiên bản | v1.0 |
| Gói | @nx/commerce | URD | SC |
| Surface | Client · Chủ/QLSale · POSBO · Vận hành | ||
| Phụ trách | Phát Nguyễn | ||
Kênh bán hàng là gì
Một merchant thường bán qua nhiều kênh bán hàng (Sale Channel): ăn tại chỗ, mang đi, giao hàng. Mỗi kênh vận hành khác nhau - quầy mang đi có thể lấy hàng từ kho khác với khu ngồi tại chỗ, in hóa đơn ở máy khác, dùng mẫu in khác. PRD này nâng kênh bán lên thành một đơn vị cấu hình thật sự.
Kho và cấu hình in giờ thuộc về từng kênh
Trước đây kênh chỉ là một bản ghi sơ sài: kho và cấu hình in nằm chung ở cấp merchant, nên hai kênh của cùng một merchant bắt buộc giống nhau. Phần này chuyển hẳn kho lấy hàng (stock-pickup locations) và cấu hình terminal/in lên từng kênh - mỗi kênh tự quyết lấy hàng từ kho nào, in ở terminal nào, dùng mẫu in gì, và việc tra cứu cấu hình chạy theo từng kênh, không rơi về cấu hình chung của merchant nữa.
Một kênh bán, từ onboarding tới ngừng bán
Onboarding tạo sẵn kênh theo ngành: quán ăn được Tại chỗ + Mang đi, merchant bán lẻ được Tại quầy + Trực tuyến. Quản lý thêm một kênh mới qua màn Sửa merchant hoặc màn quản lý kênh riêng, rồi gắn kho lấy hàng và cấu hình in cho kênh đó. Khi muốn ngừng một kênh, quản lý bấm Tạm tắt - nhưng nếu kênh còn đơn đang được bán (đơn Đang xử lý hoặc Thanh toán một phần), thao tác bị chặn ngay kèm thông báo lý do; phải xử lý hết đơn trước mới tắt được.
Chỗ dễ sai nhất
Tạm tắt và Xóa dùng chung một điều kiện, nhưng hậu quả khác nhau
Cả Tạm tắt lẫn Xóa đều bị chặn khi kênh còn đơn đang được bán - cùng một bộ chặn, cùng một điều kiện.
Hậu quả thì khác. Tạm tắt là ngừng bán tạm thời, bật lại được bất cứ lúc nào. Xóa là gỡ hẳn kênh, không phục hồi, và dọn sạch luôn các liên kết sản phẩm của kênh.