Trung tâm trợ giúp Khách hàng Sapo

Xem và sửa đơn nhập hàng trên Sapo Omni

3.3. Chi tiết đơn nhập hàng

Khi người dùng bấm vào mã đơn trong danh sách đơn nhập hàng (VD: PON04010), hệ thống mở màn hình Chi tiết đơn nhập hàng, hiển thị đầy đủ các thông tin sau:

3.3.1. Trạng thái đơn nhập hàng

Trên giao diện, các trạng thái hiển thị bằng nhãn màu, gồm 5 nhóm:

Nhóm trạng thái Giao diện hiển thị Ý nghĩa nghiệp vụ
Trạng thái Hoàn thành / Đang giao dịch / Kết thúc / Huỷ Phản ánh tình trạng tổng thể của đơn nhập hàng.
Trạng thái nhập Đã nhập / Chưa nhập Cho biết đơn đã thực hiện nhập kho hay chưa.
Trạng thái thanh toán Đã thanh toán / Thanh toán một phần / Chưa thanh toán Cho biết tình trạng công nợ với nhà cung cấp.
Trạng thái hoàn hàng Hoàn hàng toàn bộ / Hoàn hàng một phần Hiển thị nếu đơn đã có phát sinh phiếu trả hàng.
Trạng thái hoàn tiền Hoàn tiền toàn bộ / Hoàn tiền một phần Hiển thị nếu có phát sinh phiếu hoàn tiền tương ứng.

Bảng chi tiết các trạng thái và định nghĩa kỹ thuật

1. Trạng thái đơn nhập (status)
Giá trị hệ thống Hiển thị giao diện Định nghĩa
Active Đang giao dịch Đơn đang xử lý, có thể chỉnh sửa. - Tăng kho incoming - Áp dụng cho: đơn chưa nhập & chưa/đang thanh toán, hoặc đã nhập – chưa/đang thanh toán. - Áp dụng cho đơn tạo trực tiếp hoặc nhập từ file Excel.
Completed Hoàn thành Đơn đã nhập kho và thanh toán toàn bộ.
Ended Kết thúc Đơn đã kết thúc khi: - Chưa nhập nhưng đã thanh toán 1 phần/toàn bộ, hoặc - Đã nhập nhưng chưa thanh toán/1 phần. Hệ thống sẽ ẩn nút thao tác nhập kho và thanh toán.
Cancelled Đã huỷ Đơn bị huỷ khi: - Đơn đang ở trạng thái “Active” & chưa nhập kho (receipt_status = pending). - Hoặc đơn đã nhập, nhưng được cho phép huỷ thủ công (hệ thống kiểm tra lại tồn kho).
2. Trạng thái nhập (receipt_status)
Giá trị Hiển thị Định nghĩa
pending Chưa nhập Đơn chưa được nhập kho. Khi tạo đơn, hệ thống tự động tăng kho incoming.
received Đã nhập Đơn đã nhập kho thành công. Tăng kho onhand, giảm incoming.
3. Trạng thái thanh toán (payment_status)
Giá trị Hiển thị Định nghĩa
pending Chưa thanh toán Chưa phát sinh giao dịch thanh toán (transaction).
partially_paid Thanh toán một phần Tổng tiền thanh toán nhỏ hơn tổng giá trị đơn: ∑ transaction_amount < total_price.
paid Đã thanh toán Đã thanh toán đủ: ∑ transaction_amount = total_price.
4. Trạng thái hoàn hàng (refund_status)
Giá trị Hiển thị Định nghĩa
partially_returned Hoàn hàng một phần Một phần sản phẩm trong đơn đã được trả: ∑ refund.quantity < purchase_order.total_quantity.
returned Hoàn hàng toàn bộ Toàn bộ sản phẩm trong đơn đã được trả về NCC: ∑ refund.quantity = purchase_order.total_quantity.
5. Trạng thái hoàn tiền (refunds.transaction_status)
Giá trị Hiển thị Định nghĩa
partially_refunded Hoàn tiền một phần ∑ refund.transaction_amount < purchase_order.total_price.
refunded Hoàn tiền toàn bộ ∑ refund.transaction_amount = purchase_order.total_price.

3.3.2. Giao diện chi tiết đơn nhập hàng

Màn hình chi tiết gồm các khu vực chính:

