导入订单信息

接口简介

1)该接口用于添加订单,即当 POST 请求中 ResourceID 参数不存在时,导入新的订单数据。

2)POST 请求中 Data 参数不可填写多个,暂不支持批量导入。

3)注意:若 ResourceID 已存在,则会用当前 POST 请求中信息全量覆盖该条记录中订单和售后订单信息,故更新订单场景请使用更新专用接口。

接口调用请求说明

  1. POST https://openapi.baidu.com/rest/2.0/smartapp/ordercenter/app/add/main/info?access_token=ACCESS_TOKEN

参数说明

参数名类型是否必填描述
access_tokenString小程序的接口调用凭据,参考开发者服务权限说明
open_idString二选一(1)百度 App 已登录用户使用 openId 作为用户标识
(2)百度 App 未登录用户(无 openId 时)使用 swanId 作为用户标识
swan_idString
scene_idString百度收银台分配的平台订单 ID,通知支付状态接口返回的 orderId
scene_typeInt支付场景类型,开发者请默认传 2
pm_app_keyString调起百度收银台的支付服务 appKey

请求示例

请求 body 参数

  • JSON
  1. {
  2. "Data": [
  3. {
  4. // 1:订单种类-实物商品
  5. "CateID": 1,
  6. // 小程序AppKey
  7. "BizAPPID": "a392qXwK8L5GDUWhFoC01cKwoy7tmehg",
  8. // 订单名称
  9. "Title": "test",
  10. // 开发者接入的唯一订单ID
  11. "ResourceID": "2221554346520",
  12. // 订单创建时间,单位秒
  13. "Ctime": 1233212343,
  14. // 订单最后修改时间,单位秒
  15. "Mtime": 1233212343,
  16. // 200:订单状态-已完成交易
  17. "Status": 200,
  18. // 拓展字段
  19. "EXT": {
  20. // 订单信息
  21. "MainOrder": {
  22. // 商品信息
  23. "Products": [
  24. {
  25. //商品ID
  26. "ID": "1014093064",
  27. //商品名称
  28. "Name": "四川大凉山丑苹果脆甜红将军盐源丑苹果",
  29. //商品详情
  30. "Desc": "四川大凉山丑苹果脆甜:5斤小果25个左右偏小;",
  31. //商品数量
  32. "Quantity": 1,
  33. //商品原价,单位分。
  34. "Price": 2390,
  35. //实付价格,单位分。
  36. "PayPrice": 2390,
  37. //商品图片地址
  38. "ImgList": [
  39. "https://imagelib.cdn.bcebos.com/cip_ml_picbc34db9a-7e10-4a96-bf8e-1c690640c6a4.jpeg"
  40. ],
  41. //商品SKU属性
  42. "SkuAttr": [
  43. {
  44. "Name": "四川大凉山丑苹果脆甜",
  45. "Value": "5斤小果25个左右偏小"
  46. }
  47. ]
  48. }
  49. ],
  50. "Payment": {
  51. //支付信息
  52. "Time": 0,
  53. //付款时间,时间戳,单位秒
  54. "Method": 1,
  55. //支付方式
  56. "Amount": 2390,
  57. //合计金额,单位分
  58. "IsPayment": false,
  59. //是否支付
  60. "PreferentialInfo": [
  61. //优惠信息
  62. {
  63. //名称
  64. "Name":"优惠券使用",
  65. //优惠金额,单位分
  66. "Value":100,
  67. //数量
  68. "Quantity":1
  69. }
  70. ],
  71. //付款信息
  72. "PaymentInfo": [
  73. {
  74. //展示名称
  75. "Name":"运费",
  76. //付款金额,单位分
  77. "Value":100,
  78. //数量
  79. "Quantity":1
  80. }
  81. ]
  82. },
  83. // 订单评价跳转
  84. "Appraise": {
  85. "Status": 0,
  86. "Name": "",
  87. "SwanSchema": "baiduboxapp://swan/B3GF3AWvCSr59myIs61uqaoYz7pPCSY1/wjz/bdxd/order-detail/order-detail?orderId=159259079195"
  88. },
  89. // 订单详情跳转
  90. "OrderDetail": {
  91. "Status": 2,
  92. "Name": "",
  93. "SwanSchema": "baiduboxapp://swan/B3GF3AWvCSr59myIs61uqaoYz7pPCSY1/wjz/bdxd/order-detail/order-detail?orderId=159259079195"
  94. }
  95. },
  96. // 售后订单信息,若该订单发生退款/售后,需新增同步其售后订单的售后信息状态
  97. "SubsOrder": {
  98. "Status": 0,
  99. "Items": [
  100. {
  101. // 售后订单ID
  102. "SubOrderID":"onlyOne",
  103. // 自订单状态,枚举参照 【退换货枚举值】
  104. "SubStatus":"",
  105. // 售后订单创建时间,时间戳,单位秒
  106. "CTime":1571026201,
  107. // 售后订单修改时间,时间戳,单位秒
  108. "MTime":1571026201,
  109. // 退款退货订单详情跳转
  110. "OrderDetail":{
  111. "Status": 2,
  112. "Name": "",
  113. "SwanSchema": "baiduboxapp://swan/B3GF3AWvCSr59myIs61uqaoYz7pPCSY1/wjz/bdxd/order-detail/order-detail?orderId=159259079195"
  114. },
  115. // 商品 退款/退货 信息
  116. "Refund":{
  117. // 退款总金额
  118. "Amount":10,
  119. // 退款/退货商品
  120. "Product":[
  121. {
  122. // 商品ID
  123. "ID":"1014093064",
  124. // 商品退款/商品退货 数量
  125. "Quantity":1,
  126. // 应退金额,单位分
  127. "Amount":0
  128. }
  129. ]
  130. },
  131. // 退款订单类型
  132. "OrderType":1
  133. }
  134. ]
  135. }
  136. }
  137. }
  138. ]
  139. }

