Woocommerce Stock Không Cộng: Nguyên Nhân Và Cách Khắc Phục Triệt Để

woocommerce stock không cộng

Khi vận hành cửa hàng trên WooCommerce, việc quản lý tồn kho chính xác là yếu tố sống còn. Tuy nhiên, nhiều chủ shop gặp phải tình trạng woocommerce stock không cộng sau khi nhập hàng, cập nhật đơn hàng hoặc khi khách hủy đơn. Lỗi này khiến số lượng sản phẩm hiển thị sai lệch, gây thất thoát doanh thu và ảnh hưởng đến trải nghiệm mua hàng. Bài viết này sẽ phân tích chi tiết nguyên nhân gốc rễ và hướng dẫn bạn từng bước khắc phục lỗi stock không cộng trong WooCommerce.

Bản Chất Của Lỗi Woocommerce Stock Không Cộng

woocommerce stock không cộng - Hình 4

WooCommerce sử dụng cơ chế quản lý tồn kho dựa trên post meta và bảng tùy chỉnh. Khi một đơn hàng được tạo, hệ thống tự động trừ số lượng tồn. Khi đơn hàng bị hủy hoặc hoàn trả, lẽ ra stock phải được cộng lại. Lỗi woocommerce stock không cộng xảy ra khi quá trình này bị gián đoạn, dẫn đến số lượng tồn kho thực tế và số liệu trên hệ thống không đồng nhất.

Vấn đề này thường xuất hiện ở các cửa hàng có số lượng đơn hàng lớn, sử dụng nhiều plugin bên thứ ba hoặc cấu hình sai cài đặt tồn kho. Hiểu rõ cơ chế hoạt động của WooCommerce stock là bước đầu tiên để giải quyết triệt để.

Nguyên Nhân Phổ Biến Khiến Woocommerce Stock Không Cộng

woocommerce stock không cộng - Hình 3

1. Cài Đặt Quản Lý Tồn Kho Chưa Chính Xác

WooCommerce cho phép bật/tắt tính năng quản lý tồn kho cho từng sản phẩm. Nếu bạn vô tình tắt quản lý stock ở cấp sản phẩm nhưng vẫn bật ở cấp cửa hàng, hệ thống sẽ không cộng trừ chính xác. Kiểm tra trong WooCommerce > Cài đặt > Sản phẩm > Tồn kho, đảm bảo mục “Quản lý tồn kho” được bật. Đồng thời, vào từng sản phẩm, kiểm tra tab “Tồn kho” và chọn “Quản lý tồn kho?” là có.

2. Xung Đột Plugin Gây Lỗi Stock Không Cộng

Các plugin quản lý đơn hàng, plugin đồng bộ kho đa kênh, hoặc plugin tùy chỉnh trạng thái đơn hàng thường can thiệp vào hook woocommerce_reduce_order_stockwoocommerce_restore_order_stock. Khi có xung đột, quá trình cộng stock sau khi hủy đơn sẽ không được kích hoạt. Các plugin phổ biến gây lỗi bao gồm: plugin thanh toán tùy chỉnh, plugin tạo đơn hàng tự động, plugin đồng bộ ERP.

3. Trạng Thái Đơn Hàng Không Được Cập Nhật Đúng

WooCommerce chỉ tự động cộng stock khi đơn hàng chuyển sang trạng thái “Cancelled”, “Refunded” hoặc “Failed”. Nếu bạn sử dụng trạng thái đơn hàng tùy chỉnh (ví dụ: “Đã hủy” thay vì “Cancelled”), hệ thống sẽ không nhận diện và không thực hiện cộng stock. Đây là nguyên nhân phổ biến nhất của lỗi woocommerce stock không cộng.

4. Lỗi Cache Hoặc CDN

Một số plugin cache như WP Rocket, W3 Total Cache hoặc dịch vụ CDN có thể lưu lại dữ liệu tồn kho cũ. Khi bạn cập nhật stock, giao diện người dùng vẫn hiển thị số liệu cũ, tạo cảm giác stock không được cộng. Thực tế, dữ liệu đã thay đổi trong database nhưng chưa được refresh.

5. Database Bị Lỗi Hoặc Xung Đột Transaction

Khi có nhiều đơn hàng được xử lý đồng thời, database có thể gặp lỗi transaction, khiến lệnh cộng stock không được thực thi. Điều này thường xảy ra ở các cửa hàng có lưu lượng truy cập cao hoặc sử dụng hosting kém chất lượng.

Hướng Dẫn Khắc Phục Lỗi Woocommerce Stock Không Cộng

woocommerce stock không cộng - Hình 2

Bước 1: Kiểm Tra Và Sửa Cài Đặt Tồn Kho

