Bỏ qua để đến nội dung

Bước 3 — Bán hàng đầu tiên

Bạn có thể quét một mặt hàng, gắn khách hàng, nhận thanh toán, và in hóa đơn end-to-end — cho cả bán lẻ (khách walk-in) và bán sỉ (khách ghi nợ có kỳ hạn tín dụng). Bất kỳ thu ngân nào cũng có thể lặp lại quy trình này.

  1. Đăng nhập vào POS Workspace (/point-of-sale/sale) — xem Đăng nhập.
  2. Chọn cửa hàng ở thanh trên cùng (chỉ khi bạn có nhiều cửa hàng).
  3. Chọn quầy / register — nếu cửa hàng có nhiều hơn một quầy, hệ thống sẽ yêu cầu bạn chọn quầy trước khi checkout được mở khoá.
  4. Mở ca làm việc — xem Ca làm việc. Ca theo dõi ai đang giữ ngăn kéo tiền.

III. Bán lẻ vs bán sỉ — chọn đúng mặt phẳng

Phần tiêu đề “III. Bán lẻ vs bán sỉ — chọn đúng mặt phẳng”

Bảng điều khiển tách bán lẻ và bán sỉ thành hai mặt phẳng riêng biệt vì chúng có cơ chế giá, phương thức thanh toán, và luồng nghiệp vụ khác nhau:

Mặt phẳngĐường dẫnCơ chế giáPhương thức thanh toánKhi nào dùng
POS Workspace (bán lẻ)/point-of-sale/saleBảng giá lẻTiền mặt / Thẻ / VíKhách walk-in, đơn lẻ, không có kỳ hạn tín dụng
Wholesale Workspace/dashboard/orders/create-wholesaleBảng giá sỉ (theo khách)Tiền mặt / Thẻ / Chuyển khoản / Công nợ kháchKhách quen, ghi nợ, hóa đơn nhiều dòng

POS Workspace bán lẻ — luồng quầy cho khách walk-in POS Workspace — màn hình chính của thu ngân cho đơn bán lẻ.

Form tạo đơn bán sỉ — luồng khách ghi nợ Form đơn bán sỉ — chọn khách, áp bảng giá sỉ, tuỳ chọn bán ghi nợ.

Sự tách bán lẻ / bán sỉ được enforce theo route (/point-of-sale/... vs /dashboard/orders/...), không phải toggle trong cùng một trang. Nếu cần chuyển giữa ca, hãy hoàn tất đơn hiện tại trước.

  1. Panel danh mục (bên trái) — nhấn vào mặt hàng, quét mã vạch, hoặc tìm kiếm theo tên/SKU.
  2. Panel giỏ hàng (bên phải) — điều chỉnh số lượng bằng stepper + / −, áp dụng chiết khấu line nếu sản phẩm cho phép.
  3. Header giỏ hiển thị Tạm tính · Thuế · Tổng theo thời gian thực. Thanh toán bị vô hiệu cho tới khi giỏ có ít nhất một line.
  4. (Tuỳ chọn) Nhấn pill Khách hàng ở đầu giỏ để gắn khách — xem § V.
  5. (Tuỳ chọn) Nhấn Lưu nháp nếu muốn quay lại giỏ này sau — xem § VI.

Khi sẵn sàng, nhấn Thanh toán → modal thanh toán mở ra. Xem § VII.

POS workspace với ba line trong giỏ — Thanh toán được kích hoạt Ba mặt hàng trong giỏ. Nút Thanh toán giờ sáng.

Giỏ có một pill Khách hàng (đầu panel giỏ) mở ra một listbox khách hàng.

Bạn muốnLàm thế này
Khách walk-in (không ghi CRM)Để trống khách. Đơn ghi là guest sale.
Khách đã cóGõ vài chữ cái đầu của tên hoặc SĐT vào listbox — hệ thống lọc trực tiếp. Chọn đúng dòng.
Khách hoàn toàn mới tại quầyNhấn + Thêm khách mới trong listbox. Modal Thêm khách mở — điền tên + SĐT (+ email tuỳ chọn) và Lưu. Khách mới tự động được gắn vào giỏ.

Thêm khách tại quầy không chặn đơn bán — đó là cải tiến chất lượng dữ liệu, cho phép gắn đơn mua với hồ sơ khách (tích điểm, ví, hoàn tiền tương lai, hóa đơn B2B).

VI. Lưu nháp (hoặc gửi WBS / warehouse pick)

Phần tiêu đề “VI. Lưu nháp (hoặc gửi WBS / warehouse pick)”

Ba tuỳ chọn “đậu xe giỏ” nằm trên thanh công cụ của giỏ:

Hành độngKhi nào dùngChuyện gì xảy ra
Lưu nhápKhách tạm dừng, đi đâu đó, sẽ quay lại.Trạng thái giỏ (lines, qty, khách, chiết khấu) được lưu dưới dạng bản nháp có tên trong tab nháp của POS Workspace. Mở lại sau từ panel Đơn nháp.
Gửi warehouse pickMột số mặt hàng cần lấy từ kho phía sau, không phải kệ trước.Đánh dấu đơn cho warehouse pick — đội kho thấy đơn trong POS → Warehouse board (/point-of-sale/warehouse-board) và chuẩn bị hàng trước khi khách tới lấy.
Lưu làm báo giá (chỉ bán sỉ)Khách sỉ muốn báo giá trước khi quyết định.Sinh tài liệu báo giá; khách có thể duyệt sau từ Đơn hàng → Bán sỉ.

Bản nháp được lưu dưới client-side identity (mã vạch Code128) để giỏ sống sót qua reload, đổi quầy, và thậm chí offline ngắn hạn. Xem POS Workspace tour → “Nháp” để hiểu đầy đủ mô hình bền vững.

Nhấn Thanh toán. Modal mở với:

  1. Tổng phải trả ở trên cùng (tổng giỏ).
  2. Hàng phương thức thanh toán dạng chip — chỉ những phương thức cửa hàng đã cấu hình trong Thiết lập → Chung → Payments mới hiện ra.
  3. Bàn phím số tiền mặt (nếu chọn Tiền mặt) để nhập số tiền khách đưa; hệ thống tự hiện tiền thối.
  4. Chế độ split-tender nếu khách trả một phần tiền mặt và một phần thẻ.
Phương thứcLuồng
Tiền mặtNhập số tiền khách đưa → thấy tiền thối → nhấn Xác nhận. Hóa đơn in.
ThẻThiết bị đã ghép (PAX / CodePay / Stripe) nhắc khách quẹt / cắm / quét. Hệ thống poll trạng thái thiết bị; khi thành công, hóa đơn in.
VíXác nhận trừ tiền từ ví khách; hóa đơn in.
Khác / Chuyển khoảnNhập tay; đánh dấu đã trả khi chuyển khoản cleared.

Đơn được tạo với mã vạch Code128 (client_order_id của client), không phải EAN-13 số — cùng mã này hiện trên hóa đơn in và trang chi tiết đơn.

Chi tiết đơn — line items, thanh toán, tổng, timeline Chi tiết đơn trong dashboard — cùng đơn vừa tạo, với line items, phương thức thanh toán, tổng và timeline.

Hướng dẫn đầy đủ: POS Workspace tour → “Thanh toán” / “Hóa đơn”.

Báo cáo POS — tổng kết doanh thu ca POS → Report — tổng kết doanh thu cuối ca.

Ca làm việc POS — quản lý ca hiện tại POS → Work shift — quản lý ca.

  • Hóa đơn in ra với đúng tên cửa hàng + địa chỉ (xem header ở Thiết lập → Chung).
  • Tồn kho thực tế đã giảm đúng số lượng bán.
  • Đơn hàng xuất hiện trong Hoạt động bán hàng → Đơn hàng (/dashboard/orders).
  • Tổng kết ca làm việc đã cập nhật (ngăn kéo tiền + số đơn).
  • Với bán sỉ: đơn xuất hiện trong /dashboard/orders/wholesale VÀ ô “Công nợ” của khách trên dashboard tăng lên nếu đơn ghi nợ.
Triệu chứngNơi kiểm tra
Máy in không inMáy in hóa đơn + Trạng thái POS Bridge
Thanh toán thẻ kẹt ở “đang chờ”Thiết bị thanh toán — xác minh WebSocket
Tồn kho không giảmMặt hàng → Theo dõi tồn kho đang tắt, hoặc Lot đang ở pending (chưa delivered)
Listbox khách không hiển thị gìKhách bị lọc ra bởi cửa hàng khác — mở khách trong Khách hàng → Danh sách và kiểm tra cột Cửa hàng.
Form bán sỉ không nhận đơnKhách đã chạm hạn mức tín dụng — kiểm tra banner cảnh báo; yêu cầu trả bớt công nợ cũ, hoặc đổi sang đơn nhỏ hơn.

→ Bước 4 — Xử lý trả hàng: bước 4.