ERPNext tiếng Việt
Bài viết hướng dẫn

Vì sao đơn giá tồn kho hoặc giá trị tồn kho bị âm hoặc cao bất thường?

Tài liệu ERPNext tiếng Việt: Vì sao đơn giá tồn kho hoặc giá trị tồn kho bị âm hoặc cao bất thường?

Đơn giá tồn kho âm hoặc quá cao hầu như luôn do một giao dịch kho sai, không phải lỗi của phương pháp tính giá. Tìm giao dịch đó trong báo cáo Sổ kho (Stock Ledger), sửa nó, rồi chạy Tính lại giá trị tồn kho (Repost Item Valuation) để mọi bút toán phía sau được tính lại.

Bạn có thể đang gặp một trong các dấu hiệu sau:

  • Số dư kho (Stock Balance) hiện Giá trị tồn (Balance Value) âm trong khi số lượng dương.
  • Đơn giá tồn kho của một mặt hàng đột ngột nhảy lên gấp 10 hoặc 1.000 lần giá vốn bình thường.
  • Giá vốn hàng bán (Cost of Goods Sold) trên phiếu xuất kho hoặc hóa đơn bán hàng quá cao, hoặc âm.
  • BOM hoặc Phiếu kho lấy một đơn giá bất thường cho nguyên vật liệu.

Nguyên nhân thường gặp

Đơn giá tồn kho bằng giá trị tồn chia cho số lượng tồn. Nếu một khoản giá trị bị ghi sai đơn giá, mà số lượng còn lại rất nhỏ, đơn giá sẽ lệch rất xa.

Nguyên nhânĐiều gì xảy raDấu hiệu trong Sổ kho
Tồn kho âmKhi Cho phép tồn kho âm (Allow negative stock) bật trong Cài đặt kho (Stock Settings), hàng được xuất trước khi nhập. Các bút toán xuất dùng đơn giá đoán hoặc đơn giá cũ. Khi hàng về, đơn giá nhập khác, phần chênh lệch nằm lại trong giá trị tồn.Balance Qty xuống dưới 0, sau đó một phiếu nhập kéo theo Avg Rate (Balance Stock) nhảy vọt hoặc Balance Value âm.
Phiếu nhập đơn giá 0Phiếu nhập kho (Purchase Receipt), phiếu Nhập kho (Material Receipt) hoặc Kiểm kê kho (Stock Reconciliation) được lưu với đơn giá 0 (thường do chọn Cho phép đơn giá tồn kho bằng 0 (Allow Zero Valuation Rate)). Việc này kéo đơn giá bình quân xuống. Các lần xuất sau theo đơn giá cũ có thể lấy đi nhiều giá trị hơn số còn lại.Incoming Rate bằng 0 trên một phiếu nhập, sau đó đơn giá giảm dần và về sau Balance Value âm.
Bút toán lùi ngàyGiao dịch ghi lùi ngày trước các bút toán đã có làm đổi đơn giá của mọi bút toán phía sau. Nếu việc ghi sổ lại còn đang chờ hoặc đã lỗi, các bút toán sau giữ giá trị cũ.Các bút toán sau bút toán lùi ngày không cộng khớp. Bản ghi Tính lại giá trị tồn kho (Repost Item Valuation) của mặt hàng có trạng thái Queued hoặc Failed.
Mặt hàng có số sê-riMỗi số sê-ri mang theo đơn giá lúc nhập. Nếu một số sê-ri nhập sai đơn giá (hoặc 0), mỗi lần chuyển kho và giao hàng của nó đều mang đơn giá sai đó đi.Incoming Rate trên phiếu Chuyển kho hoặc phiếu xuất kho chênh rất xa so với giá vốn thường thấy của mặt hàng.
Quy đổi đơn vị tính saiMặt hàng mua theo một đơn vị tính (ví dụ Box) nhưng lưu kho theo đơn vị khác (Nos). Hệ số quy đổi đơn vị tính (UOM Conversion Factor) sai làm chia số tiền cho quá ít hoặc quá nhiều đơn vị.In Qty nhìn không hợp lý với chứng từ, và Incoming Rate gấp một bội số (ví dụ 12 lần) so với đơn giá dự kiến.

