微唯宝供应链开放接口说明文档 v3


1. 前言

2. 修改记录

修改问题 涉及功能 修改人 修改时间 说明
新增code 商品信息(spuId与skuId会唯一对应一个code) api开发组 2019-07-15
新增海淘商品 商品详情信息增加海淘字段 api开发组 2019-07-15
海淘商品下单 海淘商品下单需增加身份证信息 api开发组 2019-07-15
新增零售价 商品查询价格增加零售价字段 api开发组 2019-07-15
新增订单状态回调类型 退货退款审核提醒 api开发组 2019-07-15
使用国标区域ID 订单下单 api开发组 2019-10-15
订单状态回调增加退款单号 订单状态变更回调 api开发组 2020-01-07
支持限售区域商品 商品信息 api开发组 2020-01-15
退货退款支持自定义退款金额 订单退款 api开发组 2020-03-15
增加查询条件及返回总数 获取商品spu列表 api开发组 2020-04-15
预占库存增加收货地址ID 预占库存 api开发组 2020-06-01
退货退款回调流程优化 订单状态回调 api开发组 2020-06-01
新增商品变更记录 查询商品变更记录 api开发组 2020-09-15
获取商品SpuId列表查询 获取商品SpuId列表支持视频过滤 api开发组 2020-10-09
物流单号变更 变更回调 api开发组 2020-11-18
新增第三方订单号查询 第三方订单号查询 api开发组 2021-05-12

3. 接口使用流程

  1. 微唯宝 开发者中心 注册开发者账号,完善开发者相关信息, 申请 开发密钥 和 签名秘钥,申请通过后即可进行开发;
  2. 获取签名;
  3. 同步商品获取商品Id列表;
  4. 根据商品id查询商品详情并存入自身数据库;
  5. 订单下单;
  6. 订单状态确认;
  7. 订单详情;
  8. 订单物流信息;
  9. 售后流程走线下,具体联系相应对接业务负责人

3.1 流程图

此处输入图片的描述

4. 接口说明

企业云开放接口的返回数据为 JSON 格式,由以下三个字段组成:
code:状态码,取值有 0,10000;0 表示接口调用成功, 10000 表示接口调用失败
message:错误信息,当接口调用失败(状态码为 10000)时,返回的错误提示信息
data:返回数据,接口调用成功(状态码为 0)时返回的数据

4.1 获取签名

