Chuyển tới nội dung chính

Quản lý biến thể

Shopee hỗ trợ định nghĩa cấu trúc biến thể với tối đa hai cấp thông số. Tổng số biến thể không được vượt quá 50.

Ví dụ, nếu một mặt hàng có thông số màu sắc với các màu đỏ hoặc xanh, chúng tôi gọi đây là biến thể 1 cấp.

Ví dụ, nếu sản phẩm có thông số màu sắc và kích cỡ, màu là đỏ, xanh, kích cỡ là L, XL, chúng tôi gọi đây là biến thể 2 cấp.

Để thêm biến thể khi tạo mặt hàng, vui lòng tham khảo bài viết về Tạo sản phẩm.

Để quản lý biến thể sau khi tạo mặt hàng, vui lòng tham khảo bài viết này.

Để quản lý tồn kho và giá của biến thể, vui lòng tham khảo bài viết Quản lý tồn kho và giá.

1. Thêm biến thể với cùng cấu trúc cấp

Tình huống 1: Sản phẩm đã định nghĩa thông số màu sắc với màu đỏ và xanh, bây giờ cần thêm màu đen vào vị trí giữa.

Tình trạng biến thể:

tier_indexoptionmodel_id
tier_index[0]red10000
tier_index[1] (Cần thêm)black (Cần thêm)-
tier_index[2]blue20000

API: v2.product.update_tier_variation + v2.product.add_model

1.1 Gọi API v2.product.update_tier_variation để thêm tùy chọn màu đen trước

Ví dụ yêu cầu:

Json

{

"item_id": 800250275,

"tier_variation": [

{

"name": "Color",

"option_list": [

{

"option": "red"

},

{

"option": "black"

},

{

"option": "blue"

}

]

}

],

"model_list": [

{

"tier_index": [0],

"model_id": 10000

},

{

"tier_index": [2],

"model_id": 20000

}

]

}

1.2 Gọi API v2.product.add_model để thêm thông tin giá, tồn kho, SKU cho biến thể màu đen:

Ví dụ yêu cầu:

Json

{

"item_id": 800250275,

"model_list": [

{

"tier_index": [1],

"original_price": 30,

"model_sku": "sku-black",

"seller_stock": [
{
"stock": 300
}
]}]}

2. Thêm biến thể thay đổi cấu trúc cấp

Tình huống 2: Sản phẩm đã định nghĩa thông số màu sắc với màu đỏ và xanh, bây giờ cần thêm thông số kích cỡ với các kích cỡ L và XL.

Tình trạng biến thể ban đầu:

tier_indexoptionmodel_id
tier_index[0]red10000
tier_index[1]blue20000

Tình trạng biến thể sau khi thay đổi:

tier_indexoptionmodel_id
tier_index[0,0]red,L-
tier_index[0,1]red,XL-
tier_index[1,0]blue,L-
tier_index[1,1]blue,XL-

*Vì cấu trúc cấp đã thay đổi, thông tin model ban đầu sẽ bị xóa sau khi gọi API: v2.product.init_tier_variation, nghĩa là model_id: 10000 và model_id: 20000 ban đầu sẽ không còn hiệu lực.

API: v2.product.init_tier_variation

Ví dụ yêu cầu:

Json

{

"item_id": 100918691,

"tier_variation": [

{

"option_list": [

{

"option": "red"

},

{

"option": "blue"

}

],

"name": "color"

},

{

"option_list": [

{

"option": "L"

},

{

"option": "XL"

}

],

"name": "size"

}

],

"model": [

{

"original_price": 10,

"model_sku": "sku-red-L",

"normal_stock": 100,

"tier_index": [0,0]

},

{

"original_price":20,

"model_sku": "sku-red-XL",

"normal_stock":200,

"tier_index": [0,1]

},

{

"original_price":30,

"model_sku": "sku-blue-L",

"normal_stock":300,

"tier_index": [1,0]

},

{

"original_price":40,

"model_sku": "sku-blue-XL",

"normal_stock":400,

"tier_index": [1,1]

}

]

}

3. Xóa biến thể với cùng cấu trúc cấp

Tình huống 3: Sản phẩm đã định nghĩa thông số màu sắc với màu đỏ, xanh và đen, bây giờ cần xóa màu xanh.

Tình trạng biến thể ban đầu:

tier_indexoptionmodel_id
tier_index[0]red10000
tier_index[1] (Cần xóa)blue (Cần xóa)20000
tier_index[2]black30000

Vì để xóa màu xanh, tier_index sau khi xóa chỉ có thể là tier_index[0], tier_index[1], nên cần ghi đè thông tin biến thể tại tier_index[1] bằng thông tin biến thể màu đen.

Tình trạng biến thể sau khi xóa:

tier_indexoptionmodel_id
tier_index[0]red10000
tier_index[1]black30000

API: v2.product.update_tier_variation để xóa tùy chọn và ghi đè thông tin model đồng thời.

Ví dụ yêu cầu:

Json

{

"item_id": 800250275,

"tier_variation": [

{

"name": "color",

"option_list": [

{

"option": "red"

},

{

"option": "black"

}

]

}

],

"model_list": [

{

"tier_index": [0],

"model_id": 10000

},

{

"tier_index": [1],

"model_id": 30000

}

]

}

Tình huống 4: Sản phẩm đã định nghĩa thông số màu sắc và kích cỡ, màu là đỏ, xanh, kích cỡ là L, XL, bây giờ cần xóa tất cả biến thể màu xanh.

