注册/编辑商品
更新时间: 2025-04-11 19:03:00 访问次数:25981
接口说明
本接口用于实现注册商品功能。
1.注册商品
2.编辑商品:入参中的商品编码productCode+规格specification+进口国 在万邑联已经存在,则被判定的编辑商品的调用
假设万邑联已注册商品编码ABC、规格空、中文名称上衣,此时调用接口,入参:编码ABC、规格空、英文名称T-Shirt,那么万邑联该商品的信息变更为:编码ABC、规格空、英文名称T-Shirt
注意:新数据全量覆盖旧数据,请谨慎操作
3.若使用此接口批量注册商品,单次最多支持500个,其中有一个失败则全部失败
使用场景
客户新商品注册、编辑商品信息
接口名称
registerProduct
请求说明
| 请求内容 | 说明 |
|---|---|
| URL | https://openapi.winit.com.cn/openapi/service |
| 接口测试 | https://sandboxopenapi.winit.com.cn/openapi/service |
| 验证方法 | Token,md5 |
| 格式 | json |
| 字符编码 | UTF-8 |
| http请求方式 | http |
| 请求数限制 | 默认每分钟1000,1000有需要可申请加大。 |
请求入参
| 名称 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
| productCode | String(120) | Y | 商品编码 提交后不可变更,不可删除 | SKU001 |
| specification | String(120) | N | 商品规格 使用需权限 ,后续不再开放申请 |
|
| chineseName | String(255) | Y | 中文名称 | |
| englishName | String(255) | Y | 英文名称 | |
| registeredLength | Numeric(10,2) | Y | 注册商品长度值 | 99 |
| registeredWidth | Numeric(10,2) | Y | 注册商品宽度值 | 99 |
| registeredHeight | Numeric(10,2) | Y | 注册商品高度值 | 99 |
| registeredWeight | Numeric(10,2) | Y | 注册重量值 | |
| registerUnit | String(2) | N | 注册重量单位:g,kg 不传默认是g |
kg |
| fixedVolumeWeight | String(1) | Y | 重量体积是否固定,请传固定值Y | Y |
| branded | String(1) | Y | 是否有品牌,Y/N | Y |
| brandedName | String(127) | O | 品牌名称 当branded为Y时,必填 |
HHG |
| model | String(127) | O | 型号 当branded为Y时,必填 | HG |
| displayPageUrl | String(1000) | Y | 商品链接 | www.demo_icon.com |
| isSiManager | String(1) | Y | 商品管理方式 Y:单品化管理 N:商品化管理 不传默认取[万邑联-个人中心-偏好设置]中商品偏好的配置 注意修改商品时也会按以上逻辑取值 |
Y |
| itemThirdVos | Object | N | 第三方商品条码信息数据list | **** |
| – skuCodeThird | String(50) | N | 第三方商品条码 | KB0123458-test |
| – description | String() | N | 第三方商品条码的说明 | null |
| – countryCode | String(2) | N | 第三方商品条码的国家编码,国家2字码 未开通国家级第三方商品条码权限不允许填写,开通权限则必填 |
US |
| isBarcodeInvType | String(1) | N | 是否条码值管理库存,Y/N Y是,N否, 传空是不更新 使用需联系客服开启权限 |
N |
| exportCountry | String(22) | Y | 出口国家,二字码 | CN |
| exportDeclaredvalue | Numeric(10,2) | Y | 出口申报价(USD) | 34 |
| inporCountry | String(22) | Y | 进口国家,二字码 | AU |
| inportDeclaredvalue | Numeric(10,2) | Y | 进口申报价(USD) | 33 |
| exportValueForImport | Numeric(10,2) | N | 进口国出口申报价(USD) 默认为0 |
34 |
| battery | String(1) | Y | 是否有电池,Y/N | Y |
| batteryTypeId | Int | O | 电池种类 1:锂离子电池 2:锂金属电池 3:非锂电池 当battery字段是否有电池为Y时,必填 |
1 |
| batteryPackId | Int | O | 电池包装 4:纯电 5:内置 6:外置 当battery是否有电池为Y时,必填 |
4 |
| batteryPower | Int | O | 电池功率WH 当battery是否有电池为Y时,必填 |
100 |
| batteryGroupId | int | O | 电池芯/电池组 9:电池芯 10:电池组 当battery是否有电池为Y时,必填 |
|
| batteryWeight | Numeric(16,4) | O | 电池重量(kg) 当battery是否有电池为Y时,必填 |
|
| isPackingMaterial | String(1) | N | 是否为包材, Y/N 不传默认为N,使用需联系客服开启权限 |
N |
| isWithPowder | String(64) | N | 是否带粉末, Y/N | |
| isWithLiquid | String(1) | N | 是否带液体, Y/N | |
| isWithMagnetism | String(64) | N | 是否带磁性, Y/N | |
| isFood | String(1) | N | 是否食品, Y/N | |
| isHaveAllergen | String(1) | O | 是否有过敏源, Y/N 是否食品为Y时,必填 | |
| allergens | String(128) | O | 过敏源,多个逗号分开 是否有过敏源为Y时,必填 A1:含麸质的谷类食品 A2:甲壳类动物及其制品 A3:鸡蛋及其制品 A4:鱼类及其制品 A5:花生及其制品 A6:牛奶及其制品 A7:坚果 A8:芹菜及其制品 A9:芥末及其制品 A10:芝麻及其制品 A11:二氧化硫和亚硫酸盐 A12:羽扇豆及其制品 A13:软体动物及其制品 A14:大豆及其制品 |
A1,A2 |
| ownerCode | String(30) | N | 货主 仅支持支持英文、数字组合 |
|
| remark | String(255) | N | 备注 | e |
| packaging | String(120) | N | 入库包装类别 LOGISTICS:物流包装 SALES:销售包装 NUDE_CARGO:裸货 不填写默认LOGISTICS物流包装 |
LOGISTICS |
| itemPackagingMaterial | String() | Y | 入库包装材质 CARTON:通用纸箱 COURIER:快递袋 BUBBLE:气泡袋 WOVEN:编织袋 METAL:金属容器 CORTICAL:皮质 FOAM:泡沫箱 PLASTIC:塑料袋 ELSE:其他 |
CARTON |
| itemShape | String() | Y | 入库商品形状 STRIP:规则长条形 SQUARE:规则方形 ROUND:规则圆形 IRREGULAR:不规则形状 |
STRIP |
| outPackagingType | String(20) | N | 出库包装类别(单一订单) NO:不指定加包装 PACKAGING_WINIT:WINIT标准包装 CUSTOM_LOGISTICS:客制物流包装 CUSTOM_SALE:客制销售包装 |
NO |
| packagingMethod | String(120) | N | 出库包材类型(单一订单) COURIER_SATCHEL:快递袋 PADDED_ENVELOPE:气泡袋 CARTON_BOX:纸箱 NO:不指定加包装 不填写默认“为空”(若选择了outPackagingType出库包装类别为PACKAGING_WINIT,并且packagingMethod出库包材类型为空,则按照快递袋→纸箱的优先顺序自动匹配合适的包装方式进行发货) |
CARTON_BOX |
| outPackagingSku | String(60) | N | 出库指定包材SKU(单一订单) 若outPackagingType出库包装类别为客制包装,需填写 |
SKU001 |
| outPackagingTypeMulti | String(50) | N | 出库包装类别(复合订单) NO:不指定加包装 PACKAGING_WINIT:WINIT标准包装 CUSTOM_LOGISTICS:客制物流包装 CUSTOM_SALE:客制销售包装 |
NO |
| packagingMethodMulti | String(30) | N | 出库包材类型(复合订单) COURIER_SATCHEL:塑料袋 PADDED_ENVELOPE:气泡袋 CARTON_BOX:纸箱 NO:不指定加包装 不填写默认“为空”(若选择了outPackagingTypeMulti出库包装类别为PACKAGING_WINIT,并且packagingMethodMulti出库包材类型为空,则按照快递袋→纸箱的优先顺序自动匹配合适的包装方式进行发货) |
COURIER_SATCHEL |
| outPackagingSkuMulti | String(30) | N | 出库指定包材sku(复合订单) 若outPackagingTypeMulti出库包装类别为客制包装,需填写 |
Sku001 |
| outPackagingTypeII | String(20) | N | 第二层包装信息>出库包装类别(单一订单), CANNEL_PACKAGE:清除第二层包装类别信息 PACKAGING_WINIT:WINIT标准包装 CUSTOM_LOGISTICS:客制物流包装 CUSTOM_SALE:客制销售包装 需启用双层包装服务,第一层必须指定出库包装信息; |
|
| packagingMethodII | String(120) | N | 第二层包装信息>出库包材类型(单一订单) COURIER_SATCHEL:快递袋 PADDED_ENVELOPE:气泡袋 CARTON_BOX:纸箱 CANNEL_PACKAGE:清除第二层包材类型信息 需启用双层包装服务,第一层必须支持出库包装信息; |
|
| outPackagingSkuII | String(60) | N | 第二层包装信息>出库指定包材SKU(单一订单) 若outPackagingTypeII出库包装类别为客制包装,需填写 |
|
| outPackagingTypeMultiII | String(50) | N | 第二层包装信息>出库包装类别(复合订单) CANNEL_PACKAGE:清除第二层包装类别信息 PACKAGING_WINIT:WINIT标准包装 CUSTOM_LOGISTICS:客制物流包装 CUSTOM_SALE:客制销售包装 需启用双层包装服务,第一层必须指定出库包装信息; |
|
| packagingMethodMultiII | String(30) | N | 第二层包装信息>出库包材类型(复合订单) COURIER_SATCHEL:塑料袋 PADDED_ENVELOPE:气泡袋 CARTON_BOX:纸箱 CANNEL_PACKAGE:清除第二层包材类型信息 需启用双层包装服务,第一层必须指定出库包装信息; |
|
| outPackagingSkuMultiII | String(30) | N | 第二层包装信息>出库指定包材sku(复合订单) 若outPackagingTypeMultiII出库包装类别为客制包装,需填写 |
|
| outPackagingTypeIII | String(20) | N | 第三层包装信息>出库包装类别(单一订单) CANNEL_PACKAGE:清除第二层包装类别信息 PACKAGING_WINIT:WINIT标准包装 CUSTOM_LOGISTICS:客制物流包装 CUSTOM_SALE:客制销售包装 需启用三层包装服务,第二层必须指定出库包装信息; |
NO |
| packagingMethodIII | String(120) | N | 第三层包装信息>出库包材类型(单一订单) COURIER_SATCHEL:快递袋 PADDED_ENVELOPE:气泡袋 CARTON_BOX:纸箱 CANNEL_PACKAGE:清除第二层包材类型信息 需启用三层包装服务,第二层必须指定出库包装信息; |
CARTON_BOX |
| outPackagingSkuIII | String(60) | N | 第三层包装信息>出库指定包材SKU(单一订单) 若outPackagingTypeIII出库包装类别为客制包装,需填写 |
SKU001 |
| outPackagingTypeMultiIII | String(50) | N | 第三层包装信息>出库包装类别(复合订单) CANNEL_PACKAGE:清除第二层包装类别信息 PACKAGING_WINIT:WINIT标准包装 CUSTOM_LOGISTICS:客制物流包装 CUSTOM_SALE:客制销售包装 需启用三层包装服务,第二层必须指定出库包装信息; |
NO |
| packagingMethodMultiIII | String(30) | N | 第三层包装信息>出库包材类型(复合订单) COURIER_SATCHEL:塑料袋 PADDED_ENVELOPE:气泡袋 CARTON_BOX:纸箱 CANNEL_PACKAGE:清除第二层包材类型信息 需启用三层包装服务,第二层必须指定出库包装信息; |
COURIER_SATCHEL |
| outPackagingSkuMultiIII | String(30) | N | 第三层包装信息>出库指定包材sku(复合订单) 若outPackagingTypeMultiIII出库包装类别为客制包装,需填写 |
Sku001 |
| carryLabelVos | Object | N | 携带标签list | **** |
| – labelCode | String() | N | 标签编码 FIRE_SAFETY_LABEL:UM标签-防火标 DANGEROUS_LABEL:9类危险品标 FRAGILE_LABEL:易碎品标 FRONT_UP_LABEL:正面朝上标 CAO_LABEL:只上货机标 EXPORT_LIMIT:限制出口 SURFACE_MAIL_ONLY:只限陆运 CE_LABEL:CE标(已停用CE标) |
|
| – labelValue | String(1) | N | 标签值,Y/N Y:含有该标签 N:不含有该标签 |
N |
| isBatchManager | String(1) | N | 是否批次管理,Y/N 使用需联系客服开启权限 |
N |
| batchManagerType | String(50) | O | 批次管理类型 SHELF_LIFE_MANAGEMENT:保质期管理 INBOUND_BATCH_MANAGEMENT:入库批次管理 PRODUCTION_BATCH_MANAGEMENT:生产批次管理 当isBatchManager是否批次管理为Y时,必填 |
|
| batchAttributeType | String(50) | O | 批次属性类型 PD:生产日期 PDPB:生产日期+产品批次号 ED:失效日期 EDPB:失效日期+产品批次号 ID:入库日期 当isBatchManager是否批次管理为Y时,必填 保质期管理时,支持:PD、PDPB、ED、EDPB 生产批次管理时,支持:PD、PDPB 入库批次管理时,支持:ID |
PDPB |
| shelfLifeValue | int | O | 保质期 根据保质期单位设置,例如: 单位为YEAR, 保质期为1, 代表是1年 当batchManagerType批次管理类型为保质期管理时,必填 |
2 |
| shelfLifeUnit | String(10) | O | 保质期单位 YEAR:年 MONTH:月 DAY:日 当batchManagerType批次管理类型为保质期管理时,必填 |
YEAR |
| alertDays | int | O | 预警天数 距离失效日期X天预警提醒 当batchManagerType批次管理类型为保质期管理时,必填 |
30 |
| prohibitSaleDays | int | O | 禁售天数 距离失效日期X天禁止出库,必须小于预警天数 当batchManagerType批次管理类型为保质期管理时,必填 |
10 |
| batchPictureUrl | String(120) | N | 批次信息示意图链接 供仓库作业参考采集实物批次信息 |
www.baidu.com/img/ |
| customExtensionField1 | String(240) | O | 自定义字段商品信息1 万邑联偏好配置启用自定义字段1后支持注册提供,未配置则自动忽略. 是否必填取配置; |
|
| customExtensionField2 | String(240) | O | 自定义字段商品信息2 万邑联偏好配置启用自定义字段1后支持注册提供,未配置则自动忽略. 是否必填取配置; |
|
| customExtensionField3 | String(240) | O | 自定义字段商品信息3 万邑联偏好配置启用自定义字段1后支持注册提供,未配置则自动忽略. 是否必填取配置; |
请求示例
{"action": "registerProduct","app_key": "rebecca","client_id": "ODJKMDU1YZCTYJQ5YY00ZWZLLTK5N2QTOWY4MZI5OGMWNDG2","client_sign": "56C2FEE2AF1017B6CEFB91C32EA5A07D","data": {"productList": [{"productCode": "12345678","chineseName": "PowerBuyerDEF456","englishName": "34BayItemI34245","registeredWeight": "2","registeredLength": "4","registeredWidth": "4","registeredHeight": "4","fixedVolumeWeight": "Y","branded": "Y","brandedName": "HHG","model": "HG","displayPageUrl": "www.demo_icon.com","remark": "e","exportCountry": "CN","exportDeclaredvalue": "34","inporCountry": "AU","inportDeclaredvalue": "33","battery": "N","isSiManager": "Y","packaging": "LOGISTICS","packagingMethod": "CARTON_BOX","itemShape": "","itemPackagingMaterial": "CARTON","carryLabelVos": [{"labelCode": "CE_LABEL","labelValue": "Y"},{"labelCode": "DANGEROUS_LABEL","labelValue": "N"},{"labelCode": "FRAGILE_LABEL","labelValue": "N"},{"labelCode": "FRONT_UP_LABEL","labelValue": "N"}],"itemThirdVos": [{"description": "null"}],"ownerCode": "A11000"}]},"format": "json","language": "zh_CN","platform": "OWNERERP","sign": "A2CAAD14EFE8FB0074F20A240C85CE73","sign_method": "md5","timestamp": "2015-06-16 00:19:26","version": "1.0"}
返回出参
返回参数说明:正确的返回编码code:0及结果data,错误的返回错误码及错误信息msg。
| 名称 | 类型 | 必传 | 说明 | 示例 |
|---|---|---|---|---|
| productCode | String(80) | N | 成功时返回,商品sku | |
| row | String() | N | 失败时返回,行数 | |
| errorMessages | String() | N | 失败时返回,详细错误描述 |
返回示例
1.成功
{"code": 0,"msg": "操作成功","data": [{"productCode": "1234567test2"},{"productCode": "1234567test"}]}
2.失败
{"code": "02010250185","msg": "商品注册失败","data": [{"row":"1","errorMessages":"错误描述"),{"row":"2","errorMessages":"错误描述2"}}
