商品升级
接口说明
- 用户对已购买的商品进行升级,升级订单付款成功后,云商店调用该接口请求商家升级用户购买的商品,商家接口需要执行商品升级,并返回通知云商店。
- 针对升级场景接口调用失败的情况,云商店会持续调用3小时后停止调用,期间商家可在“卖家中心>生产接口消息”页面单击对应订单右侧操作栏的“重新启动”进行手动重试。若商家接口问题在3小时调用时间内解决,则在下一次调用接口响应成功,订单开通成功;若商家接口问题在3小时调用后仍未解决,系统则判断订单为失败,并自动进行订单退订。
- 请及时关注商家信息中客服邮箱以及云商店账号绑定的邮箱的通知,收到调用失败通知邮件及时处理接口异常。
- 云商店会对接口异常的情况做监控,如SaaS商品频繁出现因接口异常的情况,云商店将对该商品做下架处理。
- 商品升级规则设置参考 通用商品升级。
商品升级流程如下图所示:
请求消息
请求参数说明请参见下表:
请求方法:GET
参数 |
是否必选 |
类型 |
最大字符长度 |
说明 |
---|---|---|---|---|
authToken |
M |
String |
50 |
安全校验令牌。 取值请参见authToken取值说明。 |
activity |
M |
String |
20 |
接口请求标识,用于区分接口请求场景。 升级场景取值:upgrade |
instanceId |
M |
String |
64 |
实例ID。
说明:
升级时,instanceId不变。 |
orderId |
M |
String |
64 |
升级后的新订单ID。
说明:
升级操作会产生新的订单,与新购时订单ID不一致,请通过instance Id做资源识别。 |
skuCode |
M |
String |
64 |
升级后产品规格标识。
说明:
对于自定义属性模板规格,如果租户升级时选择了其他属性值,instanceId对应的规格会发生变化,因此skuCode会变化; 如果仅扩容(调整增加线性属性值大小,例如:从当前的10用户增加到20用户),skuCode不变。 |
productId |
M |
String |
64 |
升级后产品ID。 如果skuCode变化,productId也会发生变化; 如果仅扩容,productId不变。 |
timeStamp |
M |
String |
20 |
请求发起时的时间戳,取UTC时间。 格式:yyyyMMddHHmmssSSS |
amount |
O |
Integer |
4 |
数量类型的商品定价属性。非必填。 属性名称:数量(支持商家自定义名称) 单位:个(次)
说明:
对于包周期或一次性计费的SaaS商品,租户下单购买包含“数量”线性属性的规格时,会填写及调整购买的个数或次数。 例如:30个用户 |
diskSize |
O |
Integer |
4 |
数量类型的商品定价属性。非必填。 属性名称:硬盘大小(支持商家自定义名称) 单位:GB
说明:
对于包周期或一次性计费的SaaS商品,租户下单购买包含“硬盘大小”线性属性的规格时,会填写及调整购买多少GB。 例如:100GB |
bandWidth |
O |
Integer |
4 |
数量类型的商品定价属性。非必填。 属性名称:带宽(支持商家自定义名称) 单位:Mbps
说明:
对于包周期或一次性计费的SaaS商品,租户下单购买包含“带宽”线性属性的规格时,会填写及调整购买多少Mbps。 例如:20Mbps |
testFlag |
O |
Integer |
1 |
是否调测数据。
|
请求消息示例:
https://example.isv.com?activity=upgrade&amount=6456&instanceId=huaweitest123456&orderId=CS1906666688ABCDE&productId=00301-666688-0-0&saasExtendParams=W3sibmFtZSI6ImlkTnVtIiwidmFsdWUiOiIzNTIyNTU1NTU1NTU2NTYifSx7Im5hbWUiOiJ1c2VyTmFtZSIsInZhbHVlIjoiaHVhd2VpMTIzIn0seyJuYW1lIjoiY3VzdEVtYWlsIiwidmFsdWUiOiIxMjNAaHVhd2VpLmNvbSJ9XQ==&skuCode=d0abcd12-1234-5678-ab90-11ab012aaaa1&testFlag=1&timeStamp=20191216013757582&authToken=a3Bl+C93xv3ENgm40ngyYvQnYcTS/pgY5ugl20wtzGg=
响应消息
响应参数说明请参见下表:
参数 |
是否必选 |
类型 |
最大字符长度 |
说明 |
---|---|---|---|---|
resultCode |
M |
String |
6 |
调用结果码。 具体请参见调用结果码说明。 |
resultMsg |
O |
String |
255 |
调用结果描述。 |
商家的服务器在处理接口请求时,需要做好幂等性处理。
云商店服务有可能重发请求,针对同一orderId,商家的服务器不应该重复做实例资源升级处理,返回成功响应即可。
响应消息示例:
{ "resultCode":"000000", "resultMsg":"success." }