合作伙伴系统向苏宁卡系统下单,苏宁卡系统受理后返回苏宁卡号、金额、密钥等信息。
名称 | 类型 | 是否必须 | 示例值 | 描述 |
---|---|---|---|---|
appMethod | String | Y | suning.custom.category.query | 方法名 |
appRequestTime | String | Y | 2012-04-25 20:23:30 | 时间戳,格式为yyyy-MM-dd HH:mm:ss,例如:2012-04-25 20:23:30。API服务端允许客户端请求时间误差为10分钟。 |
format | String | N | XML | 默认xml,可指定格式为xml,json |
appKey | String | Y | b0c332a133c102765f39de********** | 分配给应用的访问令牌 |
versionNo | String | Y | v1.2 | API的版本,目前为v1.2版本 |
signInfo | String | Y | 460d7ff15b073e463125b4********** | appSecret,appMethod ,appRequestTime, appKey, versionNo, 请求报文base64加密后的数据顺序MD5(32位小写),其中appSecret为appKey对应的密钥 |
access_token | String | N | a1c5c62b08df3a3cbf7efd********** | 采用OAuth授权方式为必填参数 |
名称 | 类型 | 是否必须 | 示例值 | 描述 |
---|---|---|---|---|
service | String | Y | cardSaleAgent | 服务名,固定值:cardSaleAgent |
orderTime | String | Y | 20160101123030 | 下单时间,如:20160101123030只受理±5分钟内的交易请求,防止历史交易重放修改交易结果 |
partnerOrderNo | String | Y | 123 | 合作伙伴系统单号 |
bizType | String | Y | 01 | 01:储值卡卡密获取;02:绑定至用户账户;03:(暂不提供服务);04:提货券卡密获取; |
channel | String | N | ABC | 合作伙伴二级渠道来源,根据场景与苏宁约定传值; 业务类型02、03时必填; |
smsTempNo | String | Y | smstemp | 业务类型为02、03时可传值; 绑定/充值成功后的用户消息通知模板,为空时使用默认模板; |
userName | String | N | 15951772789 | 业务类型为02、03时传值; 用户苏宁易购账户的登录名(建议传手机号码),苏宁卡将会绑定至该用户账户 |
idCard | String | N | 122122918819928331 | 当业务类型为02、03且单张卡金额超过1000元时,必传; |
name | String | N | 张三 | 当业务类型为02、03且单张卡金额超过1000元时,必传; |
autoRegiste | String | N | 0 | 业务类型为02、03时传值,表示如果userName传入的手机号码不是苏宁易购会员时,是否为该手机号码自动注册为苏宁易购会员; 0:不注册;1:自动注册;传空时默认为不注册; 对autoRegiste传值为1的请求,将校验该合作伙伴是否有自动注册权限;如手机号码不是苏宁易购会员、且该合作伙伴无自动注册权限的,将不予自动注册,改为短信发送卡号、密码至该手机(此处的短信为统一模板,与smsTempNo字段无关) |
productNo | String | Y | 1001 | 合作的产品类型,根据双方合作协议上签订的产品、苏宁方提供传值内容,如通卡为:1001 |
amount | String | Y | 100 | 金额单位:分; 业务类型为01时,传值范围:1-100000,即单张卡最大面值1000元; 业务类型为02、03时,传值范围1-500000,即单张卡最大面值5000元; |
quantity | String | Y | 1 | 数量,范围1-100;当业务类型为02、03时,传值必须为1; |
partner | String | Y | SNYG | 由苏宁提供传值内容,如:SNYG |
format | String | N | json | 传xml或json,默认返回xml格式 |
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
respCode | String | 0000 | 返回码 |
message | String | 失败 | 返回信息 |
partnerOrderNo | String | 123 | 合作伙伴单号 |
orderNo | String | 1111 | 订单号 |
cardList | String | ||
cardNo | String | 1111 | 苏宁卡卡号 |
password | String | QWda | 业务类型为01时加密返回 |
amount | String | 100 | 卡号对应的面值,金额单位:分 |
cardCatalogName | String | 家电百货卡 | 卡券产品名称,如:家电百货卡 |
<sn_request> <sn_body> <getCardsale> <amount>100</amount> <partnerOrderNo>123</partnerOrderNo> <bizType>01</bizType> <quantity>1</quantity> <idCard>122122918819928331</idCard> <channel>ABC</channel> <format>json</format> <smsTempNo>smstemp</smsTempNo> <userName>15951772789</userName> <autoRegiste>0</autoRegiste> <orderTime>20160101123030</orderTime> <partner>SNYG</partner> <service>cardSaleAgent</service> <name>张三</name> <productNo>1001</productNo> </getCardsale> </sn_body> </sn_request>
{ "sn_request": { "sn_body": { "getCardsale": { "amount": "100", "partnerOrderNo": "123", "bizType": "01", "quantity": "1", "idCard": "122122918819928331", "channel": "ABC", "format": "json", "smsTempNo": "smstemp", "userName": "15951772789", "autoRegiste": "0", "orderTime": "20160101123030", "partner": "SNYG", "service": "cardSaleAgent", "name": "张三", "productNo": "1001" } } } }
<sn_responseContent> <sn_body> <getCardsale> <cardList> <password>QWda</password> <amount>100</amount> <cardCatalogName>家电百货卡</cardCatalogName> <cardNo>1111</cardNo> </cardList> <partnerOrderNo>123</partnerOrderNo> <orderNo>1111</orderNo> <message>失败</message> <respCode>0000</respCode> </getCardsale> </sn_body> </sn_responseContent>
{ "sn_responseContent": { "sn_body": { "getCardsale": { "cardList": [ { "password": "QWda", "amount": "100", "cardCatalogName": "家电百货卡", "cardNo": "1111" } ], "partnerOrderNo": "123", "orderNo": "1111", "message": "失败", "respCode": "0000" } } } }
异常码 | 错误描述 | 解决方案 |
---|---|---|
biz.custom.getcardsale.missing-parameter:* | 参数必填 | 请检查此参数的值,*号表示参数字段名 |
biz.custom.getcardsale.format-error:* | 参数格式错误 | 请检查此参数的值,*号表示参数字段名 |
biz.handler.data-get:no-result | 查询没结果 | 请检查查询参数 |
isp.sys.service.unavailable.spcs | 服务不可用 | 请联系苏宁技术人员 |
异常码 | 错误描述 | 解决方案 |
---|---|---|
sys.check.user-permission:inexistence | 访问令牌不存在 | 更换访问令牌 |
sys.check.user-permission:overdue | 访问令牌已过期 | 请使用刷新令牌刷新 |
sys.check.api-permission:inexistence | Api方法不存在 | 请参考帮助中心 |
sys.check.api-permission:overdue | Api方法已过期 | 请参考帮助中心 |
sys.check.method-permission:authority | 无权操作此api | 确认是否有访问该方法权限 |
sys.auth.vendor-request:errory | 无权操作此供应商 | 请确认供应商编码是否正确 |
sys.controller.api-request:limit | Api请求受控 | 超过请求次数 |
sys.check.app-time:error | 请求参数错误api请求时间误差大 | 参考帮助中心 |
sys.check.request-params:error | 请求报文结构错误 | 参考帮助中心、日期格式等 |
sys.check.starttime-format:error | 请求开始时间错误 | 参考帮助中心、日期格式等 |
biz.handler.data-get:success | 业务数据查询成功 | 无 |
biz.handler.data-get:fail | 业务数据查询失败 | 检查请求条件 |
biz.handler.data-get:no-result | 业务数据结果为空 | 无 |
sys.check.pageno-format:error | pageNo格式错误,只允许1到99999之间的整数 | 检查pageNo输入是否有误 |
sys.check.pagesize-format:error | pageSize格式错误,只允许1到50之间的整数(订单相关是1到100) | 检查pageSize输入是否有误 |
sys.check.page-param:error | pageNo或者pageSize不在要求范围内,pageNo只允许1到99999之间的整数,pageSize只允许1到50之间的整数(订单相关是1到100) | 检查pageNo和pageSize输入是否有误 |
sys.check.miss-time:starttime | 不存在开始时间(节点) | 检查输入 |
sys.check.miss-time:endtime | 不存在结束时间(节点) | 检查输入 |
sys.check.starttime-value:null | 开始时间为空(值) | 检查输入 |
sys.check.endtime-value:null | 结束时间为空(值) | 检查输入 |
sys.check.starttime-format:error | 校验开始时间不合法,格式yyyy-MM-dd HH:mm:ss | 检查时间格式 |
sys.check.endtime-format:error | 校验结束时间不合法,格式yyyy-MM-dd HH:mm:ss | 检查时间格式 |
sys.check.query-time:error | 开始时间是否小于结束时间 | 检查开始和结束时间大小 |
sys.check.query-time:outofrange | 时间查询是否超出指定范围 | 检查时间范围 |
sys.check.app-sign:null | 签名信息为空 | 检查签名信息 |
sys.check.app-sign:error | 签名信息错误 | 检查签名信息 |
sys.check.missing-parameter:apiversion | API版本号未指定 | 检查API版本号 |
sys.check.missing-parameter:appRequestTime | 请求时间丢失 | 检查请求时间 |
sys.check.missing-nestElement:sn_body | 缺少sn_body节点 | 检查sn_body是否存在 |
sys.check.user-permission:inexistence | 用户key不存在 | 检查用户key是否存在 |
biz.handler.batch-handler:no-support | 非查询类API不支持批量操作 | 检查API类型 |
biz.handler.request-message:error | 查询类API输入多个业务节点 | 检查业务节点 |
sys.check.header-param:null | header参数为空 | 请检查header参数 |
sys.controller.api-access:limit | 访问限制 | 无 |
sys.controller.api-frequency:limit | 访问频率限制 | 无 |
sys.error.network:failure | 网络异常 | 无 |
sys.error.network-status:? | 响应失败 ?为状态码 | 无 |
sys.check.snunionid.length.is.not:48 | 混淆会员编码长度不是48位 | 使用转换器转换混淆会员编码规定要求混淆会员编码48位 |