订单类型

1) 从交易的正逆 2 个场景,订单中心整体分为 MainOrder 主订单和 SubsOrder 售后订单 2 种类型。
MainOrder:主订单,即购买商品、服务的订单。
SubsOrder:售后订单,当订单发生退换货等售后时,需导入售后相关的信息,作为售后订单。

2) 主订单又细分为实物订单、快递服务订单、虚拟订单、上门服务订单、酒店订单、出行票务订单、打车订单 7 种,每种订单状态定义不同,前端对用户的展示也不同。
· 实物订单:进行实物交易,需要发货等物流的交易订单。
· 快递服务订单:快递类的服务订单。
· 虚拟订单:不需要货源、不涉及物流的交易订单。
· 上门服务订单:服务类订单,含搬家拉货、保洁、衣物洗护、上门维修,不含快递、外卖。
· 酒店订单:酒店类的订单。
· 出行票务订单:出行票务类订单,含汽车票、火车票、机票等。
· 打车订单:打车类的订单。

POST 请求字段说明

Data

字段名称字段类型必填备注
ResourceIDString开发者接入的唯一订单 ID
BizAPPIDString小程序 AppKey
CtimeInt订单创建时间(单位:秒)
MtimeInt订单最后被修改时间(单位:秒)
CateIDInt订单种类:1(实物)、2(虚拟物品)、5(快递服务类)、6(快递服务类无金额订单)、10(上门服务类)、11(上门服务类无金额订单)、15(酒店类)、20(票务类)、25(打车类)、26(打车类无金额订单)
TitleString订单标题,建议使用订单商品名称
StatusInt订单状态,其值根据TypeID不同有不同的定义,详细见下
ExtData.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

字段名称字段类型必填备注
MainOrderData.Ext.MainOrder主订单信息(购买商品订单)
SubsOrderData.Ext.SubsOrder售后订单信息(退换货/售后订单)

Data.Ext.MainOrder

字段名称字段类型必填备注
ProductsData.Ext.MainOrder.Product数组,商品信息列表,若商品只有 1 个则数组长度为 1
PaymentData.Ext.MainOrder.Payment支付信息
AppraiseData.Ext.MainOrder.Appraise待评价状态订单的评价页结构,仅订单为可评价状态,且还未进行评价时提供该信息
OrderDetailData.Ext.MainOrder.OrderDetail订单详情页的信息

Data.Ext.MainOrder.Product

字段名称字段类型必填备注
IDString商品 ID ,开发者的唯一商品 ID
NameString商品名字
DescString商品简述
QuantityInt本商品的交易数量
PriceInt本商品原价(单位:分),即100代表1元
PayPriceInt实付价(单位:分),即100代表1元
ImgListString商品预览,值为预览图 URL 地址,最多 5 张
DetailPageData.Ext.MainOrder.Product.DetailPage商品详情的跳转的跳转结构
SkuAttrData.Ext.MainOrder.Product.SkuAttr商品规格,最多 400 个

Data.Ext.MainOrder.Express

