来自 Shopee 官方资料快照 ·
- 当前资料结构化阅读页
- 固定快照已留存,可追溯
- 官方原文可核对
资料正文
§1 变体管理
Shopee支持定义最多两层规格的变体结构。变体总数不能超过50个。
例如商品有颜色规格,颜色为红色、蓝色,我们称这种变体层级结构为1-tier variation。
例如商品有颜色和尺寸规格,颜色为红色、蓝色,尺寸为L,XL,我们称这种变体层级结构为2-tier variation。
如果卖家在创建商品时就需要定义变体,请参考创建商品文章。
如果后续卖家创建商品后还需要管理变体,请参考本文。
管理变体的库存和价格,请参考价格库存管理文章。
§2 1.新增变体(不改变层级结构)
场景一:商品已经定义了颜色规格,颜色为红色、蓝色,现在需要添加黑色, 原来的变体保留。
变体情况
| tier_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] (待加) | black(待加) | - |
| tier_index[2] | blue | 20000 |
调用接口:v2.product.update_tier_variation + v2.product.add_model
1.1 调用v2.product.update_tier_variation接口添加黑色选项
请求参数例子:
{
"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 调用v2.product.add_model 接口为黑色的变体添加价格、库存、sku信息
请求参数例子:
{
"item_id": 800250275,
"model_list": [
{
"tier_index": [1],
"original_price": 30,
"model_sku": "sku-black",
"seller_stock": [
{
"stock": 300
}
]}]}
§3 2.新增变体(改变层级结构)
场景二:商品已经定义了颜色规格,颜色为红色、蓝色,现在需要添加尺寸规格,尺寸包括L、XL。
原变体情况
| tier_index | option | model_id |
|---|---|---|
| tier_index[0] | red | 10000 |
| tier_index[1] | blue | 20000 |
改变后变体情况
| 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 | - |
*因为层级已经发生变化,调用接口:v2.product.init_tier_variation后原来的model信息也会清空,即原来model_id:10000和model_id:20000将会失效。
调用接口:v2.product.init_tier_variation 重新定义层级
{
"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]
}
]
}
§4 3.删除变体(不改变层级结构)
场景三:商品已经定义了颜色规格,颜色为红色、蓝色、黑色,现在需要删除蓝色,原来的变体保留。
原变体情况
| tier_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] (To be deleted) | blue (To be deleted) | 20000 |
| tier_index[2] | black | 30000 |
因为要删除蓝色,删除后tier_index只能为tier_index[0]、tier_index[1] ,所以我们需要将tier_index[1] 位置的变体信息用黑色变体的信息覆盖。
删除后变体情况
| tier_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] | black | 30000 |
调用接口:v2.product.update_tier_variation 可以实现同时将option和model信息同时删除。
请求参数例子:
{
"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
}
]
}
场景四:商品已经定义了颜色和尺寸规格,颜色为红色、蓝色,尺寸为L、XL。现在需要删除蓝色的变体,原来的变体保留。
原变体情况
| tier_index | option | model_id |
| tier_index[0,0] | red,L | 10000 |
| tier_index[0,1] | red,XL | 20000 |
| tier_index[1,0] (To be deleted) | blue,L (To be deleted) | 30000 |
| tier_index[1,1] (To be deleted) | blue,XL (To be deleted) | 40000 |
调用接口:v2.product.update_tier_variation 可以实现同时将option和model信息同时删除。
请求参数例子:
{
"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
}
]
}
删除后变体情况
| 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] | - | - |
§5 4.删除变体(改变层级结构)
场景五:商品已经定义了颜色和尺寸规格,颜色为红色、蓝色,尺寸为L、XL。现在需要删除所有颜色的规格。
原变体情况
| 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 |
删除后变体情况
| tier_index | option | model_id |
| tier_index[0] | L | - |
| tier_index[1] | XL | - |
调用接口:v2.product.init_tier_variation
请求参数例子:
{
"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]
} ]
}
§6 5.改变变体顺序
场景六:商品已经定义了颜色规格,颜色为红色、蓝色。现在需要将颜色顺序改为蓝色,红色,原来的变体信息保留。
原变体情况
| tier_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] | blue | 20000 |
调整后变体情况
| tier_index | option | model_id |
| tier_index[0] | blue | 20000 |
| tier_index[1] | red | 10000 |
调用接口:v2.product.update_tier_variation
请求参数例子:
{
"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
}
]
}
§7 6.改变变体的选项名称
场景七:商品已经定义了颜色规格,颜色为红色、蓝色。现在需要将颜色名称改为红色-A、蓝色,原来的变体信息保留。
原变体情况
| tier_index | option | model_id |
| tier_index[0] | red | 10000 |
| tier_index[1] | blue | 20000 |
调整后变体情况
| tier_index | option | model_id |
| tier_index[0] | red-A | 10000 |
| tier_index[1] | blue | 20000 |
调用接口:v2.product.update_tier_variation
请求参数例子:
{
"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
}
]
}
§8 总结
1.涉及到修改变体层级结构,调用v2.product.init_tier_variation接口,包括0-tier variation改成1-tier variation / 0-tier variation改成2-tier variation /1-tier variation改成2-tier variation / 2-tier variation 改成1-tier variation。
2.涉及新增/删除/更新选项option,调用v2.product.update_tier_variation接口,如果需要保留原有model信息需要入参数model_list。
3.涉及新增model信息,调用v2.product.add_model接口,如果涉及删除model信息,调用v2.product.delete_model接口。
4.升级了CNSC和KRSC的卖家,只能通过全球商品新增/删除变体,所以请使用global product 接口进行管理,否则将会报错。以下是对应功能相等的global_product接口。