Khu vực Nội dung hiển thị
Thanh tiêu đề (header) Mã đơn (VD: PON04010), ngày tạo, trạng thái hiện tại (Đang giao dịch / Hoàn thành...), và các nút thao tác: In đơn – Sao chép – Thao tác khác – Nhập hàng – Sửa đơn – Huỷ.
Thông tin nhà cung cấp Tên, mã, số điện thoại, địa chỉ NCC; tổng công nợ, tổng đơn nhập, tổng giá trị trả hàng.
Thông tin đơn nhập hàng Chi nhánh, chính sách giá, nhân viên phụ trách, ngày hẹn giao – nhập – tham chiếu.
Khối nhập kho Hiển thị trạng thái nhập: “Đơn nhập hàng chưa nhập kho” / “Đơn nhập hàng đã nhập kho” + mã phiếu nhập tương ứng.
Khối thanh toán Hiển thị tiến trình thanh toán: “Đơn nhập hàng chưa thanh toán” / “Thanh toán một phần” / “Đã thanh toán toàn bộ” kèm số tiền cần trả và đã trả.
Bảng thông tin sản phẩm Danh sách sản phẩm trong đơn, gồm: ảnh, tên, SKU, barcode, đơn vị, SL nhập, đơn giá, chiết khấu, thuế, thành tiền.

3.3.3. Sửa đơn nhập hàng

Người dùng có thể bấm “Sửa đơn” để cập nhật thông tin, tùy thuộc trạng thái của đơn.

1. Nguyên tắc chung

  • Chỉ các đơn ở trạng thái Active mới được chỉnh sửa.
  • Mỗi trạng thái status / receipt_status / payment_status cho phép sửa các trường khác nhau.
  • Khi thay đổi các thông tin về sản phẩm, chi phí, chiết khấu… hệ thống tự động tính lại tổng tiền và công nợ nhà cung cấp.

2. Bảng quy tắc sửa đơn theo trạng thái

Status Receipt_Status Payment_Status Trường được phép sửa Ghi chú
active pending pending - Nhà cung cấp - Nhân viên phụ trách - Thêm/bớt sản phẩm, SL, đơn giá, chiết khấu - Chiết khấu tổng, chi phí, thuế - Ghi chú, tag, tham chiếu, ngày nhập dự kiến Sau khi lưu, tính lại số tiền cần trả NCC.
active pending partially_paid - Nhân viên phụ trách - Thêm/bớt sản phẩm, SL, đơn giá, chiết khấu - Ghi chú, tag, tham chiếu, ngày nhập dự kiến Hệ thống tính lại phần tiền còn phải thanh toán.
active pending paid - Chỉ cho phép chỉnh tag, ghi chú, tham chiếu Không ảnh hưởng công nợ.
active received pending / partially_paid - Ghi chú, tag, tham chiếu Không cho phép sửa sản phẩm đã nhập.
completed received paid ❌ Không cho phép chỉnh sửa.
completed received paid / partially_returned ❌ Không cho phép chỉnh sửa.
cancelled ❌ Không thể sửa, chỉ xem thông tin.

3. Sửa đơn đã nhập kho

Input:

  • status = active
  • receipt_status = received

Các trường cho phép sửa:

  • Ghi chú đơn, tag, ghi chú sản phẩm.
  • (Tạm thời chưa hỗ trợ chỉnh sửa dòng sản phẩm đã nhập.)

Output & xử lý hệ thống:

  • Tự động kiểm tra tồn kho:
  • Nếu tồn hiện tại < SL nhập trong đơn bị huỷ hoặc sửa, hệ thống không cho phép thao tác.
  • Khi chỉnh định lượng, giá hoặc huỷ nhập:
  • Cập nhật lại giá vốn và giá trị hàng tồn từ thời điểm nhập hàng đến hiện tại.
  • Ghi nhận lại lịch sử kho (nhập – huỷ – điều chỉnh).
  • Hủy các phiếu chi, giao dịch thanh toán liên quan (nếu có).
  • Ghi nhận lại công nợ NCC theo giá trị mới.

4. Kết thúc đơn nhập

Input:

  • Áp dụng cho đơn:
  • Chưa nhập – đã thanh toán / thanh toán 1 phần, hoặc
  • Đã nhập – chưa thanh toán / thanh toán 1 phần.

Output:

  • Hệ thống tự động:
  • Chuyển trạng thái status = ended.
  • Ẩn nút Nhập khoThanh toán.
  • Nếu đơn chưa nhập → trừ kho incoming.

3.4. Nhập kho quá khứ, Sửa đơn đã nhập, Huỷ đơn nhập

Điều kiện Giới hạn
Đơn không có tách dòng ✅ Hỗ trợ sửa, huỷ, nhập kho quá khứ
Đơn có tách dòng ❌ Không hỗ trợ
Giới hạn thời gian Không quá 30 ngày so với ngày tạo đơn

