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_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] (Cần thêm) | black (Cần thêm) | - |
| tier_index[2] | blue | 20000 |
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_index | option | model_id |
|---|---|---|
| tier_index[0] | red | 10000 |
| tier_index[1] | blue | 20000 |
Tình trạng biến thể sau khi thay đổi:
| tier_index | option | model_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_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] (Cần xóa) | blue (Cần xóa) | 20000 |
| tier_index[2] | black | 30000 |
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_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] | black | 30000 |
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_index | option | model_id |
| tier_index[0,0] | red,L | 10000 |
| tier_index[0,1] | red,XL | 20000 |
| 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_index | option | model_id |
| tier_index[0,0] | red,L | 10000 |
| tier_index[0,1] | red,XL | 20000 |
| 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_index | option | model_id |
| tier_index[0,0] | red,L | 10000 |
| tier_index[0,1] | red,XL | 20000 |
| tier_index[1,0] | blue,L | 30000 |
| tier_index[1,1] | blue,XL | 40000 |
Tình trạng biến thể sau khi xóa:
| tier_index | option | model_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_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] | blue | 20000 |
Tình trạng biến thể sau khi thay đổi:
| tier_index | option | model_id |
| tier_index[0] | blue | 20000 |
| tier_index[1] | red | 10000 |
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_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] | blue | 20000 |
Tình trạng biến thể sau khi thay đổi:
| tier_index | option | model_id |
| tier_index[0] | red-A | 10000 |
| tier_index[1] | blue | 20000 |
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
-
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.
-
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.
-
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ể.
-
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.