Tình trạng biến thể ban đầu:

tier_indexoptionmodel_id
tier_index[0,0]red,L10000
tier_index[0,1]red,XL20000
tier_index[1,0] (Cần xóa)blue,L (Cần xóa)30000
tier_index[1,1] (Cần xóa)blue,XL (Cần xóa)40000

API: v2.product.update_tier_variation để xóa cả tùy chọn và thông tin model đồng thời.

Ví dụ yêu cầu:

Json

{

"item_id": 800250275,

"tier_variation": [

{

"name": "color",

"option_list": [

{

"option": "red"

}

]

},

{

"name": "size",

"option_list": [

{

"option": "L"

},

{

"option": "XL"

}

]

}

],

"model_list": [

{

"tier_index": [0,0],

"model_id": 10000

},

{

"tier_index": [0,1],

"model_id": 20000

}

]

}

Tình trạng biến thể sau khi xóa:

tier_indexoptionmodel_id
tier_index[0,0]red,L10000
tier_index[0,1]red,XL20000
tier_index[1,0]--
tier_index[1,1]--

4. Xóa biến thể thay đổi cấu trúc cấp

Tình huống 5: Sản phẩm đã định nghĩa thông số màu sắc và kích cỡ, màu là đỏ, xanh, kích cỡ là L, XL, bây giờ cần xóa tất cả màu sắc.

Tình trạng biến thể ban đầu:

tier_indexoptionmodel_id
tier_index[0,0]red,L10000
tier_index[0,1]red,XL20000
tier_index[1,0]blue,L30000
tier_index[1,1]blue,XL40000

Tình trạng biến thể sau khi xóa:

tier_indexoptionmodel_id
tier_index[0]L-
tier_index[1]XL-

API: v2.product.init_tier_variation

Ví dụ yêu cầu:

Json

{

"item_id": 100918691,

"tier_variation": [

{

"option_list": [

{

"option": "L"

},

{

"option": "XL"

}

],

"name": "size"

],

"model": [

{

"original_price": 10,

"model_sku": "sku-L",

"normal_stock": 100,

"tier_index": [0]

},

{

"original_price":20,

"model_sku": "sku-XL",

"normal_stock":200,

"tier_index": [1]

} ]

}

5. Thay đổi thứ tự biến thể

Tình huống 6: Mặt hàng đã định nghĩa thông số màu sắc với màu đỏ và xanh. Bây giờ cần thay đổi thứ tự màu thành xanh, đỏ, giữ nguyên thông tin biến thể ban đầu.

Tình trạng biến thể ban đầu:

tier_indexoptionmodel_id
tier_index[0]red10000
tier_index[1]blue20000

Tình trạng biến thể sau khi thay đổi:

tier_indexoptionmodel_id
tier_index[0]blue20000
tier_index[1]red10000

API: v2.product.update_tier_variation

Ví dụ yêu cầu:

Json

{

"item_id": 800250275,

"tier_variation": [

{

"name": "color",

"option_list": [

{

"option": "blue"

},

{

"option": "red"

}

]

}

],

"model_list": [

{

"tier_index": [0],

"model_id": 20000

},

{

"tier_index": [1],

"model_id": 10000

}

]

}

6. Thay đổi tên tùy chọn của biến thể

Tình huống 7: Mặt hàng đã định nghĩa thông số màu sắc với màu đỏ và xanh. Bây giờ cần đổi tên màu thành red-A, blue.

Tình trạng biến thể ban đầu:

tier_indexoptionmodel_id
tier_index[0]red10000
tier_index[1]blue20000

Tình trạng biến thể sau khi thay đổi:

tier_indexoptionmodel_id
tier_index[0]red-A10000
tier_index[1]blue20000

API: v2.product.update_tier_variation

Ví dụ yêu cầu:

Json

{

"item_id": 800250275,

"tier_variation": [

{

"name": "color",

"option_list": [

{

"option": "red-A"

},

{

"option": "blue"

}

]

}

],

"model_list": [

{

"tier_index": [0],

"model_id": 10000

},

{

"tier_index": [1],

"model_id": 20000

}

]

}

Tóm tắt

  1. Chức năng của API v2.product.init_tier_variation: bao gồm thay đổi biến thể 0 cấp thành 1 cấp / 0 cấp thành 2 cấp / 1 cấp thành 2 cấp / 2 cấp thành 1 cấp.

  2. Chức năng của API v2.product.update_tier_variation: bao gồm thêm/xóa/cập nhật các tùy chọn. Nếu bạn vẫn muốn giữ nguyên thông tin biến thể ban đầu, hãy dùng trường model_list.

  3. Chức năng của API v2.product.add_model là thêm thông tin model mới; chức năng của API v2.product.delete_model là xóa thông tin biến thể.

  4. Người bán đã nâng cấp CNSC và KRSC chỉ có thể thêm/xóa biến thể qua sản phẩm toàn cầu, vì vậy hãy dùng API sản phẩm toàn cầu để quản lý, nếu không sẽ báo lỗi.

API Sản phẩm toàn cầuAPI Sản phẩm
v2.global_product.init_tier_variationv2.product.init_tier_variation
v2.global_product.update_tier_variationv2.product.update_tier_variation
v2.global_product.add_global_modelv2.product.add_model
v2.global_product.delete_global_modelv2.product.delete_model