《前端接口文档》

接口地址以及参数说明,请移步至上述链接查看详细的接口文档说明

接口文档的使用方法,接口如何调用,请参阅下面的入门教程:

《如何调用接口?》

如果你是进行微信小程序开发,可以使用已经封装好的SDK,可以更加方便快捷,免去原始对接API接口:

《微信小程序SDK》

如果你是进行头条/抖音小程序开发,可以使用已经封装好的SDK,可以更加方便快捷,免去原始对接API接口:

《头条/抖音小程序SDK》

如果你是进行web开发,可以使用已经封装好的SDK,可以更加方便快捷,免去原始对接API接口:

《web开发SDK》

如果你是进行flutter开发,可以使用已经封装好的SDK,可以更加方便快捷,免去原始对接API接口:

《flutter开发SDK》

本教程详细描述下本接口使用的参数,便于开发者快速检索:

预下单

参数名: calculate

有的时候,我们并不希望立即下单,而是验证下是否可以下单,同时获取如果下单以后需要支付的金额、积分等等情况,比如可以用来实现订单确认页面,显示支付金额等信息让用户确认以后才正式下单
这个时候,你可以传该参数,calculate = true

用户登陆凭证

参数名: token

  • 必填参数
  • 传入下单用户的登陆token信息,系统根据传入的 token ,将订单保存到对应的用户名下

邀请人

参数名: orderInviterId

该参数传入用户id,系统将标记本订单的邀请人为该用户,同时这个字段也是作为三级分销抢客的依据,如果邀请人是分销商,并且了开启允许抢客,那么用户的所属分销商关系将会被变更

商品类型

参数名: goodsType

0为自营商品;1为vop商品,一般应用,直接传0即可

订单商品

参数名: goodsJsonStr

下单商品信息,格式如下:

  1. [
  2. {
  3. "goodsId": 11,
  4. "number": 2,
  5. "propertyChildIds": "",
  6. "days": [
  7. "2019-07-26",
  8. "2019-07-27"
  9. ]
  10. },
  11. {
  12. "goodsId": 8,
  13. "number": 3,
  14. "propertyChildIds": "2:9",
  15. "inviter_id": 1234,
  16. "days": [
  17. "2019-07-26",
  18. "2019-07-27"
  19. ]
  20. }
  21. ]

请注意,这个参数是字符串类型,所以你将可能需要通过下面的方法转为字符串以后再传给接口调用:

  1. JSON.stringify(array)

具体字段描述如下:

  • goodsId

商品ID,数字类型,请区分商品条码和商品ID,不要搞混淆

  • number

购买数量

  • propertyChildIds

规格尺寸的 SKU 信息,如果没有可不传,如:
2:9,3:8
这个例子中,2 代表颜色属性的ID,9代表红色的子属性的ID;3代表内存属性的ID,8代表256G的子属性的ID
有多少规格尺寸,就传几个,用英文逗号分隔开

  • inviter_id

商品的分享用户编号,如果么有可不传
该字段主要实现商品的分享奖励 《商品分享奖励教程》
所以同一个订单,存在多个商品,可能出现A商品分享奖励给张三,B商品分享奖励给李四的情况

  • days

可选参数,没有则不传
该参数的使用业务场景诸如酒店预定、购买门票之类的,同一个商品,不同的日期有固定的库存,下单的时候需要制定具体的日期;
比如商品是酒店客房,那么用户预订的时候,必须要选定是几月几号入住,可以同时选择多个日期,例如:

  1. "days": [
  2. "2019-07-26",
  3. "2019-07-27"
  4. ]
  • goodsAdditionList

商品可选配件信息,可选参数,没有则不传
有的商品是可以设置可选配件的,例如麻辣烫,加青菜加多少钱,加鸡蛋加多少钱;例如搬家服务,可选楼层:3层以下不加钱,5层以下加多少钱,10层以下加多少钱;又例如奶茶商品,可分别选择冰度:多冰、少冰、去冰,甜度:3分、5分、7分,加料:珍珠、奶盖、奶昔等等
例如:

  1. [
  2. {
  3. "id": 869,
  4. "pid": 1699
  5. },
  6. {
  7. "id": 871,
  8. "pid": 1588
  9. }
  10. ]

该例子中是一个黄焖鸡米饭的商品下单的可选配件参数,1699 是口味的可选配件ID,869是中辣的配件选项ID;1588是配菜的可选配件ID,871 是鹌鹑蛋的配件选项ID

  • goodsTimesDay 和 goodsTimesItem 参数

这两个参数是同时出现,要么同时不出现,主要是为了适配预约类的业务场景,比如医生挂号、服务预约等等;
这个参数区别于上面的 days 参数的区别在于,酒店预定只需要选定日期即可,所以商品库存是跟着日期走的,但是医生挂号类的应用,库存是跟着时段走的,比如某一天 9:00-10:00 这个时段总共有几个号是固定的,被人预定了库存就没了。
如有此类业务需求,可考虑使用时段定价的功能
goodsTimesDay 传值如: 2021-06-12
goodsTimesItem 传值如:9:00-10:00

收货地址