Vào WooCommerce > Cài đặt > Sản phẩm > Tồn kho. Đảm bảo các tùy chọn sau được bật:

    • Quản lý tồn kho
    • Giữ tồn kho cho đơn hàng chưa thanh toán (nếu cần)
    • Hiển thị tồn kho trên trang sản phẩm

    Tiếp theo, vào từng sản phẩm đang gặp lỗi, kiểm tra tab “Tồn kho” và chắc chắn rằng “Quản lý tồn kho?” được đặt thành “Có”. Nếu sản phẩm là biến thể, cần kiểm tra từng biến thể riêng lẻ.

    Bước 2: Xác Định Và Xử Lý Xung Đột Plugin

    Tạm thời vô hiệu hóa tất cả plugin không phải của WooCommerce. Kiểm tra xem lỗi woocommerce stock không cộng còn xảy ra không. Nếu hết lỗi, kích hoạt từng plugin một để tìm ra plugin gây xung đột. Các plugin cần đặc biệt chú ý:

    • Plugin quản lý đơn hàng (Order Management)
    • Plugin đồng bộ kho đa kênh
    • Plugin tạo trạng thái đơn hàng tùy chỉnh
    • Plugin thanh toán bên thứ ba

    Sau khi xác định được plugin gây lỗi, liên hệ nhà phát triển để được hỗ trợ hoặc tìm giải pháp thay thế.

    Bước 3: Đồng Bộ Trạng Thái Đơn Hàng

    Nếu bạn sử dụng trạng thái đơn hàng tùy chỉnh, cần thêm hook để WooCommerce nhận diện. Thêm đoạn code sau vào file functions.php của theme:

    add_action( 'woocommerce_order_status_changed', 'custom_restore_stock_on_custom_status', 10, 4 );
    function custom_restore_stock_on_custom_status( $order_id, $old_status, $new_status, $order ) { $custom_cancelled_statuses = array( 'custom-cancelled', 'custom-refunded' ); if ( in_array( $new_status, $custom_cancelled_statuses ) ) { wc_maybe_increase_stock_levels( $order_id ); }
    }
    

    Thay ‘custom-cancelled’ và ‘custom-refunded’ bằng slug trạng thái tùy chỉnh của bạn.

    Bước 4: Xóa Cache Và Làm Mới Dữ Liệu

    Xóa tất cả cache từ plugin cache, CDN và trình duyệt. Vào WooCommerce > Trạng thái > Công cụ, chọn “Xóa bộ nhớ tạm của WooCommerce”. Nếu sử dụng Redis hoặc Memcached, hãy flush toàn bộ cache. Sau đó, kiểm tra lại số lượng tồn kho trên trang sản phẩm.

    Bước 5: Sửa Lỗi Database

    Vào WooCommerce > Trạng thái > Công cụ, chạy các công cụ sau:

    • Cập nhật cơ sở dữ liệu
    • Đồng bộ tồn kho sản phẩm
    • Sửa lỗi đếm tồn kho

Nếu vẫn không khắc phục được,

Nguyên nhân thường do trạng thái đơn hàng không được WooCommerce nhận diện là trạng thái hủy. Kiểm tra slug của trạng thái đơn hàng và đảm bảo nó là “cancelled”, “refunded” hoặc “failed”. Nếu sử dụng trạng thái tùy chỉnh, cần thêm hook để kích hoạt cộng stock.

Làm thế nào để cộng stock thủ công trong WooCommerce?

Vào Sản phẩm > Tất cả sản phẩm, chọn sản phẩm cần sửa, chỉnh số lượng trong ô “Số lượng tồn kho” và nhấn Cập nhật. Đối với biến thể, cần chỉnh từng biến thể riêng. Có thể sử dụng plugin “WooCommerce Bulk Stock Management” để cộng stock hàng loạt.

Plugin nào thường gây lỗi stock không cộng?

Các plugin quản lý đơn hàng (như WooCommerce Order Status Manager), plugin đồng bộ kho đa kênh (như WooCommerce Multichannel), plugin thanh toán tùy chỉnh và plugin tạo đơn hàng tự động là những thủ phạm phổ biến nhất.

Có cách nào tự động cộng stock khi đơn hàng bị hủy không?

Có. WooCommerce tự động cộng stock khi đơn hàng chuyển sang trạng thái Cancelled, Refunded hoặc Failed. Bạn chỉ cần đảm bảo trạng thái đơn hàng được đặt đúng và không có plugin nào can thiệp vào quá trình này.

Lỗi stock không cộng có ảnh hưởng đến doanh thu không?

Rất lớn. Khi stock không được cộng, bạn có thể bán quá số lượng thực tế, dẫn đến tình trạng hết hàng khi khách đã đặt mua. Điều này gây mất uy tín, tăng tỷ lệ hủy đơn và ảnh hưởng đến xếp hạng cửa hàng.

Kết Luận

woocommerce stock không cộng - Hình 1

Lỗi woocommerce stock không cộng là vấn đề kỹ thuật phổ biến nhưng hoàn toàn có thể khắc phục nếu bạn hiểu rõ nguyên nhân. Từ cài đặt tồn kho sai, xung đột plugin, trạng thái đơn hàng không chuẩn cho đến lỗi cache và database, mỗi nguyên nhân đều có giải pháp cụ thể. Quan trọng nhất là kiểm tra hệ thống một cách có hệ thống, không can thiệp thủ công khi chưa xác định được gốc rễ. Áp dụng các bước hướng dẫn trong bài viết này, bạn sẽ sớm đưa hệ thống tồn kho của mình vận hành chính xác và ổn định.

Bài viết cùng chủ đề:

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *