《前端接口文档》

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

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

《如何调用接口?》

如果你是进行微信小程序开发,可以使用已经封装好的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

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

[{"goodsId": 11, "number": 2, "propertyChildIds": "", "days": ["2019-07-26", "2019-07-27"]}, {"goodsId": 8, "number": 3, "propertyChildIds": "2:9", "inviter_id": 1234, "days": ["2019-07-26", "2019-07-27"]}
]

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

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

可选参数,没有则不传

该参数的使用业务场景诸如酒店预定、购买门票之类的,同一个商品,不同的日期有固定的库存,下单的时候需要制定具体的日期;

比如商品是酒店客房,那么用户预订的时候,必须要选定是几月几号入住,可以同时选择多个日期,例如:

"days": ["2019-07-26", "2019-07-27"
]
  • goodsAdditionList

商品可选配件信息,可选参数,没有则不传

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

例如:

[{"id": 869,"pid": 1699},{"id": 871,"pid": 1588}
]

该例子中是一个黄焖鸡米饭的商品下单的可选配件参数,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

常见的业务场景有:家政保洁的定期上门服务、定杂志报纸、定鲜奶等等业务

这些业务需要按照某个固定的周期,系统自动生成订单,并且从用户余额中扣除订单应付金额

参数例子:

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

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

订单扩展属性

参数名: extJsonStr

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

{"学校": "浙江大学","专业": "计算机","班级": "401"
}

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

创建订单 / 下单接口参数说明相关推荐

  1. 支付宝小程序Java后台创建订单服务接口

    首先要去支付宝开发者平台申请APP_ID,和秘钥. 然后准备工作做完以后,就开始写接口了. 创建订单接口    https://docs.open.alipay.com/api_1/alipay.tr ...

  2. 创建订单实现幂等的一点思考

    幂等的概念 大部分文章都会说,同一个操作,进行多次操作后,结果是一样的,就可以说这个操作是支持幂等的.感觉不太准确,比如一个http get操作,可能每次的结果都不一样,但是其实是幂等的.看了很多文章 ...

  3. Myth源码解析系列之六- 订单下单流程源码解析(发起者)

    前面一章我们走完了服务启动的源码,这次我们进入下单流程的源码解析~ 订单下单流程源码解析(发起者) 首先保证myth-demo-springcloud-order.myth-demo-springcl ...

  4. 商城-下单-订单系统接口

    商城-下单-订单系统接口 1.订单系统接口 1.1.导入订单服务 1.2.Swagger-UI 1.2.1.什么是OpenAPI 1.2.2.什么是swagger? 1.2.3.快速入门 1)引入依赖 ...

  5. 基于MQ的异步创建订单,提高下单并发量

    两种方案:全量异步.半异步.下面分别说明一下两种方案的区别. 全量异步: 1. 前端调用下单接口获取订单id 2. 下单接口构造订单领域对象,并缓存订单id到redis,状态为0(创建中),然后将领域 ...

  6. java微信支付 [统一下单接口] 与 [订单查询接口] 调用成功完整代码与结果

    公司最近要搞微信支付, 之前也没有做过, 但是搞过阿里云, 想来也不是很难. 在网上找了很多贴子, 在eclipse里做了5个测试工程, 没有测试成功, 后来下了微信SDK, 也做了个测试样例, 期间 ...

  7. TCC 强一致性 实时 DEMO 下单(创建订单,扣除库存,增加积分,扣除余额)

    伪代码 场景 用购买某种商品1件(原库存1000),增加20积分,扣除100元余额 设计说明 通过日志表来完成TCC.修改库存,余额表要先添加一条记录到他们的日志表里,表要记录TCC状态. 通过唯一业 ...

  8. 秒杀情况下,用户下单扣除库存创建订单之后,迟迟不付款,时间到了自动取消订单(思路)

    秒杀情况下,用户下单扣除库存创建订单之后,迟迟不付款,时间到了自动取消订单 解决方案1. 使用redis实现 1.下单之后把生成分布式全局唯一id,把订单id放进redis中,设置一个过期时间 2.定 ...

  9. 拼多多开放平台订单详情接口解析

    API接口订单接口是指用于实现订单相关操作的程序接口.通过这个接口,用户可以实现创建.修改.查询和取消订单等功能. 常见的API接口订单接口包括: 创建订单接口,用于实现用户下单操作. 修改订单接口, ...

  10. 浅析微信支付:统一下单接口

    本文是[浅析微信支付]系列文章的第五篇,主要讲解如何调用统一下单接口生成预支付单及调起支付页面. 浅析微信支付系列已经更新四篇了哟-,没有看过的朋友们可以看一下哦. 浅析微信支付:微信公众号网页授权 ...

最新文章

  1. Tomcat6优化配置
  2. Web项目中文件上传Filter处理
  3. HTML 5 视频/音频参考手册
  4. .net转换关键字:operator、explicit与implicit
  5. C语言进行离散傅里叶DFT变换~MATLAB验证
  6. 基于阿里云RDS创建ECS自建从库
  7. Spring工具类的使用
  8. HDU3415 Max Sum of Max-K-sub-sequence
  9. docker引导java_让我引导您完成与Docker的第一次约会
  10. c++ 设置类型别名
  11. ThreadLocal 解决多线程程序的并发问题+事务处理
  12. Numpy_where
  13. 皮克定理(计算多边形面积)
  14. 抖音iOS基础技术大揭秘!
  15. (转载)shell脚本中的 EOF 是什么意思?
  16. x264 2pass编码说明
  17. 经济学基础(本)【1】
  18. i春秋CTF训练 Web 破译
  19. 社区折腾日志:基于python搭建个人微信/支付宝免签支付功能
  20. Momentum算法

热门文章

  1. 两次碰到编译错误: crosses initialization of...
  2. light动名词_英语语法大全之动名词
  3. [android基础知识] 之十三: Runtime.getRuntime()
  4. linux 编辑文件出现E45readonly option is set (add! to .....)
  5. 淡泊明志, 宁静致远--如何在自学之路上爬得更高更远?
  6. QT软件开发: 基于QT设计的完整版视频播放器、多媒体播放器(mdk-sdk)
  7. python入门学习——6种方法求n的阶乘(8种写法)
  8. 华三H3C路由器如何配置端口映射远程登录到内网服务器
  9. pod、pvc删不掉怎么办?
  10. 计算机学会a类论文是sci吗,什么是SCI、EI、CCF、DASFAA