Tìm bút toán làm sai đơn giá

Báo cáo Sổ kho liệt kê mọi biến động của mặt hàng theo thứ tự, nên bạn thấy được chứng từ làm đơn giá sai.

  1. Vào Trang chủ > Kho > Báo cáo > Sổ kho (Stock Ledger).

  2. Chọn Company (công ty), Item (mặt hàng), Warehouse (kho hàng). Đặt From Date đủ xa để bao gồm lần cuối đơn giá còn bình thường.

  3. Đọc các cột sau từ trên xuống:

    • Incoming Rate: đơn giá của từng lần nhập. Tìm giá trị 0, hoặc đơn giá cao hơn giá vốn thường thấy rất nhiều.
    • Balance Qty: tìm dòng nào có số lượng xuống dưới 0.
    • Avg Rate (Balance Stock): đơn giá tồn kho sau mỗi bút toán. Tìm dòng đầu tiên mà đơn giá nhảy vọt hoặc âm.
    • Balance Value: phải gần bằng Balance Qty x Avg Rate. Giá trị âm trong khi số lượng dương là dấu hiệu của lỗi.
  4. Mở chứng từ ở cột Voucher # của dòng sai đầu tiên, và phiếu nhập ngay trước đó. Một trong hai là bút toán gốc gây lỗi.

Kiểm tra từng kho một. Mỗi kho có đơn giá tồn kho riêng, nên lỗi ở một kho có thể hiện ra như đơn giá nhảy vọt trong phiếu chuyển sang kho khác.

Để tìm mọi mặt hàng bị ảnh hưởng cùng lúc, dùng các báo cáo Stock Ledger Invariant Check và Incorrect Stock Value Report. Đồng thời xem danh sách Tính lại giá trị tồn kho để tìm các bản ghi có trạng thái Failed.

Sửa bút toán gốc, rồi ghi sổ lại

Sửa bút toán gốc trước. Chỉ ghi sổ lại thì ERPNext vẫn tính lại bằng số sai cũ.

1. Sửa bút toán gốc

Nếu nguyên nhân làCách làm
Tồn kho âmLập phiếu nhập còn thiếu với ngày giờ ghi sổ trước lần xuất đầu tiên, để tồn kho không bao giờ xuống dưới 0.
Phiếu nhập đơn giá 0Hủy và sửa đổi (Amend) phiếu nhập với đơn giá đúng. Với Kiểm kê kho, sửa đổi với Valuation Rate đúng.
Đơn giá sai trên phiếu nhập khoHủy và sửa đổi. Nếu chỉ thiếu cước vận chuyển hoặc thuế nhập khẩu, dùng Phiếu phân bổ chi phí mua hàng (Landed Cost Voucher).
Quy đổi đơn vị tính saiSửa Conversion Factor trong bảng đơn vị tính của mặt hàng. Sau đó hủy và sửa đổi các chứng từ bị ảnh hưởng.
Số sê-ri nhập sai đơn giáHủy và sửa đổi phiếu nhập gốc của số sê-ri đó. Các lần chuyển kho và giao hàng sau lấy đơn giá đã sửa sau khi ghi sổ lại.

2. Chạy Tính lại giá trị tồn kho (Repost Item Valuation)

Hủy hoặc sửa đổi một bút toán lùi ngày thường tự tạo bản ghi ghi sổ lại. Hãy tạo thủ công nếu không có, hoặc nếu bản trước đã lỗi.

  1. Vào Tính lại giá trị tồn kho (Repost Item Valuation) > Mới.

  2. Chọn Based On:

    • Item and Warehouse: nhập Item Code, Warehouse, cùng Posting Date và Posting Time của bút toán gốc (hoặc sớm hơn một chút).
    • Transaction: nhập Voucher Type và Voucher No của bút toán gốc.
  3. Lưu và Gửi. Việc ghi sổ lại chạy nền. Status chuyển từ Queued sang In Progress rồi Completed.

  4. Nếu trạng thái là Failed, đọc trường Error Log. Thường nó chỉ ra một dòng tồn kho âm bạn vẫn cần sửa. Sửa xong, bấm Chạy lại (Restart).

  5. Chạy lại Sổ kho và xác nhận Avg Rate (Balance Stock) đã bình thường.