如果商品的运费模版选择了需要快递,那么下单的时候,必须传入用户的收货地址 信息,否则接口会提示对应的错误信息

详细的参数说明如下:

provinceId


省份编码,可通过接口文档中获取省市区接口获得

cityId


城市编码,可通过接口文档中获取省市区接口获得

districtId


区县编码,可通过接口文档中获取省市区接口获得,该参数除vop业务外可不传

streetId


街道编码,可通过接口文档中获取省市区接口获得,该参数除vop业务外可不传

address


详细收货地址

linkMan


收件人姓名

mobile


收件人手机号码

idcard


如果是国际件,一般为跨境电商业务,需要传收件人的身份证号码

code


邮政编码,可不传

lat


收货地址的地图定位纬度,一般配送类的订单,需要传这个参数,便于计算距离以及配送费

lng


收货地址的地图定位经度,一般配送类的订单,需要传这个参数,便于计算距离以及配送费

配送类型

参数名: peisongType

  • kd 代表本订单需要快递
  • zq 代表本订单用户选择到店自提,无需发送快递
  • keloop 本订单将自动接入快跑者系统,采用快跑者配送体系
  • pszq 接入api工厂的配送模块,由商家自行配送

收取配送费

参数名: peisongFeeId

可传入后台设置的配送费记录ID,系统将自动计算配送费用

自动接入工厂配送插件

参数名: autoPeisong

设置 autoPeisong = true 自动接入工厂配送模块,你可以配合后台的配送模块一起使用,搭建自己的配送团队

小费

参数名: trips

在海外比较流行给小费,用户购买商品以后,自愿的会给予一定的小费,可将小费金额传给该字段,系统会在订单一起结算

订单备注

参数名: remark

用户下载的时候,可以给商家留言,备注一些特殊要求

使用优惠券

参数名:couponId

使用的优惠券编号,多张优惠券请用英文的逗号分隔,如果不使用优惠券,无需传该参数

会员卡业务

参数名:cardId

如果用户名下有会员卡,可在下单的时候传入会员卡记录ID,系统将优先从会员卡结算,不够的再提示用户进行支付剩余金额

货到付款

参数名:payOnDelivery

如果该参数传如 1,那么本订单将会是货到付款订单,无需支付,订单准备即为待发货状态,在后台订单详情中,订单的支付状态为未支付,你可以货送达以后再自行和用户收款

选择自提门店

参数名: shopIdZt 和 shopNameZt

可以让用户选择自提门店,该参数传入门店ID 和 门店名称

提货点信息

参数名: pickPointId

该参数传入提货点ID,配合后台的提货点管理一起使用

达达配送

你可以轻松接入达达配送,具体操作可参阅教程:
《如何接入达达配送》

上述参数“收货地址”中的地图经纬度参数是必传,否则达达无法给骑手推送准备的配送地址

具体参数说明如下:

dadaShopNo

达达商户ID,请自行前往达达商户后台查看

砍价业务

参数名: kjid

如果是购买某个砍价商品,需要传入该参数,是用户发起砍价记录Id,系统将会按照当前砍价进度的当前价格进行结算(如已砍到底价,就按底价介绍;如未砍到结算,就按当前砍到的价格进行结算)

拼团业务

参数名: pingtuanOpenId

如果是团购订单,需要传入团号,订单支付以后,即可参团成功

核销码

参数名: isCanHx

如果该参数传入 isCanHx = true 那么,订单将会自动生成核销码,你可以显示成二维码,继而后续快速实现扫码核销订单的功能

卡密自动发货

参数名: autoDeliver

传入参数 autoDeliver = true 来实现订单卡密自动发货功能,可实现例如销售游戏点卡、优惠券、充值卡之类的业务。具体教程可参阅:
《卡密 / 优惠券自动发货插件》

积分抵扣

参数名: deductionScore

如果后台设置了积分抵扣规则,那么用户下单的时候,可选择使用一定的积分来抵扣订单金额
比如允许使用500积分抵扣10元,那么运来需要支付100元的订单,该参数传入数字 500 以后,订单的应付金额将变成90元,同时需要扣除用户可用积分500

周期性订单

参数名: orderPeriod

常见的业务场景有:家政保洁的定期上门服务、定杂志报纸、定鲜奶等等业务
这些业务需要按照某个固定的周期,系统自动生成订单,并且从用户余额中扣除订单应付金额

参数例子:

  1. {
  2. "unit": 1, // 0 1 2
  3. "times": 3, // 订阅次数
  4. "duration": 1, // 间隔
  5. "dateStart": '2021-06-12', // 首次服务时间
  6. "autoPay": true // 是否自动支付订单,否则需要用户周期性的去支付系统生成的订单
  7. }

这个例子中,系统会每个月生成一个订单,如果用户可用余额充足,订单将会自动完成支付

订单扩展属性

参数名: extJsonStr

可根据自己的实际需要,将自定义的信息内容提交,继而在后台订单详情页面,即可查看这些信息,例如:

  1. {
  2. "学校": "浙江大学",
  3. "专业": "计算机",
  4. "班级": "401"
  5. }

在订单详情,将可以看到这些信息