plugin.createOrder
提供开发者交易系统中预下单能力,开发者通过调用该方法生成订单后,会调起小程序收银台进行支付。
使用限制
行业插件在抖音 App 版本 31.8.0 及以上, 小程序基础库版本 3.4x.0.0 及以上时支持。
语法
plugin.createOrder(options);
参数说明
options 为 object 类型,属性如下:
- •针对旧版本开发者,保留支持 goodsList 下单(此场景 skuList 必须为空),新接入开发者推荐使用 skuList 下单(此场景 goodsList 必须为空)
- •goodsList 和 skuList 不能同时为空;
- •全融合版(非预约品)需使用goodsList下单,全融合版(预约品)需使用skuList下单;
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
goodsList | Goods[] Goods说明见下文 | | 是 | 下单商品 注意:目前仅支持单 SPU 商品下单 | 2.51.0.0 |
skuList | Sku[] Sku说明见下文 | | 否 | 下单商品信息(新) (skuList目前只支持单个sku) | 2.67.0.0 |
bookInfo | BookInfo BookInfo说明见下文 | | 否 | 预约信息 | 2.67.0.0 |
payment | Payment Payment说明见下文 | | 是 | 订单支付信息 | 2.51.0.0 |
contactInfo | ContactInfo ContactInfo说明见下文 | | 否 | 联系信息 | 2.51.0.0 |
storeInfo | StoreInfo StoreInfo说明见下文 | | 否 | 商店信息 | 2.51.0.0 |
note | string | | 否 | 订单备注 | 2.51.0.0 |
callbackData | Object | | 否 | 2.51.0.0 | |
tradeOption | Object | | 否 | 2.74.0.0 | |
callbackUrl | string | | 否 | 开发者自定义的预下单回调 URL(仅账号融合支持,完全融合不生效) | 2.65.0.0 |
discountInfo | DiscountInfo DiscountInfo说明见下文 | | 否 | 折扣营销算价信息 | 2.52.0.3 |
discountId | string | | 否 | 折扣营销算价信息 ID(若同时存在 discountInfo 和 discountId 时,优先使用 discountId 对应的营销算价信息)
| 2.52.0.3 |
poiId | string | | 否 | 门店id,取值优先级:poiId > 货架/直播间的poiId > deliveryInfo里的poiId | |
businessLine | number | 1 | 否 | 业务线
| 2.52.0.3 |
deliveryInfo | DeliveryInfo DeliveryInfo 说明在下文 | | 否(businessLine = 3 时,必填) | 配送信息 | 2.51.0.0 |
addressInfo | AddressInfo AddressInfo 说明见下文 | | 否(businessLine = 3 ,必填) | 地址信息 | 2.51.0.0 |
success | Function | | 否 | 接口调用成功的回调函数 | |
fail | Function | | 否 | 接口调用失败的回调函数 | |
complete | Function | | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) | |
Goods
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
quantity | number | | 是 | 购买数量 | 2.51.0.0 |
price | number | | 是 | 商品价格 | 2.51.0.0 |
goodsName | string | | 是 | 商品名称 | 2.51.0.0 |
goodsPhoto | string | | 是 | 商品图片 | 2.51.0.0 |
goodsId | string | | 是 | 商品ID | 2.51.0.0 |
goodsType | number | | 是 | 商品是否入库
| 2.51.0.0 |
goodsTradeType | number | | 否 注:航司日历票场景下必传 | 下单商品类型
| 2.67.0.0 |
discountAmount | number | | 否 | 折扣金额 | 2.67.0.0 |
goodsPage | object | | 否 | 商详页路径 | 2.67.0.0 |
goodsLabels | string[] | | 否 | 商品标签 | 2.51.0.0 |
dateRule | string | | 否 | 使用规则 | 2.51.0.0 |
goodsBookInfo | GoodsBookInfo | | 否 | 预约信息
| 2.57.4.0 |
merchantId | string | | 否 | 商户id(不同goods需指定同一个merchantId) | 2.51.0.0 |
goodsPage
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
path | string | -- | 是 | 商品详情页跳转路径,没有 前导的“/”,长度 <= 512byte 示例:pages/xxxindexxx | 2.57.4.0 |
params | string | -- | 否 | 商品详情页路径参数,自定义的 json 结构,序列化成字符串存入该字段,平台不限制,但是写入的内容需要能够保证生成访问订单详情的 schema 能正确跳转到小程序内部的订单详情页,长度 <= 512byte 示例:{\"id\":\"xxxxxx\"} | 2.57.4.0 |
GoodsBookInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
bookType | number | -- | 是 | 预约类型:
| 2.57.4.0 |
cancelPolicy | number | -- | 否 | 取消政策:
需要预约,此字段必传;不需要预约,此字段不填 | 2.57.4.0 |
advancedCancelHours | number | -- | 否 | 提前取消的小时限制(距离预约结束时间),cancelPolicy 为 3 时有效 | 2.69.0.5 |
Sku
- •sku 为商品库商品,对应的 goods 必须是商品库
- •sku 为商品库商品,goodsInfo 可以不传
- •sku 为非商品库商品,需要传 goodsInfo
- •当商品为预约品(product_type=22)时,传入的price允许大于商品实付价(需保证total_amount=price*quantity-discount_amount),且不能超过3倍(仅即时预约场景下支持)
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
quantity | number | | 是 | 购买数量 | 2.67.0.0 |
skuId | string | | 是 | sku商品id | 2.67.0.0 |
skuType | number | | 是 | sku商品类型
| 2.67.0.0 |
price | number | | 否 | 价格(融合预约链路,该参数必填) | 2.67.0.0 |
discountAmount | number | | 否 | 折扣金额 | 2.67.0.0 |
goodsInfo | GoodsInfo GoodsInfo说明见下文 | | 否 | 商品信息 | 2.67.0.0 |
extraInfo | ExtraInfo ExtraInfo说明见下文 | | 否 | sku 额外商品属性 | 2.67.0.0 |
GoodsInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
goodsName | string | | 是 | 商品名称字段长度为 1~256 字节 | 2.67.0.0 |
goodsPhoto | string | | 是 | 商品图片 | 2.67.0.0 |
goodsId | string | | 是 | 商品ID | 2.67.0.0 |
goodsType | number | | 是 | 商品是否入库
| 2.67.0.0 |
goodsTradeType | number | | 否 注:航司日历票场景下必传 | 下单商品类型
| 2.67.0.0 |
goodsSubTitle | string | | 否 | 商品副标题 | 2.67.0.0 |
goodsPage | object | | 否 | 商详页路径 | 2.67.0.0 |
goodsLabels | string[] | | 否 | 商品标签 | 2.67.0.0 |
dateRule | string | | 否 | 使用规则 | 2.67.0.0 |
goodsBookInfo | object | | 否 | 预约信息 | 2.67.0.0 |
merchantId | string | | 否 | 商户id(不同goods需指定同一个merchantId) | |
ExtraInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
ticketName | string | | 否(非POI商品库的门票类SKU必传) | 门票票种 | 2.67.0.0 |
date | string | | 否(非POI商品库的门票类SKU必传) | 日期,示例 2022-01-10,现在仅支持天 | 2.67.0.0 |
extSkuRule | string | | 否 | 三方自定义SKU规则,数据拓展点透传三方不落地 | |
Payment
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
totalAmount | number | | 是 | 订单总价 | 2.51.0.0 |
totalDiscountAmount | number | | 否 | 订单总折扣 | 2.52.0.3 |
feeDetailsList | FeeDetailsInfo[] FeeDetailsInfo 说明见下文 | | 否(存在额外费用比如打包费、配送费、基建费、燃油费、税费时,必传) | 费用明细列表 (航司或外卖场景可传) | 2.51.0.0 |
limitPay | string[] | | 否 | 可选值
| 2.51.0.0 |
FeeDetailsInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
feeType | number | | 是 | 费用类型
| 2.51.0.0 |
feeAmount | number | | 是 | 费用总金额 | 2.51.0.0 |
feeDiscountAmount | number | 0 | 否 | 费用总优惠金额 | 2.51.0.0 |
feeDesc | string | | 否 | 费用描述 | 2.51.0.0 |
ContactInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
phoneNumber | string | | 否 (businessLine = 3 且 addressId 为空时,必填) | 联系人电话 | 2.51.0.0 |
contactName | string | | 否 (businessLine = 3 且 addressId 为空时,必填) | 联系人姓名 | 2.51.0.0 |
gender | number | | 否 (businessLine = 3 且 addressId 为空时,必填) | 联系人性别
| 2.51.0.0 |
StoreInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
storeName | string | | 否 | 商店名称 | 2.51.0.0 |
storeIcon | string | | 否 | 商店头像 | 2.51.0.0 |
DiscountInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
type | number | | 是 | 折扣算价类型
| 2.52.0.3 |
detail | Detail | | 是 | 折扣详情 | 2.52.0.3 |
useMergedMarketingApi | boolean | false | 否 | 是否使用了营销算价二合一 | 2.74.0.0 |
Detail
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
orderDiscount | OrderDiscountDetail | | 是 | 订单算价结果 | 2.52.0.3 |
goodsDiscount | GoodsDiscount[] | | 是 | 商品算价结果 | 2.52.0.3 |
itemDiscount | ItemDiscount[] | | 是 | 单商品算价信息 | 2.52.0.3 |
OrderDiscount
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
orderTotalDiscountAmount | number | | 是 | 订单维度总优惠金额,单位: 分 | 2.52.0.3 |
goodsTotalDiscountAmount | number | | 是 | 商品(SKU)维度总优惠金额,单位: 分 | 2.52.0.3 |
marketingInfo | MarketingInfo[] | | 是 | 营销信息明细 | 2.52.0.3 |
MarketingInfo
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
id | string | | 是 | 营销 id | 2.52.0.3 |
type | number | | 是 | 营销类型
| 2.52.0.3 |
discountAmount | number | | 是 | 该营销策略优惠金额,单位: 分 | 2.52.0.3 |
title | string | | 是 | 营销名称 | 2.52.0.3 |
note | string |