Xử lý hệ thống khi nhập kho quá khứ / sửa / huỷ:

  1. Tính lại giá vốn tại thời điểm chọn nhập hàng.
  2. Cập nhật giá vốn trong các báo cáo sản phẩm đã bán trong khoảng thời gian processed_on → created_on của phiếu nhập.
  3. Cập nhật lịch sử kho (tồn đầu kỳ, nhập – xuất – tồn cuối).
  4. Ghi nhận tăng công nợ với nhà cung cấp nếu đơn chưa được thanh toán.

📘 Tổng kết:

  • Người dùng có thể theo dõi toàn bộ trạng thái đơn, nhập kho, thanh toán, hoàn hàng, hoàn tiền ngay trên giao diện chi tiết.
  • Việc sửa đơn tuân thủ chặt chẽ theo trạng thái của đơn để đảm bảo độ chính xác dữ liệu tồn kho, công nợ và báo cáo kế toán.
  • Các thao tác “Nhập kho quá khứ” và “Huỷ đơn nhập” đều có kiểm soát tồn và giới hạn thời gian để tránh sai lệch dữ liệu hệ thống.

Bạn có muốn mình viết tiếp phần “3.5. Huỷ đơn nhập hàng” (có quy trình, điều kiện, và xử lý công nợ) liền kề để hoàn thiện chương 3 không?

Dưới đây là phần bổ sung hoàn chỉnh cho mục 3.3 – Chi tiết đơn nhập hàng, gồm hai phần mới: (3.3.4) Lịch sử thao tác đơn nhập hàng(3.3.5) Thông tin hoàn trả, dành cho các đơn đã có phát sinh trả hàng hoặc hoàn tiền nhà cung cấp.

3.3.4. Lịch sử thao tác đơn nhập hàng

Vị trí trên giao diện

  • Trong phần Thông tin đơn nhập hàng, bấm chọn đường dẫn “Xem lịch sử đơn nhập hàng”.
  • Hệ thống mở cửa sổ Lịch sử thao tác đơn nhập hàng, hiển thị toàn bộ hoạt động đã thực hiện trên đơn.

Giao diện danh sách lịch sử thao tác

Cột thông tin Nội dung hiển thị
Thời gian Thời điểm thao tác (theo định dạng dd/mm/yyyy hh:mm:ss)
Người thao tác Tài khoản nhân viên thực hiện hành động
Chức năng Nhóm chức năng thực hiện (VD: Nhập hàng, Thanh toán, Hoàn trả, Huỷ đơn…)
Thao tác Mô tả chi tiết hành động phát sinh trên hệ thống

Ví dụ minh hoạ

Thời gian Người thao tác Chức năng Thao tác
30/10/2025 09:28:25 QuyenDL Hoàn trả cho đơn nhập Hoàn trả cho nhà cung cấp
30/10/2025 09:27:51 QuyenDL Thanh toán đơn nhập Thêm mới thanh toán cho đơn nhập hàng
30/10/2025 09:27:45 QuyenDL Nhập hàng Tạo đơn nhập hàng

Chức năng hỗ trợ

  • Có thể xem nhật ký chi tiết bằng cách bấm vào liên kết “Nhật ký hoạt động” để mở trang tổng hợp lịch sử thao tác toàn hệ thống.
  • Hệ thống lưu tối đa toàn bộ các thao tác phát sinh kể từ khi tạo đơn, bao gồm:
  • Tạo, chỉnh sửa, nhập kho, thanh toán, hoàn trả, huỷ đơn.
  • Thông tin người thực hiện và thời điểm thao tác.

Ý nghĩa nghiệp vụ

  • Giúp truy vết đầy đủ lịch sử đơn nhập, phục vụ kiểm soát quy trình nhập hàng, thanh toán và hoàn trả.
  • Là căn cứ để đối chiếu trách nhiệm thao tác của từng nhân viên hoặc bộ phận.
  • Đặc biệt hữu ích trong trường hợp phát sinh sai lệch tồn kho, công nợ hoặc điều chỉnh phiếu chi.

3.3.5. Thông tin hoàn trả (áp dụng cho đơn đã có hoàn hàng/hoàn tiền)

Phần Thông tin hoàn trả chỉ hiển thị đối với những đơn nhập hàng đã có phát sinh phiếu trả hàng nhà cung cấp (Refund).

Vị trí trên giao diện

  • Ở cuối trang chi tiết đơn nhập hàng, chọn tab “Thông tin hoàn trả”.
  • Giao diện hiển thị thông tin chi tiết về các lần trả hàng, số lượng hàng hoàn, giá trị hoàn trả và trạng thái hoàn tiền tương ứng.

