Quản lý nhóm sản phẩmBiến thể sản phẩm

Cập nhật biến thể

Cập nhật thông tin một biến thể sản phẩm

Endpoint

PUT /v1/productvariants/:id

Quyền: product.manage hoặc product.managecontent

Path Parameters

TênKiểuBắt buộcMô tả
idintCóID biến thể

Request Body

Cấu trúc giống Tạo biến thể (trừ product_id, is_bom_kit chỉ dùng khi tạo mới). Các trường SKU, giá, trạng thái, kích thước... chỉ được cập nhật khi có quyền product.manage; option_values và photo_gallery_file_id_list chỉ được cập nhật khi có quyền product.managecontent.

TrườngKiểuBắt buộcMô tả
company_idintCóID công ty
creator_idintCóID người thao tác
skustringKhôngMã SKU (duy nhất trong công ty, mọi khoảng trắng sẽ bị loại bỏ). Không thể đổi SKU khi biến thể còn tồn kho
priceintCóGiá bán
statusintCóTrạng thái (3: Active, 5: Archived)
uuidstringKhôngUUID biến thể
option_valuesarrayKhôngDanh sách giá trị tùy chọn định danh biến thể
barcodestringKhôngMã barcode (chỉ cập nhật khi có gửi trường này)
display_namestringKhôngTên hiển thị riêng (chỉ cập nhật khi có gửi trường này)
notestringKhôngGhi chú nội bộ (chỉ cập nhật khi có gửi trường này)
compare_priceintKhôngGiá so sánh (chỉ cập nhật khi có gửi trường này)
min_stockintKhôngTồn kho tối thiểu (chỉ cập nhật khi có gửi trường này)
is_serial_trackedintKhông1: Theo dõi serial/IMEI (chỉ cập nhật khi có gửi trường này)
lengthintKhôngChiều dài (mm) (chỉ cập nhật khi có gửi trường này)
widthintKhôngChiều rộng (mm) (chỉ cập nhật khi có gửi trường này)
heightintKhôngChiều cao (mm) (chỉ cập nhật khi có gửi trường này)
weightintKhôngTrọng lượng (gram) (chỉ cập nhật khi có gửi trường này)
external_idstringKhôngID tham chiếu ngoài
price_by_uomarrayKhôngGiá theo đơn vị tính (xem cấu trúc)
photo_gallery_file_id_listarrayKhôngDanh sách ID ảnh gallery
combo_dataarrayKhôngDữ liệu combo, chỉ hợp lệ với sản phẩm loại Combo (xem cấu trúc)
bomarrayKhôngBill of Materials
display_orderintKhôngThứ tự hiển thị

Lưu ý

Các trường không có ghi chú "chỉ cập nhật khi có gửi trường này" sẽ bị ghi đè bằng giá trị rỗng/0 nếu không gửi lên. Để cập nhật một vài trường, dùng Cập nhật một phần biến thể.

Ví dụ JSON

{
    "company_id": 1,
    "creator_id": 10,
    "sku": "POLO-RED-M",
    "price": 260000,
    "status": 3,
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "option_values": [
        { "option_id": 10, "option_value_id": 101, "option_value_name": "Do", "uuid": "..." }
    ],
    "external_id": "",
    "price_by_uom": [],
    "photo_gallery_file_id_list": [],
    "combo_data": [],
    "bom": [],
    "display_order": 1001
}

Response Schema

HTTP 200 - OK

Trả về ProductVariant Object sau khi cập nhật (bao gồm price_by_policy).

Error Codes

Lỗi dữ liệu đầu vào (HTTP 422). Trả về mảng các mã lỗi trong trường error:

Mã lỗiMô tả
error_product_permission_not_foundQuyền hạn không đủ (cần product.manage hoặc product.managecontent)
error_sku_existMã SKU đã tồn tại
error_product_variant_onhold_remainKhông thể đổi SKU vì biến thể còn tồn kho (kèm các dòng " > <Tên kho> (<số tồn>)")
error_fetch_product_variant_stats_before_deleteKhông lấy được thông tin tồn kho để kiểm tra khi đổi SKU
error_parse_product_variant_stats_before_deleteThông tin tồn kho trả về không hợp lệ
error_status_not_existTrạng thái không tồn tại (chỉ chấp nhận 3 hoặc 5)
error_combo_data_not_valid_for_non_combocombo_data chỉ dùng cho sản phẩm loại Combo
error_combo_data_must_be_arraycombo_data phải là mảng
error_combo_element_invalid_propertyPhần tử combo thiếu/sai kiểu product_id, product_variant_id, quantity, variant_exchange_mode, variant_exchange_id_list
error_combo_product_variant_id_invalid(X)Biến thể thành phần không tồn tại hoặc không thuộc product_id đã khai báo
error_combo_quantity_invalid(X)Số lượng thành phần không hợp lệ (âm)
error_combo_variant_exchange_mode_invalid(X)variant_exchange_mode không hợp lệ
error_combo_variant_exchange_id_list_item_notfound(Variant: X, ID: Y)Biến thể được phép đổi không tồn tại
error_combo_variant_exchange_id_list_item_invalid(Variant: X, ID: Y)ID biến thể được phép đổi không phải là số
error_company_id_requiredID công ty không được để trống
error_company_id_notfoundID công ty không tìm thấy
error_user1_id_requiredID người thao tác không được để trống
error_user_id_notfoundID người thao tác không tìm thấy
error_not_foundBiến thể không tồn tại hoặc không thuộc công ty của bạn (HTTP 404)
error_editLỗi hệ thống khi lưu dữ liệu (HTTP 500)

On this page