Việc ghi sổ lại cũng cập nhật Sổ cái, nên giá trị kho và giá trị kế toán khớp lại. Có thể giới hạn ghi sổ lại trong một số khung giờ ở Cài đặt ghi sổ lại kho (Stock Reposting Settings). Nếu không thấy gì xảy ra, kiểm tra khung giờ ở đó.

Vì sao đơn giá ở BOM hoặc hóa đơn bán hàng có thể khác Sổ kho

Đơn giá trong BOM và trên hóa đơn bán hàng được lấy vào thời điểm khác, hoặc từ nơi khác so với Sổ kho. Khác nhau chưa chắc là lỗi.

Chứng từĐơn giá lấy từ đâuVì sao khác
BOMRate Of Materials Based On (giá nguyên vật liệu theo): Valuation Rate, Last Purchase Rate hoặc Price List. Với Valuation Rate, ERPNext lấy bình quân các kho (hoặc kho nguồn nếu đã đặt).Chi phí được chốt khi lưu BOM. Chỉ đổi khi bạn bấm Update Cost, hoặc khi bật Update BOM Cost Automatically trong Manufacturing Settings. Sổ kho thì tính theo từng kho và theo thời điểm hiện tại.
Hóa đơn bán hàngRate là giá bán lấy từ Bảng giá hoặc Quy tắc giá, không phải giá vốn.Giá vốn hàng bán do phiếu xuất kho ghi nhận, hoặc do hóa đơn khi chọn Update Stock. Giá vốn dùng đơn giá tồn kho tại ngày giờ ghi sổ.
Phiếu xuất kho / Phiếu khoĐơn giá tồn kho tại ngày giờ ghi sổ, ở kho nguồn.Một bút toán lùi ngày về sau làm đổi đơn giá này sau khi chứng từ đã Gửi. Việc ghi sổ lại sẽ cập nhật, nhưng bản đã in vẫn giữ giá trị cũ.

Nếu BOM hiện sai giá nguyên vật liệu, sửa đơn giá tồn kho của nguyên vật liệu trước (xem phần trên). Sau đó mở BOM và bấm Update Cost.

Phòng ngừa

Phần lớn các lỗi này biến mất khi tắt tồn kho âm và mọi phiếu nhập đều có đơn giá thật.

  • Tắt tồn kho âm. Trong Cài đặt kho, bỏ chọn Allow negative stock. Người dùng sẽ không xuất hàng trước khi nhập được. (Mặt hàng có số sê-ri không bao giờ được âm. Mặt hàng theo lô chỉ âm được khi bật Allow negative stock for Batch trong Cài đặt kho, và chỉ với bút toán lùi ngày.)
  • Đặt đơn giá tồn kho cho mọi phiếu nhập. Không chọn Allow Zero Valuation Rate trừ khi mặt hàng thật sự miễn phí, như hàng mẫu tặng. Với hàng tồn đầu kỳ và hàng miễn phí, đặt Valuation Rate trên hồ sơ mặt hàng.
  • Kiểm tra hệ số quy đổi đơn vị tính trên hồ sơ mặt hàng trước lần mua đầu tiên theo đơn vị tính mới.
  • Hạn chế bút toán lùi ngày. Dùng Role allowed to create/edit back-dated transactions trong Cài đặt kho để chỉ một số ít người được ghi lùi ngày.
  • Theo dõi hàng đợi ghi sổ lại. Mỗi tuần xem danh sách Tính lại giá trị tồn kho để tìm bản ghi Failed. Sửa từng bản ghi trước khi có thêm bút toán chồng lên.

Vẫn cần hỗ trợ?

Nếu đơn giá vẫn sai sau khi việc ghi sổ lại hoàn tất, gửi yêu cầu hỗ trợ tại support.frappe.io. Kèm theo:

  • Mã mặt hàng và kho hàng
  • Bản xuất Sổ kho cho giai đoạn đơn giá bắt đầu sai
  • Tên bản ghi Repost Item Valuation, và Error Log nếu nó lỗi

Trong trang này