Giao diện và cấu trúc hiển thị

I. Thông tin chung về hoàn trả
Trường thông tin Mô tả
Ngày tạo Thời điểm tạo phiếu hoàn trả
SL hoàn Tổng số lượng sản phẩm hoàn trả
Giá trị hoàn trả Tổng tiền giá trị hàng hoàn
Trạng thái hoàn Đã hoàn / Đang xử lý
Trạng thái hoàn tiền Hoàn tiền toàn bộ / Hoàn tiền một phần
Nhân viên tạo Người lập phiếu hoàn trả
Nút thao tác [In đơn trả] – tải hoặc in phiếu hoàn trả nhà cung cấp
II. Thông tin chi tiết đơn hoàn trả

Khối “Thông tin đơn trả hàng nhà cung cấp”

Trường Mô tả
Chi nhánh Nơi phát sinh phiếu hoàn
Nhà cung cấp Tên NCC liên quan
Lý do hoàn trả Nội dung mô tả nguyên nhân hoàn hàng
Nhận hoàn tiền Số chứng từ, số tiền và thời điểm hoàn tiền từ NCC (nếu có)
III. Thông tin sản phẩm hoàn trả
STT Ảnh Mã SKU Tên sản phẩm SL trả Đơn giá trả Thành tiền
1 17889 Test thay đổi giá nhập 2 10 100,000 1,000,000

Phần dưới bảng có tổng hợp:

  • Tổng số lượng hàng trả
  • Giá trị hàng trả
  • Chi phí / Chiết khấu / Thuế (nếu có)
  • Tổng giá trị trả

Ví dụ thực tế

Phiếu trả hàng NCC ngày 30/10/2025:

  • Số lượng hoàn: 10 sản phẩm
  • Giá trị hoàn: 1,000,000 VNĐ
  • Hoàn tiền: Toàn bộ
  • Người tạo: QuyenDL
  • Trạng thái hoàn tiền: “Hoàn tiền toàn bộ”

Ý nghĩa nghiệp vụ

  • Giúp kế toán và quản lý dễ dàng theo dõi toàn bộ luồng hoàn trả – hoàn tiền liên quan đến từng đơn nhập.
  • Thông tin được cập nhật tự động khi:
  • Phiếu trả hàng được tạo từ đơn nhập.
  • NCC xác nhận hoàn tiền (phiếu chi được ghi nhận).
  • Dữ liệu này ảnh hưởng đến:
  • Trạng thái hoàn hànghoàn tiền của đơn nhập.
  • Báo cáo công nợ NCC, báo cáo nhập hàng, báo cáo hàng hoàn.

Tổng kết cho mục 3.3

Nội dung Mô tả chính
Chi tiết đơn nhập hàng Hiển thị toàn bộ thông tin NCC, chi nhánh, sản phẩm, thanh toán, trạng thái nhập.
Lịch sử thao tác Ghi nhận đầy đủ hành vi người dùng: nhập hàng, thanh toán, hoàn trả, huỷ.
Thông tin hoàn trả Chỉ hiển thị khi đơn có phát sinh phiếu trả hàng và hoàn tiền.
Quản lý đồng bộ Toàn bộ trạng thái “nhập – thanh toán – hoàn trả – hoàn tiền” được cập nhật tự động để đảm bảo dữ liệu kho, giá vốn và công nợ chính xác.

Bạn có muốn mình viết nối tiếp phần 3.4 – Xử lý Nhập kho quá khứ, Sửa đơn đã nhập, Huỷ đơn nhập theo cùng phong cách (có mô tả giao diện, input – output – giới hạn thời gian, tác động giá vốn & công nợ) để hoàn thiện trọn chương “Quy trình xử lý đơn nhập hàng” không?

Phụ lục: Nội dung kỹ thuật/đặc tả

3.3. Chi tiết đơn nhập hàng

3.3.1. Trạng thái đơn nhập hàng

Trạng thái Trạng thái nhập Trạng thái thanh toán Trạng thái hoàn hàng Trạng thái hoàn tiền
Hoàn thành Đã nhập Đã thanh toán Hoàn hàng toàn bộ Hoàn tiền toàn bộ
Đang giao dịch Chưa nhập Thanh toán một phần Hoàn hàng một phần Hoàn tiền một phần
Kết thúc Chưa thanh toán
Hủy
  • Trạng thái đơn nhập
Status Giao diện "Trạng thái" Định nghĩa
Active Đang giao dịch - Tăng kho incoming - Đơn nhập hàng: Chưa nhập & Chưa thanh toán/ Thanh toán 1 phần / Thanh toán toàn bộ; Đã nhập - Chưa thanh toán/ Thanh toán 1 phần - Chỉ áp dụng trạng thái này cho đơn nhập hàng tạo trực tiếp và đơn tạo từ nhập file excel
Completed Hoàn thành Đơn nhập hàng đã hoàn thành nhập & Thanh toán toàn bộ
Ended Kết thúc Kết thúc khi đơn chưa nhập - đã thanh toán/ thanh toán 1 phần hoặc đã nhập - chưa thanh toán/ thanh toán 1 phần
Cancelled Đã huỷ - Đơn ở trạng thái active & receipt_status = pending => Huỷ - Đơn nhập hàng đã nhập => Huỷ (đánh giá hỗ trợ sau)
  • Trạng thái nhập
Receipt status Giao diện "Trạng thái nhập" Định nghĩa
pending Chưa nhập - Tăng kho incoming - Chỉ áp dụng trạng thái này cho đơn nhập hàng tạo trực tiếp và đơn tạo từ nhập file excel
received Đã nhập Đơn nhập hàng đã hoàn thành nhập - Tăng kho onhand, giảm kho incoming
  • Trạng thái thanh toán
payment status Giao diện "Trạng thái thanh toán" Định nghĩa
pending Chưa thanh toán Chưa có transaction
partially_paid Thanh toán một phần ∑transaction_amount < total_price
paid Đã thanh toán ∑transaction_amount = total_price
  • Trạng thái hoàn hàng
Refund_status Giao diện "Trạng thái hoàn hàng" Định nghĩa
partially_returned Hoàn hàng một phần ∑refund.quantity < purchase_order.total_quantity
returned Hoàn hàng toàn bộ ∑refund.quantity = purchase_order.total_quantity
  • Trạng thái hoàn tiền
refunds.transaction_status Giao diện "Trạng thái hoàn tiền" Định nghĩa
partially_refunded Hoàn tiền một phần ∑refund.transaction_amount < purchase_order.total_price
refunded Hoàn tiền toàn bộ ∑refund.transaction_amount < purchase_order.total_price
  • Sửa đơn nhập

Các trường cho phép sửa tương ứng từng case:

status Receipt_Status Transaction_Status return_status Các trường sửa
active pending pending - Nhà cung cấp - Nhân viên phụ trách - Thêm bớt line item, SL, Đơn giá, CK - Chiết khấu, chi phí tổng đơn, thuế - Ghi chú, tag đơn, tham chiếu- Ngày nhập dự kiến
active pending partially_paid - Nhân viên phụ trách - Thêm bớt line item, SL, Đơn giá, CK - Chiết khấu, chi phí tổng đơn, thuế - Ghi chú, tag đơn, tham chiếu- Ngày nhập dự kiến ==> Tính toán lại phần thanh toán: KH còn phải trả là bn
active pending paid
active pending paid
active pending paid
active received pending - Ghi chú, tag đơn, tham chiếu
active received partially_paid
completed received paid
completed received paid
completed received paid
completed received paid partially_returned
completed received paid partially_returned
completed received paid returned
completed received paid returned
cancelled
  • Sửa đơn đã nhập
  • Input: Status = received => sửa thông tin:
  • Ghi chú đơn, tags, ghi chú sản phẩm => hỗ trợ trước
  • line item (thêm, bớt, sửa giá, SL, CK, thuế), ghi chú, tag, ngày nhập
  • Output:
  • Tính lại tồn kho: check nếu tồn < SL nhập trong đơn hủy ⇒ không cho hủy
  • Tính lại giá vốn và tiền vốn của các giao dịch trong các báo cáo từ thời điểm nhập hàng > thời điểm hủy phiếu
  • Hủy các chứng từ phiếu chi tạo từ đơn nhập hàng
  • Kết thúc đơn nhập
  • Input: Kết thúc khi đơn chưa nhập - đã thanh toán/ thanh toán 1 phần hoặc đã nhập - chưa thanh toán/ thanh toán 1 phần
  • Output:
  • Chuyển status = ended
  • Ẩn nút Nhập kho/ Thanh toán
  • Trừ kho incoming nếu đơn chưa nhập

Dưới đây là hướng dẫn hoàn chỉnh phần 3.3 – Chi tiết và sửa đơn nhập hàng, được biên soạn theo đúng logic giao diện (theo ảnh bạn gửi) và tài liệu trạng thái nghiệp vụ nội bộ 👇

iconTrợ lý Sapo
icon
icon