- 导入订单信息
- 接口简介
- 接口调用请求说明
- 参数说明
- 请求示例
- 订单类型
- POST 请求字段说明
- Data
- Data.Ext
- Data.Ext.MainOrder
- Data.Ext.MainOrder.Product
- Data.Ext.MainOrder.Express
- Data.Ext.MainOrder.Product.DetailPage
- Data.Ext.MainOrder.Product.SkuAttr
- Data.Ext.MainOrder.Payment
- Data.Ext.MainOrder.Payment.PaymentSpecInfo
- Data.Ext.MainOrder.Appraise
- Data.Ext.MainOrder.OrderDetail
- Data.Ext.MainOrder.Express
- 返回值参数说明
导入订单信息
接口简介
1)该接口用于添加订单,即当 POST 请求中 ResourceID 参数不存在时,导入新的订单数据。
2)POST 请求中 Data 参数不可填写多个,暂不支持批量导入。
3)注意:若 ResourceID 已存在,则会用当前 POST 请求中信息全量覆盖该条记录中订单和售后订单信息,故更新订单场景请使用更新专用接口。
接口调用请求说明
POST https://openapi.baidu.com/rest/2.0/smartapp/ordercenter/app/add/main/info?access_token=ACCESS_TOKEN
参数说明
参数名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
access_token | String | 是 | 小程序的接口调用凭据,参考开发者服务权限说明 |
open_id | String | 二选一 | (1)百度 App 已登录用户使用 openId 作为用户标识 (2)百度 App 未登录用户(无 openId 时)使用 swanId 作为用户标识 |
swan_id | String | ||
scene_id | String | 是 | 百度收银台分配的平台订单 ID,通知支付状态接口返回的 orderId |
scene_type | Int | 是 | 支付场景类型,开发者请默认传 2 |
pm_app_key | String | 是 | 调起百度收银台的支付服务 appKey |
请求示例
请求 body 参数
- JSON
{
"Data": [
{
// 1:订单种类-实物商品
"CateID": 1,
// 小程序AppKey
"BizAPPID": "a392qXwK8L5GDUWhFoC01cKwoy7tmehg",
// 订单名称
"Title": "test",
// 开发者接入的唯一订单ID
"ResourceID": "2221554346520",
// 订单创建时间,单位秒
"Ctime": 1233212343,
// 订单最后修改时间,单位秒
"Mtime": 1233212343,
// 200:订单状态-已完成交易
"Status": 200,
// 拓展字段
"EXT": {
// 订单信息
"MainOrder": {
// 商品信息
"Products": [
{
//商品ID
"ID": "1014093064",
//商品名称
"Name": "四川大凉山丑苹果脆甜红将军盐源丑苹果",
//商品详情
"Desc": "四川大凉山丑苹果脆甜:5斤小果25个左右偏小;",
//商品数量
"Quantity": 1,
//商品原价,单位分。
"Price": 2390,
//实付价格,单位分。
"PayPrice": 2390,
//商品图片地址
"ImgList": [
"https://imagelib.cdn.bcebos.com/cip_ml_picbc34db9a-7e10-4a96-bf8e-1c690640c6a4.jpeg"
],
//商品SKU属性
"SkuAttr": [
{
"Name": "四川大凉山丑苹果脆甜",
"Value": "5斤小果25个左右偏小"
}
]
}
],
"Payment": {
//支付信息
"Time": 0,
//付款时间,时间戳,单位秒
"Method": 1,
//支付方式
"Amount": 2390,
//合计金额,单位分
"IsPayment": false,
//是否支付
"PreferentialInfo": [
//优惠信息
{
//名称
"Name":"优惠券使用",
//优惠金额,单位分
"Value":100,
//数量
"Quantity":1
}
],
//付款信息
"PaymentInfo": [
{
//展示名称
"Name":"运费",
//付款金额,单位分
"Value":100,
//数量
"Quantity":1
}
]
},
// 订单评价跳转
"Appraise": {
"Status": 0,
"Name": "",
"SwanSchema": "baiduboxapp://swan/B3GF3AWvCSr59myIs61uqaoYz7pPCSY1/wjz/bdxd/order-detail/order-detail?orderId=159259079195"
},
// 订单详情跳转
"OrderDetail": {
"Status": 2,
"Name": "",
"SwanSchema": "baiduboxapp://swan/B3GF3AWvCSr59myIs61uqaoYz7pPCSY1/wjz/bdxd/order-detail/order-detail?orderId=159259079195"
}
},
// 售后订单信息,若该订单发生退款/售后,需新增同步其售后订单的售后信息状态
"SubsOrder": {
"Status": 0,
"Items": [
{
// 售后订单ID
"SubOrderID":"onlyOne",
// 自订单状态,枚举参照 【退换货枚举值】
"SubStatus":"",
// 售后订单创建时间,时间戳,单位秒
"CTime":1571026201,
// 售后订单修改时间,时间戳,单位秒
"MTime":1571026201,
// 退款退货订单详情跳转
"OrderDetail":{
"Status": 2,
"Name": "",
"SwanSchema": "baiduboxapp://swan/B3GF3AWvCSr59myIs61uqaoYz7pPCSY1/wjz/bdxd/order-detail/order-detail?orderId=159259079195"
},
// 商品 退款/退货 信息
"Refund":{
// 退款总金额
"Amount":10,
// 退款/退货商品
"Product":[
{
// 商品ID
"ID":"1014093064",
// 商品退款/商品退货 数量
"Quantity":1,
// 应退金额,单位分
"Amount":0
}
]
},
// 退款订单类型
"OrderType":1
}
]
}
}
}
]
}
订单类型
1) 从交易的正逆 2 个场景,订单中心整体分为 MainOrder 主订单和 SubsOrder 售后订单 2 种类型。
MainOrder:主订单,即购买商品、服务的订单。
SubsOrder:售后订单,当订单发生退换货等售后时,需导入售后相关的信息,作为售后订单。
2) 主订单又细分为实物订单、快递服务订单、虚拟订单、上门服务订单、酒店订单、出行票务订单、打车订单 7 种,每种订单状态定义不同,前端对用户的展示也不同。
· 实物订单:进行实物交易,需要发货等物流的交易订单。
· 快递服务订单:快递类的服务订单。
· 虚拟订单:不需要货源、不涉及物流的交易订单。
· 上门服务订单:服务类订单,含搬家拉货、保洁、衣物洗护、上门维修,不含快递、外卖。
· 酒店订单:酒店类的订单。
· 出行票务订单:出行票务类订单,含汽车票、火车票、机票等。
· 打车订单:打车类的订单。
POST 请求字段说明
Data
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
ResourceID | String | 是 | 开发者接入的唯一订单 ID |
BizAPPID | String | 是 | 小程序 AppKey |
Ctime | Int | 是 | 订单创建时间(单位:秒) |
Mtime | Int | 是 | 订单最后被修改时间(单位:秒) |
CateID | Int | 是 | 订单种类:1(实物)、2(虚拟物品)、5(快递服务类)、6(快递服务类无金额订单)、10(上门服务类)、11(上门服务类无金额订单)、15(酒店类)、20(票务类)、25(打车类)、26(打车类无金额订单) |
Title | String | 是 | 订单标题,建议使用订单商品名称 |
Status | Int | 是 | 订单状态,其值根据TypeID 不同有不同的定义,详细见下 |
Ext | Data.Ext | 是 | 扩展信息,详细结构见下 |
CateID==1 ,即实物订单时
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
5 | 待发货 | “全部”、“待收货” Tab |
6 | 待收货 | “全部”、“待付款” Tab |
100 | 交易关闭 | “全部” Tab |
200 | 交易成功 | “全部” Tab |
CateID==2 ,即虚拟物订单时
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
2 | 等待卖家确认 | “全部”、“待付款” Tab |
3 | 卖家处理中 | “全部”、“待付款” Tab |
4 | 卖家已确认 | “全部”、“待付款” Tab |
100 | 交易关闭 | “全部” Tab |
200 | 交易完成 | “全部” Tab |
CateID==5 ,即快递服务类订单时
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
3 | 待揽件 | “全部”、“待收货” Tab |
4 | 已揽件 | “全部”、“待收货” Tab |
6 | 派送中 | “全部”、“待收货” Tab |
7 | 运输中 | “全部”、“待收货” Tab |
100 | 已取消 | “全部” Tab |
101 | 退回运输中 | “全部” Tab |
102 | 退回并签收 | “全部” Tab |
103 | 疑难件 | “全部” Tab |
200 | 已签收 | “全部” Tab |
CateID==6,即快递服务类无金额订单时
含义和订单中心状态 TAB 同 CateID==5 快递服务类订单。
CateID==10 ,即上门服务类订单时
上门服务类,含搬家拉货、保洁、衣物洗护、上门维修等,不含快递、外卖。
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
2 | 等待商家确认 | “全部”、“待收货” Tab |
4 | 商家已确认 | “全部”、“待收货” Tab |
100 | 交易关闭 | “全部” Tab |
200 | 交易完成 | “全部” Tab |
CateID==11,即上门服务类无金额订单时
含义和订单中心状态 TAB 同 CateID==10 上门服务类订单。
CateID==15 ,即酒店类订单时
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
2 | 等待商家确认 | “全部”、“待收货” Tab |
6 | 待入住 | “全部”、“待收货” Tab |
9 | 已入驻 | “全部” Tab |
100 | 交易关闭 | “全部” Tab |
200 | 交易完成 | “全部” Tab |
CateID==20 ,即出行票务类订单时
出行票务类订单,汽车票、火车票、机票等票务类订单。
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
3 | 出票中 | “全部”、“待收货” Tab |
8 | 出票成功 | “全部” Tab |
100 | 交易关闭 | “全部” Tab |
200 | 交易完成 | “全部” Tab |
CateID==25 ,即打车类订单时
Data.Status | 含义 | 订单中心状态 Tab |
---|---|---|
1 | 待付款 | “全部”、“待付款” Tab |
2 | 等待接单 | “全部”、“待收货” Tab |
4 | 司机已接单 | “全部”、“待收货” Tab |
8 | 司机已到达 | “全部” Tab |
9 | 行程开始 | “全部” Tab |
100 | 已取消 | “全部” Tab |
200 | 已完成 | “全部” Tab |
CateID==26,即打车类无金额订单时
含义和订单中心状态 TAB 同 CateID==25 打车类订单。
开发者注意:若订单发生退换货,需要导入售后订单,主订单状态设置为
200 交易完成
。
Data.Ext
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
MainOrder | Data.Ext.MainOrder | 是 | 主订单信息(购买商品订单) |
SubsOrder | Data.Ext.SubsOrder | 否 | 售后订单信息(退换货/售后订单) |
Data.Ext.MainOrder
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Products | Data.Ext.MainOrder.Product | 是 | 数组,商品信息列表,若商品只有 1 个则数组长度为 1 |
Payment | Data.Ext.MainOrder.Payment | 是 | 支付信息 |
Appraise | Data.Ext.MainOrder.Appraise | 否 | 待评价状态订单的评价页结构,仅订单为可评价状态,且还未进行评价时提供该信息 |
OrderDetail | Data.Ext.MainOrder.OrderDetail | 否 | 订单详情页的信息 |
Data.Ext.MainOrder.Product
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
ID | String | 是 | 商品 ID ,开发者的唯一商品 ID |
Name | String | 是 | 商品名字 |
Desc | String | 否 | 商品简述 |
Quantity | Int | 是 | 本商品的交易数量 |
Price | Int | 是 | 本商品原价(单位:分),即100 代表1元 |
PayPrice | Int | 是 | 实付价(单位:分),即100 代表1元 |
ImgList | String | 否 | 商品预览,值为预览图 URL 地址,最多 5 张 |
DetailPage | Data.Ext.MainOrder.Product.DetailPage | 否 | 商品详情的跳转的跳转结构 |
SkuAttr | Data.Ext.MainOrder.Product.SkuAttr | 否 | 商品规格,最多 400 个 |
Data.Ext.MainOrder.Express
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
ID | String | 是 | 快递单号 |
Name | String | 否 | 快递公司名称 |
Code | String | 是 | 快递公司对应的编号,具体 Code 列表见下方快递公司信息码表 |
Type | Int | 是 | 快递类型,1:商家给用户发货,2:用户给商家退货;开发者根据快递类型传 1 或 2 |
Data.Ext.MainOrder.Product.DetailPage
该结构定义了如何执行跳转的数据结构协议。 Scheme 即客户端统一调起协议,协议的使用需要确保参数传递的正确。
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Status | Int | 否 | 默认传 2 |
SwanSchema | String | 否 | 商品详情页的跳转地址,用以小程序跳转 Scheme ,小程序跳转 Scheme 协议规则 |
Data.Ext.MainOrder.Product.SkuAttr
商品规格
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Name | String | 是 | 规格名称,例如“颜色”或“尺寸” |
Value | String | 是 | 规格值 |
// Data.Ext.MainOrder.Product.SkuAttr 示例
[
{
"Name": "颜色",
"Value": "Red"
},
{
"Name": "颜色",
"Value": "Black"
}
]
Data.Ext.MainOrder.Payment
开发者须知:为确保给用户展示正确、有效的订单价格,订单相关的金额会严格根据下方公式进行校验,即实付金额 = 商品总金额 + 其他付款金额 - 优惠金额。
Payment.Amount = (Products.PayPrice * Products.Quantity) + (PaymentInfo.Value * PaymentInfo.Quantity) - (PreferentialInfo.Value * PreferentialInfo.Quantity)
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Method | Int | 是 | 付款方式,1(在线付),2(货到付款) |
Amount | Int | 是 | 实付金额(单位:分),即100 为1元 |
IsPayment | Boolean | 是 | 是否已付款 |
Time | Int | 否 | 付款时间(单位:秒) |
PreferentialInfo | Data.Ext.MainOrder.Payment.PaymentSpecInfo | 否 | 优惠券信息 |
PaymentInfo | Data.Ext.MainOrder.Payment.PaymentSpecInfo | 否 | 其他付款信息,如运费、保险等 |
Data.Ext.MainOrder.Payment.PaymentSpecInfo
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Name | String | 是 | 展示名称 |
Value | Int | 是 | 合计金额(单位:分),即100 为1元 |
Quantity | Int | 是 | 数量 |
Data.Ext.MainOrder.Appraise
当主订单状态为200 交易完成
,订单为可评价状态Status为2
,并提供订单评价页的跳转地址SwanSchema
,订单会出现在【待评价】tab,并显示【评价】入口,引导用户打开小程序进行评价。
该结构定义了如何执行跳转的数据结构协议。 Scheme 即客户端统一调起协议,协议的使用需要确保参数传递的正确。
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Status | Int | 否 | 0(不可评价状态或已评价状态)、2(待评价状态,允许跳转) |
SwanSchema | String | 否 | 评价页的跳转地址,用以小程序跳转 Scheme ,小程序跳转 Scheme 协议规则 |
Data.Ext.MainOrder.OrderDetail
该结构定义了如何执行跳转的数据结构协议。 Scheme 即客户端统一调起协议,协议的使用需要确保参数传递的正确。
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
Status | Int | 否 | 默认传 2 |
SwanSchema | String | 否 | 订单详情页的跳转地址,用以小程序跳转 Scheme ,小程序跳转 Scheme 协议规则 |
Data.Ext.MainOrder.Express
字段名称 | 字段类型 | 必填 | 备注 |
---|---|---|---|
ID | String | 是 | 快递单号 |
Name | String | 否 | 快递公司名称 |
Code | String | 是 | 快递公司对应的编号,详情请参考快递公司信息码表 |
Type | Int | 是 | 快递类型,1:商家给用户发货,2:用户给商家退货;开发者根据快递类型传 1 或 2 |
Status | Int | 是 | 开发者默认传 0 |
返回值参数说明
注意:订单同步文档中的所有接口返回字段和示例一致,其他接口的返回请参考该说明
字段名称 | 字段类型 | 备注 |
---|---|---|
biz_app_id | String | POST 请求参数中 BizAPPID |
cate_id | Int | POST 请求参数中 CateID |
resource_id | String | POST 请求参数中 ResourceID |
rows_affected | Int | 请求受影响行数(即请求是否成功, 0 为失败,非 0 为成功) |
响应示例
- JSON
{
"errno": 0,
"msg": "success",
"data": [
{
"biz_app_id": "IGRshW1EovxlMIoeLXQZkQiGcGGyjsPX",
"cate_id": "1",
"resource_id": "aa",
"rows_affected": "0"
}
]
}