请求参数签名
示例:使用以下 appKey 和 appSecret 来签名请求参数:
{
"appKey ": "DRRT43F35F25F26F342DF2423S",
"appSecret": "R54BF542G7IYQW2ERDDSFR4FESFT"
}
注意:申请app需要同时设置访问IP白名单。

  1. 参数筛选
    获取所有请求参数(不包括字节类型参数,如文件、字节流),剔除参数名为 sign、key 的参数及参数值为""或 null 的参数。
    注意: 请不要将 appSecret 参数直接加入到请求参数中。

  2. 参数排序
    按照参数名第一个字符的键值 ASCII 码递增排序(字母升序排序),如果遇到相同字符则按照第二个字符的键值 ASCII 码递增排序,以此类推。

  3. 参数拼接
    将排序后的参数名与参数值,组合成“参数名=参数值”的格式,并把这些参数用 & 字符连接起来,此时生成的字符串为最初的待签名字符串。
    例如:

    {
    "appKey": "DRRT43F35F25F26F342DF2423S",
    "currentTime": 1545804554075,
    "skuId": 42,
    "pname": ""
    }
    经过 “参数筛选”,“参数排序”,“参数拼接” 得到如下字符串:
    appKey=DRRT43F35F25F26F342DF2423S&currentTime=1545804554075&skuId=42
    然后拼接 appSecret 后的最终的待签名字符串:
    appKey=DRRT43F35F25F26F342DF2423S&currentTime=1545804554075&skuId=42&R54BF542G7IYQW2ERD
    DSFR4FESFT

  4. 签名
    使用 md5()方法对最终的待签名字符串进行签名:
    md5('appKey=DRRT43F35F25F26F342DF2423S&currentTime=1545804554075&skuId=42&R54BF542G7IYQW2ER
    DDSFR4FESFT')

    md5后得到:8ab5e464b7a729d0db5748be7f5b16cd
    请求参数的签名结果(即 sign 参数的值)为:8ab5e464b7a729d0db5748be7f5b16cd

${path}
沙箱环境:http://supply.douhuomall.com/api/
正式环境:https://www.ycentury.com/api/

4.2 商品及基础信息接口

4.2.1 同步商品获取商品SpuId列表

简要描述: 同步商品获取商品SpuId列表
请求 URL:${path} /goods/getSpuIdList
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
pageIndex string 页码,默认 1
pageSize string 每页大小,默认 50,最大500
  1. {
  2. "code": 0,
  3. "data": {
  4. "spuIdList": ["90079", "90193", "90209", "90218", "90232"], //SPUID 列表
  5. "total": 10, //总数
  6. "pages": 1, //总页数
  7. "pageSize": 15, //每页大小
  8. "pageIndex": 1 //页码
  9. },
  10. "message": "success" //成功
  11. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.2.2 根据SPUID 查询SPU详情【不包含sku列表】

简要描述: 查询SPU详情【不包含sku列表】
请求 URL: ${path}/goods/getSpuDetail
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
spuIds string 一次最多请求50个spu,超过按50个算,用英文逗号分隔
  1. {
  2. "data": [
  3. {
  4. "spuId":"", //商品spuID
  5. "name":"", //商品名称
  6. "mainImgUrl":"", //SPU 主图
  7. "brandId":"12321", //品牌ID
  8. "status":"", //商品状态:0、已上架,1、已下架
  9. "categoryId":"231", //商品三级分类ID
  10. "detailInfo":"", //图文说明。仅详情页输出
  11. "transFee":0, //是否包邮:商品运费:0为买家承担,1为卖家承担
  12. "detailImgUrlList": ["http://xxx.jpg","http://xxx2.jpg"], //预览图地址列表, 商品轮播图
  13. "spuPropertyList": [{"name":"a","val":"1"},{"name":"b","val":"2"}], //商品属性
  14. "goodsAreaKbn":"1", //是否限制销售范围 0:无限制 1:有限制
  15. "goodsAreaList": [{"cityId":"640100","cityName":"银川市"},{"cityId":"640200","cityName":"石嘴山市"}], //允许销售的城市
  16. "goodsIslimit":"", //是否限制ID购买数量: 0-不限制 ,1-限制
  17. "goodsLimitNum":"", //每个ID限购数量,空表示不限购
  18. "videoUrl":"" //视频地址
  19. "crossBorder":"0", //是否海淘商品:0、境内,1、境外海淘
  20. }
  21. ],
  22. "message": "成功",
  23. "code": 0,
  24. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.2.3 根据SPUID 查询SKU列表

简要描述: 根据SPUID 查询SKU信息
请求 URL: ${path}/goods/getSkuListDetailBySpuId
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
spuId string spuId
  1. {
  2. "data": [{
  3. "skuId":"", //商品skuid
  4. "code":"", //商品编码
  5. "goodsLogo":"", //商品logo 【如果没有取spu主图】
  6. "status":"", //商品状态:0、已上架1、已下架
  7. "purchaseQty":"1", //起购数量
  8. "skuPropertyList":[{
  9. "name":"颜色", //规格属性名称
  10. "val":"红" //规格属性值
  11. },{
  12. "name":"尺寸",
  13. "val":"L"
  14. }]
  15. }]
  16. ,
  17. "message": "成功",
  18. "code": 0,
  19. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.2.4 查询品牌列表

简要描述: 查询品牌列表
请求 URL: ${path}/goods/findBrandList
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
pageIndex int 当前页 默认第一页
pageSize int 每页大小,默认 100 最大500
  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": {
  5. "brandList": [
  6. {
  7. "brandId": "58",
  8. "brandName": "碧浪",
  9. //品牌图片
  10. "brandLogo": "http://rs.380star.com/upload/gic/brand/4/ariel.jpg"
  11. },
  12. {
  13. "brandId": "583",
  14. "brandName": "佳洁士",
  15. "brandLogo": "http://rs.380star.com/upload/gic/brand/4/crest.jpg"
  16. },
  17. {
  18. "brandId": "599",
  19. "brandName": "潘婷",
  20. "brandLogo": "http://rs.380star.com/upload/gic/brand/4/pantene.jpg"
  21. },
  22. {
  23. "brandId": "214",
  24. "brandName": "苏菲",
  25. "brandLogo": "http://rs.380star.com/upload/gic/brand/4/sofy.jpg"
  26. },
  27. {
  28. "brandId": "604",
  29. "brandName": "沙宣",
  30. "brandLogo": "http://rs.380star.com/upload/gic/brand/4/vs.jpg"
  31. }
  32. ]
  33. }
  34. }

4.2.5 查询分类信息

简要描述: 不传则查询所有一级分类,反之则查询该分类下的子分类信息
请求 URL: ${path}/goods/findProdCategory
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
categoryId string 分类ID,不传则查询所有一级分类,反之则查询该分类下的子分类信息
  1. {
  2. "data": {
  3. "categoryList":[{
  4. "cateId":"", //分类ID
  5. "cateName":"", //分类名称
  6. "level":"", //0为根节点的子集
  7. "parentId":"", //0为根节点
  8. //子分类
  9. "childList":[{
  10. "cateId":"", //分类ID
  11. "cateName":"", //分类名称
  12. "level":"", //0为根节点的子集
  13. "parentId":"", //0为根节点
  14. "childList":[{}] //子分类
  15. }]
  16. }]
  17. },
  18. "message": "成功",
  19. "code": 0,
  20. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.2.6 查询地址信息(弃用)

简要描述: 查询地址信息
请求 URL: ${path}/address/getAddressInfo
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
provinceName string 省名称
cityName string 市名称
regionName string 县/区名称
street string 预留字段 镇/街道名称
  1. {
  2. "data": {
  3. "provinceId" : "4524130", //省编码
  4. "cityId" : "4524157", //市编码
  5. "regionId" : "4524163", //区编码
  6. "streetId" : "", //街道编码 预留字段
  7. "areaId" : "4524130,4524157,4524163" //整体地址编码
  8. },
  9. "message": "成功",
  10. "code": 0,
  11. }
  1. {
  2. "message": "该地址不存在,请检查",
  3. "code": 2001
  4. }

4.2.7 查询商品库存

简要描述: 查询商品库存
请求 URL: ${path}/goods/findSkuInventory
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
areaId string 区域ID 省市区唯一ID, 使用英文逗号拼接
skuIds string (弃用)最多查200个,skuId 多个以英文逗号拼接
codes string 最多查200个,code 多个以英文逗号拼接
  1. {
  2. "data": {
  3. "skuInvList":[{
  4. "skuId":"111", //SKUID
  5. "code":"SL-ECP-6072", //商品编码
  6. "inventoryCount":"10", //库存数量
  7. "status":"0" //上下架状态:0、已上架1、已下架
  8. }]
  9. },
  10. "message": "成功",
  11. "code": 0,
  12. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.2.8 查询商品价格

简要描述: 查询商品价格
请求 URL: ${path}/goods/findSkuSalePrice
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
skuIds string (弃用)最多查200个,多个以英文逗号拼接
codes string 最多查200个,code 多个以英文逗号拼接
  1. {
  2. "data": [
  3. {
  4. "skuId":"123", //skuId
  5. "code":"SL-ECP-6072", //商品编码
  6. "channelPrice":"102.25", //分销价格
  7. "retailPrice":"123.25", //建议零售价格
  8. "status":"0" //上下架状态:0、已上架 1、已下架
  9. }
  10. ],
  11. "message": "成功",
  12. "code": 0,
  13. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.2.9 查询商品变更记录

简要描述: 查询商品变更记录
请求 URL: ${path}/goods/queryProductChangeRecord
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
pageIndex string 页码,默认 1
pageSize string 每页大小,默认 50,最大500
changeStart string 开始时间(十位时间戳)
changeEnd string 结束时间(十位时间戳)
spuId string spuId
changeType string 记录类型(默认为1) 1新增商品 2状态变更(1上架 2下架 3删除)
  1. {
  2. "code": 0,
  3. "data": {
  4. "list": [
  5. {
  6. "change_time": "1500000000", //变更时间
  7. "spuId": 54112, //spuId
  8. "recordType": 2 //变更类型 1:上架 2:下架 (变更状态才有此字段)
  9. }
  10. ],
  11. "total": 1, //总数
  12. "pages": 1, //总页数
  13. "pageSize": 1, //每页大小
  14. "pageIndex": 1 //页码
  15. },
  16. "message": "success"
  17. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 10000
  4. }

4.3 订单接口

4.3.1 预占商品库存

简要描述: 根据外部订单号,占商品库存,30分钟后未支付,自动释放
1:【同一订单不允许重复预占库存】
2:【30分钟后自动释放预占库存,需重新生成订单,再预占库存下单】
请求 URL: ${path}/goods/preHoldSkuInventory
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
outOrderNo string 第三方订单号 <= 32位
skuInvList string (弃用)商品及库存信息json, 参考下面的demo
receiverAddr string 用户详细收货地址
codeInvList string 商品及库存信息json, 参考下面的demo
receiverAreaName string (弃用)提货地区,例如:辽宁省,沈阳市,铁西区
receiverAreaId string (弃用)收货人省市区街道(省ID,市ID,区ID) 例如:4524130,4524157,4524163
regionId string (限售商品必填)区域ID

请求参数 --- skuInvList demo

  1. [
  2. {
  3. "spuId": "112", //必填 spuId
  4. "skuId": "112", //必填 skuId
  5. "count": "2" //必填 数量
  6. },
  7. {
  8. "spuId": "112", //必填 spuId
  9. "skuId": "115", //必填 skuId
  10. "count": "5" //必填 数量
  11. }
  12. ]

请求参数 --- codeInvList demo

  1. [
  2. {
  3. "code": "SL-ECP-6072", //必填 商品编码
  4. "quantity": "2" //必填 数量
  5. },
  6. {
  7. "code": "SL-ECP-6072", //必填 商品编码
  8. "quantity": "1" //必填 数量
  9. }
  10. ]
  1. {
  2. "message": "成功",
  3. "code": 0,
  4. "data": {
  5. "status":true //成功:true 失败:false
  6. }
  7. }
  1. {
  2. "message": "XX商品库存不足",
  3. "code": 1001,
  4. }
  1. {
  2. "message": "预占商品库存异常,请稍后重试",
  3. "code": 1002,
  4. }
  1. {
  2. "message": "同一订单不允许重复锁定库存",
  3. "code": 1003,
  4. }

4.3.2 释放预占商品库存

简要描述: 释放预占商品库存
请求 URL: ${path}/goods/releaseSkuInventory
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
outOrderNo string 第三方订单号 <= 32位
skuInvList string (弃用)商品信息json, 参考下面的demo
codeInvList string 商品信息json, 参考下面的demo

请求参数 --- skuInvList(弃用) demo

  1. [
  2. {
  3. "spuId": "112", //非必填 spuId
  4. "skuId": "113" //非必填 skuId
  5. },
  6. {
  7. "spuId": "114", //非必填 spuId
  8. "skuId": "115" //非必填 skuId
  9. }
  10. ]

请求参数 --- codeInvList demo

  1. [
  2. {
  3. "code": "SL-ECP-6072", //必填 商品编码
  4. },
  5. {
  6. "code": "SL-ECP-6073", //必填 商品编码
  7. }
  8. ]
  1. {
  2. "message": "成功",
  3. "code": 0,
  4. "data": {
  5. "status":true //成功:true 失败:false
  6. }
  7. }
  1. {
  2. "message": "系统繁忙",
  3. "code": 1
  4. }

4.3.3 订单下单

简要描述: 订单下单,下单失败时可能是因为库存不足,或者商品下架
1:【必须先预占库存才能下单】
2:【预占库存到下单到我方,需在30分内,超时则预占库存失效,需重新生成订单,预占库存下单】
请求 URL: ${path}/order/addOrder
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
outOrderNo string 第三方订单号 <= 32位
receiverAreaName string (弃用)提货地区,例如:辽宁省,沈阳市,铁西区
receiverAreaId string (弃用)收货人省市区街道(省ID,市ID,区ID) 例如:4524130,4524157,4524163
regionId string 区域ID
receiverAddr string 收货人详细地址
receiver string 收货人
receiverPhone string 收货人电话
receiverMobile string 收货人手机号
freight string 非必填 不填为 0.00 运费,最长十位 整数8位小数2位
buyerRemark string 买家备注
sellerRemark string 卖家备注
skuList string 商品列表 json 串,格式参考下面json
idcardName string 用户身份证姓名(订单商品为海淘商品时必填)
idcardNo string 用户身份证号码(订单商品为海淘商品时必填)
idcardFirstUrl string 用户身份证正面照地址(订单商品为海淘商品时必填)
idcardSecondUrl string 用户身份证反面照地址(订单商品为海淘商品时必填)

请求参数 --- skuList

  1. [
  2. {
  3. "spuId": "11", //(弃用) spuId
  4. "skuId": "101", //(弃用) skuId
  5. "code": "SL-ECP-6072", //必填 商品编码
  6. "quantity": "1" //必填 数量
  7. }
  8. ]

返回示例

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": [
  5. {
  6. "orderSn": "311849783", //微唯宝子订单sn
  7. "status": "20", //订单状态
  8. "statusName": "待发货", //订单状态名称
  9. "skuList": [
  10. {
  11. "spuId": "56756",
  12. "skuId": "4482",
  13. "code": "SL-ECP-6072", //商品编码
  14. "quantity": 3, //数量
  15. "price": "2.00" //单价
  16. },
  17. {
  18. "spuId": "56752",
  19. "skuId": "4483",
  20. "code": "SL-ECP-6072",
  21. "quantity": 2,
  22. "price": "2.00"
  23. }
  24. ]
  25. }
  26. ]
  27. }
  1. {
  2. "message": "请先预占库存再下单!",
  3. "code": 1004,
  4. }
  1. {
  2. "message": "超过30分钟未下单,库存已释放,请重新生成订单并预占库存再下单!",
  3. "code": 1005,
  4. }

4.3.4 确认收货

简要描述: 买家确认收货通知我方,只有在订单状态为已发货的情况下,才允许发起,其他状态不允许
请求 URL: ${path}/order/confirmOrder
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳
sign string 签名
orderSn string 微唯宝子订单sn

返回示例

  1. {
  2. "code": 0,
  3. "message":"success",
  4. "data":{
  5. "orderStatus":"", //订单状态
  6. "orderStatusName":"" //订单状态名称
  7. }
  8. }

4.3.5 订单详情

简要描述: 订单详情
请求 URL: ${path}/order/findOrderByOrderSn
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
orderSn string 微唯宝子订单sn

返回示例

  1. {
  2. "code": 0,
  3. "data": {
  4. "orderSn": "", //微唯宝子订单号
  5. "submitTime": "", //订单提交时间【订单创建时间】 yyyy-MM-dd HH:mm:ss
  6. "receiverAreaName": "", //收货人省市区街道 如:辽宁省沈阳市铁西区
  7. "receiverAddr": "", //收货详细地址
  8. "receiver": "", //收货人
  9. "receiverPhone": "", //收件人电话
  10. "receiverMobile": "", //收货人手机号
  11. "freight": "", //运费,最长十位 整数8位小数2位
  12. "orderStatus": "", //订单状态(20为已付款待发货 * 30为已发货待收货,40为确认收货交易成功,50交易关闭[申请退款完成] * 70退款成功、80全部商品退货成功)
  13. "orderStatusName": "", //订单状态名称
  14. "sendTime": "", //发货时间 yyyy-MM-dd HH:mm:ss
  15. "confirmTime": "", //确认收货时间 yyyy-MM-dd HH:mm:ss
  16. //商品信息
  17. "skuList": [
  18. {
  19. "spuId": "10", //必填 spuId
  20. "skuId": "101", //必填 skuId
  21. "code": "SL-ECP-6072", //商品编码
  22. "prodName": "xxx", //必填 商品名称
  23. "quantity": 1, //必填 数量
  24. "price": "112", //必填 单件价格
  25. "isReshipApply": "112", //是否可以退货(0:不可以,1:可以)(决定是否显示退货按钮)
  26. "isReshipQuantity": "112", //可退货数量
  27. "reshipStatus": "112", //退货单状态 具体状态参考退货退款接口
  28. "reshipStatusName": "112", //退货单状态名称
  29. "reshipSn": "112" //退货编号
  30. }
  31. ],
  32. },
  33. "message":"success"
  34. }

4.3.6 订单物流信息

简要描述: 订单物流信息
请求 URL: ${path}/order/findExpressInfoByOrderSn
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
orderSn string 微唯宝子订单sn

返回示例

  1. {
  2. "code":0,
  3. "message":"success",
  4. "data":[
  5. {
  6. "deliveryNo":"11111111111", //物流单号
  7. "skuList":[
  8. {
  9. "spuId":"10", //spuId
  10. "skuId":"101", //skuId
  11. "code":"SL-ECP-6072", //商品编码
  12. "prodName":"xxx", //商品名称
  13. "quantity":"1" //数量
  14. }
  15. ],
  16. "deliveryList":[
  17. {
  18. "title":"", //物流日志标题
  19. "context":"【揭阳市】 快件已在 【揭阳】 签收,签收人: 拍照签收, 感谢使用中通快递,期待再次为您服务!", //物流日志说明
  20. "time":"2018-04-15 18:04:23", //物流日志时间
  21. "operator":"系统" //操作人
  22. },
  23. {
  24. "title":"",
  25. "context":"【揭阳市】 【揭阳】 的杨晓明东山业务(xxx) 正在第1次派件, 请保持电话畅通,并耐心等待",
  26. "time":"2018-04-15 15:22:33",
  27. "operator":"系统"
  28. }
  29. ]
  30. },
  31. {
  32. "deliveryNo":"22222222222",
  33. "deliveryName":"韵达快递",
  34. "skuList":[
  35. {
  36. "spuId":"10",
  37. "skuId":"101",
  38. "code":"SL-ECP-6072",
  39. "prodName":"xxx",
  40. "quantity":"1"
  41. }
  42. ],
  43. "deliveryList":[
  44. {
  45. "title":"交易完成",
  46. "context":"本次配送完成,祝您生活愉快!",
  47. "time":"2019-01-05 06:41:23",
  48. "operator":"系统"
  49. },
  50. {
  51. "title":"",
  52. "context":"您的订单已经提交",
  53. "time":"2018-12-29 06:40:34",
  54. "operator":"买家"
  55. },
  56. {
  57. "title":"",
  58. "context":"您已支付成功,请耐心等待商家发货",
  59. "time":"2018-12-29 06:40:34",
  60. "operator":"买家"
  61. }
  62. ]
  63. }
  64. ]
  65. }

4.3.7 订单运费查询

简要描述: 订单运费查询
请求 URL: ${path}/order/getOrderFreight
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
receiverAreaId string (弃用)收货人省市区街道 唯一ID
regionId string 区域ID
receiverAddr string 收货人详细地址
skuList string 商品列表 json 串,格式参考下面json

请求参数 --- skuList

  1. [
  2. {
  3. "spuId": "11", //(弃用) spuId
  4. "skuId": "101", //(弃用) skuId
  5. "code": "SL-ECP-6072", //必填 商品编码
  6. "quantity": "1" //必填 数量
  7. }
  8. ]

返回示例

  1. {
  2. "code":0,
  3. "message":"",
  4. "data":"0.00" //运费
  5. }

4.3.8 退款申请

简要描述: 【卖家未发货,使用退款申请接口】
请求 URL: ${path}/order/applyRefund
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
orderSn string 微唯宝子订单sn
reason string 原因
picList string 退货上传图片URL集合, json格式 参考下面的demo

请求参数demo --- picList

  1. ["","",""]

返回示例

  1. {
  2. "code":0,
  3. "message":"",
  4. "data":{
  5. "serviceStatus": "", //退款退货单状态
  6. "serviceStatusName": "", //退款退货单状态名称
  7. "orderSn": "1", //微唯宝子订单sn
  8. "serviceSn": "1" //退款订单编号
  9. }"
  10. }

4.3.9 退货退款申请

简要描述: 【卖家已发货,使用退货退款申请接口,针对单个商品全部退】
请求 URL: ${path}/order/applyRefundAndGoods
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
orderSn string 微唯宝子订单sn
spuId string SPUID(弃用)
skuId string SKUID(弃用)
code string 商品编码
reason string 原因
returnType string 退货类型,0:退货退款,1:仅退款
applyAmount string 自定义退款金额
picList string 退货上传图片URL集合, json格式 参考下面的demo

请求参数demo --- picList

  1. ["","",""]

返回示例

  1. {
  2. "code":0,
  3. "message":"",
  4. "data":{
  5. "serviceStatus": "", //退款退货单状态
  6. "serviceStatusName": "", //退款退货单状态名称
  7. "orderSn": "1", //微唯宝子订单sn
  8. "serviceSn": "1" //退款订单编号
  9. }"
  10. }

4.3.10 取消退货退款申请

简要描述:取消退货退款申请接口
请求 URL: ${path}/order/cancelApplyRefund
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
orderSn string 微唯宝子订单sn
serviceSn string 退款订单编号
reason string 原因
type string 1:取消退款,2:取消退货退款

返回示例

  1. {
  2. "code":0,
  3. "message":"",
  4. "data":{
  5. "serviceStatus": "", //退款退货单状态
  6. "serviceStatusName": "", //退款退货单状态名称
  7. "orderSn": "1", //微唯宝子订单sn
  8. "serviceSn": "1", //退款订单编号
  9. }"
  10. }

4.3.11 查询退货退款状态

简要描述: 查询退货退款状态
请求 URL: ${path}/order/getReturnOrderStatuts
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
serviceSn string 退款单编号

返回示例

  1. {
  2. "code":0,
  3. "message":"",
  4. "data":{
  5. "reason":"", //审核不通过原因
  6. "status":"1", //状态
  7. "statusName":"申请中" //状态名称
  8. "recieveAddr":"", //审核通过时,卖家的收货地址(全地址)
  9. "recieveName":"" //卖家收货姓名(20190617新增)
  10. "recievePhone":"" //卖家收货手机号(20190617新增)
  11. "recieveArea":"" //卖家收货地区(20190617新增)
  12. "recieveAddress":"" //卖家收货详细地址(20190617新增)
  13. }
  14. }
  15. -- 退款返回状态 及状态名称
  16. (1,"申请中"),
  17. (2,"审核不通过"),
  18. (3,"待平台退款"),
  19. (6,"退款处理中"),
  20. (7,"退款成功"),
  21. (8,"退款关闭"), -- 买家发起退货退款,又取消了退货退款 确认收货后,7天内,还可以再发起退款
  22. (9,"平台驳回"),
  23. (10,"超时未修改自动关闭"), --买家发起退货,商家审核通过,3天内买家未发货,则是此状态
  24. (11,"已发货无法退款"),
  25. (12,"财务审核不通过"),
  26. (13,"财务审核通过");
  27. --退货退款状态 及状态名称
  28. (1,"申请中"),
  29. (2,"审核不通过"),
  30. (3,"供应商审核通过"),
  31. (4,"买家已发货"),
  32. (5,"待平台退款"), --账期用户不涉及
  33. (6,"退款处理中"), --账期用户不涉及
  34. (7,"退款成功"), -- 退货退款成功,结束
  35. (8,"退款关闭"), -- 买家发起退货退款,又取消了退货退款 确认收货后,7天内,还可以再发起退款
  36. (9,"平台驳回"),
  37. (10,"超时未修改自动关闭"), --买家发起退货,商家审核通过,3天内买家未发货,则是此状态
  38. (12,"财务审核不通过"),
  39. (13,"财务审核通过");

4.3.12 查询物流公司信息

简要描述: 查询物流公司信息
请求 URL: ${path}/order/getLogisticsCompanyList
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名

返回示例

  1. {
  2. "code": 0,
  3. "message": "success",
  4. "data": [
  5. {
  6. "id": "shunfeng",
  7. "caption": "顺丰速运"
  8. },
  9. {
  10. "id": "yuantong",
  11. "caption": "圆通快递"
  12. },
  13. {
  14. "id": "zhongtong",
  15. "caption": "中通快递"
  16. },
  17. {
  18. "id": "shentong",
  19. "caption": "申通快递"
  20. },
  21. {
  22. "id": "zhaijisong",
  23. "caption": "宅急送"
  24. },
  25. {
  26. "id": "ems",
  27. "caption": "EMS"
  28. },
  29. {
  30. "id": "tiantian",
  31. "caption": "天天快递"
  32. },
  33. {
  34. "id": "yunda",
  35. "caption": "韵达快递"
  36. },
  37. {
  38. "id": "baishi",
  39. "caption": "百世快递"
  40. }
  41. ]
  42. }

4.3.13 买家发货

简要描述: 卖家审核通过后,买家发货,物流公司需要按上面那个接口的数据提供
请求 URL: ${path}/order/returnOrderGoods
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
orderSn string 微唯宝子订单sn
serviceSn string 退款订单编号
deliveryCorpSn string 物流公司编码(物流公司信息ID)
deliveryCorpName string 物流公司名称(物流公司信息名称)
deliverySn string 物流单号

返回示例
- 调用成功示例

  1. {
  2. "code":0,
  3. "message":"",
  4. "data":{
  5. "serviceStatus": "", //退款退货单状态
  6. "serviceStatusName": "", //退款退货单状态名称
  7. "orderSn": "1", //微唯宝子订单sn
  8. "serviceSn": "1" //退款订单编号
  9. }"
  10. }

4.3.14 第三方订单号查询

简要描述: 订单详情
请求 URL: ${path}/order/findOrderByOutOrderNo
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
outOrderNo string 第三方订单号

返回示例

  1. {
  2. "code": 0,
  3. "data": [
  4. {
  5. "orderSn": "", //微唯宝子订单号
  6. "submitTime": "", //订单提交时间【订单创建时间】 yyyy-MM-dd HH:mm:ss
  7. "receiverAreaName": "", //收货人省市区街道 如:辽宁省沈阳市铁西区
  8. "receiverAddr": "", //收货详细地址
  9. "receiver": "", //收货人
  10. "receiverPhone": "", //收件人电话
  11. "receiverMobile": "", //收货人手机号
  12. "freight": "", //运费,最长十位 整数8位小数2位
  13. "orderStatus": "", //订单状态(20为已付款待发货 * 30为已发货待收货,40为确认收货交易成功,50交易关闭[申请退款完成] * 70退款成功、80全部商品退货成功)
  14. "orderStatusName": "", //订单状态名称
  15. "sendTime": "", //发货时间 yyyy-MM-dd HH:mm:ss
  16. "confirmTime": "", //确认收货时间 yyyy-MM-dd HH:mm:ss
  17. //商品信息
  18. "skuList": [
  19. {
  20. "spuId": "10", //必填 spuId
  21. "skuId": "101", //必填 skuId
  22. "code": "SL-ECP-6072", //商品编码
  23. "prodName": "xxx", //必填 商品名称
  24. "quantity": 1, //必填 数量
  25. "price": "112", //必填 单件价格
  26. "isReshipApply": "112", //是否可以退货(0:不可以,1:可以)(决定是否显示退货按钮)
  27. "isReshipQuantity": "112", //可退货数量
  28. "reshipStatus": "112", //退货单状态 具体状态参考退货退款接口
  29. "reshipStatusName": "112", //退货单状态名称
  30. "reshipSn": "112" //退货编号
  31. }
  32. ],
  33. }
  34. ],
  35. "message":"success"
  36. }

4.4 回调接口

4.4.1 订单状态变更回调

简要描述: 订单状态变更回调接口,sign值生成规则和我们上面的一致
请求 URL: 请提供回调地址
请求 Content-Type: application/x-www-form-urlencoded
请求方式: POST
请求参数:

参数名 必选 类型 默认值 说明
appKey string 应用ID
currentTime long 当前时间戳(毫秒)
sign string 签名
outOrderNo string 第三方订单号
orderSn string 微唯宝子订单sn
oldStatus string 原订单状态
oldStatusName string 原订单状态名称
newStatus string 更新后的状态
newStatusName string 更新后的状态名称
statusUpdateTime string 状态更新时间 如:2019-01-01 18:10:01
updateType string 状态变更类型 1.订单状态变更 2.退货退款状态变更 3.物流变更
serviceSn string 退货退款订单编号

状态回调说明:

回调描述 状态变更类型(updateType) 变更前状态(oldStatus) 变更前描述(oldStatusName) 变更后状态(newStatus) 变更后状态描述(newStatusName)
供应商发货 1 20 已支付待发货 30 已发货待收货
系统自动确认收货 1 30 已发货待收货 40 交易成功
退款供应商审核通过 2 1 供应商审核中 7 供应商审核通过(退款成功)
退款供应商审核不通过 2 1 供应商审核中 10 退款关闭
退货供应商审核通过 2 1 供应商审核中 3 供应商审核通过(待买家发货)
买家发货 2 3 供应商审核通过(待买家发货) 4 买家发货待供应商确认收货
供应商确认收货 2 4 买家发货待供应商确认收货 7 退货成功
供应商拒绝收货 2 4 待供应商确认收货(待买家发货) 3 供应商审核(拒绝收货),待买家发货
买家三天未发货系统自动关闭退货单 2 3 供应商审核通过(待买家发货) 10 退货关闭
退货供应商审核不通过 2 1 供应商审核中 10 退货关闭
物流单号变更 3 30 已发货待收货 30 已发货待收货

返回示例
- 调用成功示例

  1. //成功返回 不区分大小写
  2. success
  3. //失败返回
  4. error

4.5 错误码及相关描述

简要描述: 返回码第3为代表分类
0:不显示
2:toast提示具体错误
3:alert提示具体错误
对于2,3,都需要产品经理提供具体文案,前端文案为空则代表和描述一致。

错误码 描述 前端文案
0 返回成功
3100000 未知异常
3100001 商品库存不足或已下架
3100002 必填参数为空
3100003 数据量过多
3100004 第三方服务器错误
3120005 订单状态不符合要求 订单状态异常,请刷新重试
3120007 订单不存在 订单状态异常,请刷新重试
3120011 订单号为空 订单状态异常,请刷新重试
3120012 订单不能被取消 订单状态异常,请刷新重试
3120013 订单不能被删除 订单状态异常,请刷新重试
3120014 订单已发货 订单状态异常,请刷新重试
3120015 订单不能发起退款退货 订单状态异常,请刷新重试
3120016 订单与用户不匹配 订单状态异常,请刷新重试
3120017 商品不存在
3120018 用户已发起退款,不能发货 订单状态异常,请刷新重试
3100019 区域号错误 商品状态异常,请刷新重试
3120020 订单已支付 退款单状态异常,请刷新重试
3121001 退款单不属于该用户 退款单状态异常,请刷新重试
3121002 退货单不属于该用户 退货单状态异常,请刷新重试
3121003 退款单状态不符合条件 退款单状态异常,请刷新重试
3121004 退货单状态不符合条件 退货单状态异常,请刷新重试
3121005 退款单或者退货单不存在 退款单状态异常,请刷新重试
3121006 退款单不属于该店铺 退款单状态异常,请刷新重试
3101007 退款单支付号重复
3101008 退款单 退货单为空
3101009 售后请求类型为空
3121010 退货退款申请中 退款单状态异常,请刷新重试
3121011 已发起过退款 退款单状态异常,请刷新重试
3121012 买家已取消退款 退货
3121013 未找到退货商品
3101014 买家已发货
3101017 审批状态码错误
3101018 店铺已经发起过审核
3101019 店铺发货状态为空
3101020 请输入店铺取消订单原因
3101021 重复提交
3121029 备注信息格式不正确
3121030 接口已禁用 系统异常,请刷新重试
3121032 您的企业账期额度不足,请联系企业管理员。 您的企业账期额度不足,请联系企业管理员。
3121033 您提现操作太频繁,请稍后再试