字段名称字段类型必填备注
IDString快递单号
NameString快递公司名称
CodeString快递公司对应的编号,具体 Code 列表见下方快递公司信息码表
TypeInt快递类型,1:商家给用户发货,2:用户给商家退货;开发者根据快递类型传 1 或 2

Data.Ext.MainOrder.Product.DetailPage

该结构定义了如何执行跳转的数据结构协议。 Scheme 即客户端统一调起协议,协议的使用需要确保参数传递的正确。

字段名称字段类型必填备注
StatusInt默认传 2
SwanSchemaString商品详情页的跳转地址,用以小程序跳转 Scheme ,小程序跳转 Scheme 协议规则

Data.Ext.MainOrder.Product.SkuAttr

商品规格

字段名称字段类型必填备注
NameString规格名称,例如“颜色”或“尺寸”
ValueString规格值

导入订单信息 - 图1 导入订单信息 - 图2

导入订单信息 - 图3 导入订单信息 - 图4

  1. // Data.Ext.MainOrder.Product.SkuAttr 示例
  2. [
  3. {
  4. "Name": "颜色",
  5. "Value": "Red"
  6. },
  7. {
  8. "Name": "颜色",
  9. "Value": "Black"
  10. }
  11. ]

Data.Ext.MainOrder.Payment

开发者须知:为确保给用户展示正确、有效的订单价格,订单相关的金额会严格根据下方公式进行校验,即实付金额 = 商品总金额 + 其他付款金额 - 优惠金额。
Payment.Amount = (Products.PayPrice * Products.Quantity) + (PaymentInfo.Value * PaymentInfo.Quantity) - (PreferentialInfo.Value * PreferentialInfo.Quantity)

字段名称字段类型必填备注
MethodInt付款方式,1(在线付),2(货到付款)
AmountInt实付金额(单位:分),即1001元
IsPaymentBoolean是否已付款
TimeInt付款时间(单位:秒)
PreferentialInfoData.Ext.MainOrder.Payment.PaymentSpecInfo优惠券信息
PaymentInfoData.Ext.MainOrder.Payment.PaymentSpecInfo其他付款信息,如运费、保险等

Data.Ext.MainOrder.Payment.PaymentSpecInfo

字段名称字段类型必填备注
NameString展示名称
ValueInt合计金额(单位:分),即1001元
QuantityInt数量

Data.Ext.MainOrder.Appraise

当主订单状态为200 交易完成,订单为可评价状态Status为2,并提供订单评价页的跳转地址SwanSchema ,订单会出现在【待评价】tab,并显示【评价】入口,引导用户打开小程序进行评价。
导入订单信息 - 图5

该结构定义了如何执行跳转的数据结构协议。 Scheme 即客户端统一调起协议,协议的使用需要确保参数传递的正确。

字段名称字段类型必填备注
StatusInt0(不可评价状态或已评价状态)、2(待评价状态,允许跳转)
SwanSchemaString评价页的跳转地址,用以小程序跳转 Scheme ,小程序跳转 Scheme 协议规则

Data.Ext.MainOrder.OrderDetail

该结构定义了如何执行跳转的数据结构协议。 Scheme 即客户端统一调起协议,协议的使用需要确保参数传递的正确。

字段名称字段类型必填备注
StatusInt默认传 2
SwanSchemaString订单详情页的跳转地址,用以小程序跳转 Scheme ,小程序跳转 Scheme 协议规则

Data.Ext.MainOrder.Express

字段名称字段类型必填备注
IDString快递单号
NameString快递公司名称
CodeString快递公司对应的编号,详情请参考快递公司信息码表
TypeInt快递类型,1:商家给用户发货,2:用户给商家退货;开发者根据快递类型传 1 或 2
StatusInt开发者默认传 0

返回值参数说明

注意:订单同步文档中的所有接口返回字段和示例一致,其他接口的返回请参考该说明

字段名称字段类型备注
biz_app_idStringPOST 请求参数中 BizAPPID
cate_idIntPOST 请求参数中 CateID
resource_idStringPOST 请求参数中 ResourceID
rows_affectedInt请求受影响行数(即请求是否成功, 0 为失败,非 0 为成功)

响应示例

  • JSON
  1. {
  2. "errno": 0,
  3. "msg": "success",
  4. "data": [
  5. {
  6. "biz_app_id": "IGRshW1EovxlMIoeLXQZkQiGcGGyjsPX",
  7. "cate_id": "1",
  8. "resource_id": "aa",
  9. "rows_affected": "0"
  10. }
  11. ]
  12. }