接入系统文档

Qunar 接入文档 Qunar 接入文档

去哪儿产品接入模式

产品接入的交互过程图,如下:

G cluster0 去哪儿 cluster1 供应商 q1 p1 q1->p1 去哪儿定时全量抓取产品 q2 p2 q2->p2 用户下单的时候,调用产品接口验证价格库存 q3 q4 p3 p3->q3 敏感信息发生变化通知去哪儿实时更新 p4 p4->q4 产品下线通知去哪儿实时下线产品

详细介绍

1. 去哪儿定时全量抓取产品

G 去哪儿 去哪儿 获取产品列表 获取产品列表 去哪儿->获取产品列表 调用索引接口 获取产品详情 获取产品详情 获取产品列表->获取产品详情 调用产品详情接口 去哪儿产品 去哪儿产品 去哪儿产品->获取产品列表 遍历 获取价格库存 获取价格库存 获取产品详情->获取价格库存 调用价格库存接口 获取价格库存->去哪儿产品 详情和价格入库

注意:获取到一个产品需要调用两个接口,产品详情接口价格库存接口。详见下面章节中的接口定义。

2. 用户下单的时候,调用产品接口验证价格库存

G 用户 用户 去哪儿 去哪儿 用户->去哪儿 提交订单 获取价格库存 获取价格库存 去哪儿->获取价格库存 调用价格库存接口 验证结果 验证结果 获取价格库存->验证结果 验证用户提交的价格库存是否可售 更新价格库存 更新价格库存 验证结果->更新价格库存 价格库存不一致 用户正常下单 用户正常下单 验证结果->用户正常下单 价格一致,库存足够 更新价格库存->用户 提示用户价格库存已变更

3. 敏感信息发生变化通知去哪儿实时更新

G 供应商 供应商 去哪儿 去哪儿 供应商->去哪儿 调用产品变更接口 获取最新信息 获取最新信息 去哪儿->获取最新信息 根据参数调用对应的产品信息接口 去哪儿产品 去哪儿产品 获取最新信息->去哪儿产品 更新产品信息

注意:所说的调用对应的产品信息接口就是说,可用过参数控制决定,更新产品的全部(产品详情和价格库存)信息或者只更新价格库存。详见下面章节中的接口定义。

4. 产品下线通知去哪儿实时下线产品

G 供应商 供应商 去哪儿 去哪儿 供应商->去哪儿 调用下线产品接口 去哪儿产品下线 去哪儿产品下线 去哪儿->去哪儿产品下线 下线对应的产品

注意事项

  1. 由于去哪儿会定时全量抓取产品,每天对接口的访问会有一定的次数,这是根据产品的数量以及抓取的频率决定的,抓取频率是可设置的,所以供应商要注意提供的接口是否允许去哪儿大量的访问,如果不能的话要及早提出,去哪儿可以将抓取频率适当调整,或者双方协商其他解决办法。
  2. 去哪儿提供的接口均有 ip 限制,再上线前需要供应商提供访问去哪儿接口的所有 ip,支持多个。
  3. 由于全量抓取产品时耗时较长,目前抓取情况的不会直接反馈给供应商,如果有需要,可采取邮件通知的方法将抓取的情况反馈给供应商,或者供应商可提供接口(文档未包含此接口,如果有需要,需要另外协商),去哪儿将每次抓取的情况通知供应商。

合作流程

步骤 内容 说明 备注
1 前期沟通 和供应商确认产品对应,接入产品大概数量
2 Qunar 提供接口文档 供应商了解接口文档
3 接口文档沟通 对接口文档不明确的地方,双方沟通 邮件,QQ,电话会议等
4 开发 双方技术按照约定进行开发
5 联调 提供各自的环境连调,包括产品内容的显示,下单支付全部流程(如果有的话)
6 发布 各自发布到正式环境
7 维护 正式环境出现问题,调查和解决

接口详细说明

Qunar 提供的接口均需要通过账号密码验证以及白名单限制,账号和密码请找 Qunar 开发索要,要注意测试用账号密码和生产环境的是不同的,不能混用。

上线前索取真实账号和密码,并提供需要访问的 ip。

注意:对于产品接入,下面所述产品接入接口都需要实现。

产品索引接口

使用场景

  1. 此接口需供应商提供
  2. 去哪儿全量更新时以此索引来循环获取产品信息

接口参数

返回结果

<?xml version="1.0" encoding="utf-8"?>
<root>
<products>
	<product>
            <resourceId>1101</resourceId>  //供应商产品ID
            <fetchType>1</fetchType> //抓取方式,必填,1-全部抓取,2-价格库存分开抓取
            <apiUrl>http://visa.byecity.com/visa_34726.html?resourceId=4432&type=all</apiUrl>      //产品全部信息URL,当fetch-type=1时使用
            <productUrl needUpdate="true">http://visa.byecity.com/visa_34726.html?resourceId=4432&type=product</productUrl>   //产品详情信息URL fetch-type=2时使用
            <priceUrl needUpdate="true">http://visa.byecity.com/visa_34726.html?resourceId=4432&type=price</priceUrl>   //价格详情信息URL fetch-type=2时使用
   </product>
   <product>
       <!-- 多个product -->
   </procut>
</products>
</root>

接口示例

产品信息接口

使用情境描述

  1. 此接口需供应商提供
  2. 去哪儿用来获取产品信息使用

接口参数

参数名称 格式 是否可为空 参数说明 示例
resourceId 字符串 供应商产品id,需要保证唯一性 1101
type 字符串 是,默认 all,抓取全部信息 抓取产品详情信息或价格库存信息 取值为product或price

返回结果

参数为 type=product 时,按照去哪儿提供的模板返回产品详情信息。

参数为 type=price 时,按照去哪儿提供的模板返回产品的价格库存信息。

参数为 type=all 时,按照去哪儿提供的模板返回产品的产品和库存价格信息。

接口示例

去哪儿提供了接口xml文档和展示详情页的对照工具
提示:点击左侧xml文档中的节点会定位到右侧产品详情页中的对应展示内容

产品变更通知接口

使用情景

  1. 此接口去哪儿提供
  2. 产品敏感信息发生变化时,供应商通知去哪儿更新产品。产品的敏感信息包括以下几项
    • 产品的价格库存
    • 产品的费用包含和费用不包含

接口URL

/supplier/product/pushProduct.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例
resource_id 字符串 供应商产品id,需要保证唯一性 1101,1102,1103
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540

返回结果

{
  "ret": 1,  //操作是否成功,1表示成功,0表示失败
  "errmsg": "操作成功",  //错误信息
  "data": {
      "XXX": ""    //resource_id,以及对应结果
  }
}

注意事项

  1. 此接口有 ip 白名单限制,需供应商提供要访问的 ip。

产品下线通知接口

使用情景

  1. 此接口由去哪儿提供
  2. 供应商通知去哪儿下线某个产品

接口URL

/supplier/product/pushofflineProduct.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例
resourceId 字符串 供应商产品id,需要保证唯一性 1101,1102,1103
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540

返回结果

{
  "ret":1, //操作是否成功,1表示成功,0表示失败
  "errmsg":"操作成功",  //错误信息
}

注意事项

  1. 此接口有ip白名单限制,需供应商提供要访问的 ip

去哪儿订单接入模式

说明

Qunar 提供的接口均需要通过账号密码验证以及白名单限制,账号和密码请找 Qunar 开发索要,要注意测试用账号密码和生产环境的是不同的,不能混用。

上线前索取真实账号和密码,并提供需要访问的 ip。

通用状态定义

供应商和Qunar都按照这个表定义订单状态

订单状态码 订单状态
UNPAYUNCONFIRM 未支付,等待供应商确认资源
UNPAYCONFIRMED 未支付,供应商已确认资源
CONFIRM_FAIL 预订失败,申请资源失败
PAY 已支付
PAY_ERROR 订单支付异常
SUCCESS 订单完成
CANCEL 订单取消
PART_REFUND_SUCC 订单部分退款成功
REFUNDED 退款成功
REFUND_REJECT 退款成功
REFUND_JUDGE_OK 仲裁退款成功
REFUND_ACCEPT 退款已受理
REFUND_APPLY 等待退款

供应商返回的错误码表

结果代码 结果描述
0 操作成功
1001 验证摘要串验证失败
1002 无效或者不完整的 XML 数据格式
1100 传入参数信息错误
1101 没有对应线路产品
1102 产品库存不足
1103 双方售价不符
1104 没有对应订单
1105 订单号重复
1200 系统错误

证件类型号码表

序号 证件类型
0 身份证
1 护照
2 军官证
3 回乡证
4 台胞证
5 国际海员证
6 外国人永久居留证
7 其他
8 港澳通行证
13 台湾通行证

其他

下面接口中的 orderId 为供应商订单 id,qunar 订单 id 用 displayId 表示。

订单交互图

G cluster0 去哪儿 cluster1 供应商 q1 p1 q1->p1 下单前校验 q2 p2 q2->p2 同步订单给供应商 q3 p3 q3->p3 确认订单 q4 p4 q4->p4 双向查询订单 q5 p5 q5->p5 修改订单通知 q6 p6 q6->p6 订单取消通知接口 q7 p7 q7->p7 支付后通知 q8 p8 q8->p8 验证消费码接口 q9 p9 q9->p9 用户请求退款通知 q10 p10 q10->p10 退款成功通知

接口详细说明

订单同步接口

使用情境描述

  1. 此接口供应商提供
  2. Qunar将订单信息同步给供应商

接口参数

Qunar 以 json 格式将下面数据 post 给供应商

{
    "data": {
        "orderId": null,              //供应商系统订单id
        "resourceId": "1101",         //供应商系统产品resourceId   
        "shopId": "677929333",         //店铺Id   
        "product": {
            "productId": "43825181",  //去哪儿产品ID
            "title": "产品标题",  //产品标题
            "pFunction": "group", //产品类型: group/free/visa/cruise
            "departure": "北京",  //出发地
            "arrive": "三亚"  //目的地
        },
        "takeoffDate": "2014-02-26",  //客人出行日期
        "totalCount": 1,  //购买数量
        "totalPrice": 1960,  //总价
        "origin": 1960,               //总价
        "money": 0,                   //客人已支付金额 
        "contactUser": "张三",         //联系人名称
        "contactMobile": "18612341234",//联系人手机
        "contactMail": "",             //联系人邮箱
        "contactWeChat": "",             //联系人微信号
        "orderTime": "2019-12-24 20:07:33",//下单时间
        "operateTime": "2019-12-25 20:07:33",//下单时间
        "orderStatus": "UNPAYUNCONFIRM", //订单状态,具体请参考状态表
        "displayId": "0144520140225223444124094",//qunar订单id
        "orderRemark": null, //订单备注信息
        "payTime": null,     //订单支付时间
        "payDeadLine": null, //订单未支付,系统自动取消时间
        "priceId":"123",    //套餐价格ID,针对套餐产品有效
        "priceTitle":"套餐一", //套餐价格名称,针对套餐产品有效
        "count": {
            "adultCount": 2,  //成人出行人数
            "childCount": 0,  //儿童出行人数
            "taocanCount": 1, //购买套餐数量(非套餐产品,改字段为0)
            "otherCount": 0,  //其他数量,目前为0
            "roomCount": 1    //房间数量
        },
        "price": {
            "adultPrice": 980, //成人价
            "childPrice": 0,   //儿童价
            "taocanPrice": 1960, //每份套餐价(非套餐产品,改字段为0)
            "roomSendPrice": 200 //单房差
        },
        "passengers": [
            {
                "name": "张三",  //旅客姓名
                "idType": 0,    //旅客证件类型,具体请参考证件类型表
                "idNo": "220103198505051234", //证件号码
                "isAdult": true, //是否成人
                "abroadRecord":1 //出境记录,针对签证产品,1,一年内有出境该国记录;2,无不良出境记录(如:境外延期境外罚款等),3,一年内有被拒签记录
            },
            {
                "name": "李四",
                "idType": 0,
                "idNo": "220103198505051234",
                "isAdult": true,
                "abroadRecord":1
            }
        ],
        "elements": [
            {
                "type": "Hotel",  //元素类型 Hotel、sight
                "relateId": "5417",    //关联ID
                "date": "2015-05-14"//使用日期
            },
            {
                "type": "sight",
                "relateId": "5418",
                "date": "2015-05-15"
            }
        ],
        "visaPriceId": "3456",//签证套餐ID
        "visaStatus": "RECEIVE", //签证状态
        "visaExpressType": " ",//签证邮寄方式
        "visaExpressAddress": "北京市海淀区苏州街维亚大厦17层", //客人收件地址
        "insurance": 1,     //是否购买了保险 1-已经购买 0-没有购买
        "spellRoom": 1, //是否同意拼房 1-同意 0-不同意
        "totalRoomSendMoney":1,    //房差总价
        "mainOrder":true //是否是主订单
    },
    "opType": "submitOrder"  //操作类型
}

返回结果

供应商返回信息:

{
    "retCode": 0,                    //操作是否成功,0表示成功,其他表示失败
    "orderNum": "ABC123",              //供应商系统生成订单号
    "payDeadLine": "2014-02-26 00:34:40", //即时支付类产品,如果供应商对此订单最晚付款时间有限制,
                                          //可在此时返回,为空表示按照 Qunar(下单时间往后推24小时)
                                          //默认设置
    "message":"下单成功"                //提示信息
}

供应商查询订单接口

使用情境描述

  1. Qunar 提供
  2. 供应商向Qunar查询订单信息

接口URL

/supplier/order/getOrderDetail.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例 备注
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540
orderId 字符串 供应商订单ID 7897893,429080 多个以逗号分隔
startDate 字符串 开始时间 2018-02-01
endDate 字符串 结束时间 2018-02-28 最多六个月

返回结果

{
    "ret":1,   //查询正确
	"total":1, //订单条数
	"data": [ {
            "orderId": null,              //供应商系统订单id
            "resourceId": "1101",         //供应商系统产品resourceId   
            "shopId": "677929333",         //店铺Id   
            "product": {
                "productId": "43825181",  //去哪儿产品ID
                "title": "产品标题",  //产品标题
                "pFunction": "group", //产品类型: group/free/visa/cruise
                "departure": "北京",  //出发地
                "arrive": "三亚"  //目的地
            },
            "takeoffDate": "2014-02-26",  //客人出行日期
            "totalCount": 1,  //购买数量
            "totalPrice": 1960,  //总价
            "origin": 1960,               //总价
            "money": 0,                   //客人已支付金额 
            "contactUser": "张三",         //联系人名称
            "contactMobile": "18612341234",//联系人手机
            "contactMail": "",             //联系人邮箱
            "contactWeChat": "",             //联系人微信号
            "orderTime": "2019-12-24 20:07:33",//下单时间
            "operateTime": "2019-12-25 20:07:33",//下单时间
            "orderStatus": "UNPAYUNCONFIRM", //订单状态,具体请参考状态表
            "displayId": "0144520140225223444124094",//qunar订单id
            "orderRemark": null, //订单备注信息
            "payTime": null,     //订单支付时间
            "payDeadLine": null, //订单未支付,系统自动取消时间
            "priceId":"123",    //套餐价格ID,针对套餐产品有效
            "priceTitle":"套餐一", //套餐价格名称,针对套餐产品有效
            "count": {
                "adultCount": 2,  //成人出行人数
                "childCount": 0,  //儿童出行人数
                "taocanCount": 1, //购买套餐数量(非套餐产品,改字段为0)
                "otherCount": 0,  //其他数量,目前为0
                "roomCount": 1    //房间数量
            },
            "price": {
                "adultPrice": 980, //成人价
                "childPrice": 0,   //儿童价
                "taocanPrice": 1960, //每份套餐价(非套餐产品,改字段为0)
                "roomSendPrice": 200 //单房差
            },
            "passengers": [
                {
                    "name": "张三",  //旅客姓名
                    "idType": 0,    //旅客证件类型,具体请参考证件类型表
                    "idNo": "220103198505051234", //证件号码
                    "isAdult": true, //是否成人
                    "abroadRecord":1 //出境记录,针对签证产品,1,一年内有出境该国记录;2,无不良出境记录(如:境外延期境外罚款等),3,一年内有被拒签记录
                },
                {
                    "name": "李四",
                    "idType": 0,
                    "idNo": "220103198505051234",
                    "isAdult": true,
                    "abroadRecord":1
                }
            ],
            "elements": [
                {
                    "type": "Hotel",  //元素类型 Hotel、sight
                    "relateId": "5417",    //关联ID
                    "date": "2015-05-14"//使用日期
                },
                {
                    "type": "sight",
                    "relateId": "5418",
                    "date": "2015-05-15"
                }
            ],
            "visaPriceId": "3456",//签证套餐ID
            "visaStatus": "RECEIVE", //签证状态
            "visaExpressType": " ",//签证邮寄方式
            "visaExpressAddress": "北京市海淀区苏州街维亚大厦17层", //客人收件地址
            "insurance": 1,     //是否购买了保险 1-已经购买 0-没有购买
            "spellRoom": 1, //是否同意拼房 1-同意 0-不同意
            "totalRoomSendMoney":1,    //房差总价
            "mainOrder":true //是否是主订单
        }
     ]
}

订单二次确认接口

使用情境描述

  1. Qunar 提供
  2. 供应商确认订单后,调用此接口通知Qunar

接口URL

/supplier/order/confirmOrderPost.qunar

接口参数

{
        "user":"11111111111",            //qunar分配user 
        "pass":"22222222222",            //qunar分配pass 
        "orderId": "ABC123",                //供应商系统订单号  
        "payDeadLine":"2014-02-26 00:34:40", //订单未支付自动关闭时间,如为空,则置为当前时间后推24小时
        "orderStatus":"UNPAYCONFIRMED", //订单状态
        "money":3072.00, //订单价格,可以改价
        "reason":"订单原价3072.00元;最终价格为3072.00元" //修改原因
}

返回结果

{
       "ret": 1,            //操作是否成功,1表示成功,其他表示失败
       "message": "操作成功" //提示信息
}

Qunar支付通知接口

使用情境描述

  1. 供应商提供
  2. Qunar 端订单信息修改时调用此接口通知,用于用户支付后,Qunar通知供应商支付状态和支付时间

接口参数

Qunar以post的形式将下面信息发送给供应商

{
    "data": {
        "orderId": null,              //供应商系统订单id
        "resourceId": "1101",         //供应商系统产品resourceId   
        "shopId": "677929333",         //店铺Id   
        "product": {
            "productId": "43825181",  //去哪儿产品ID
            "title": "产品标题",  //产品标题
            "pFunction": "group", //产品类型: group/free/visa/cruise
            "departure": "北京",  //出发地
            "arrive": "三亚"  //目的地
        },
        "takeoffDate": "2014-02-26",  //客人出行日期
        "totalCount": 1,  //购买数量
        "totalPrice": 1960,  //总价
        "origin": 1960,               //总价
        "money": 0,                   //客人已支付金额 
        "contactUser": "张三",         //联系人名称
        "contactMobile": "18612341234",//联系人手机
        "contactMail": "",             //联系人邮箱
        "contactWeChat": "",             //联系人微信号
        "orderTime": "2019-12-24 20:07:33",//下单时间
        "operateTime": "2019-12-25 20:07:33",//下单时间
        "orderStatus": "UNPAYUNCONFIRM", //订单状态,具体请参考状态表
        "displayId": "0144520140225223444124094",//qunar订单id
        "orderRemark": null, //订单备注信息
        "payTime": null,     //订单支付时间
        "payDeadLine": null, //订单未支付,系统自动取消时间
        "priceId":"123",    //套餐价格ID,针对套餐产品有效
        "priceTitle":"套餐一", //套餐价格名称,针对套餐产品有效
        "count": {
            "adultCount": 2,  //成人出行人数
            "childCount": 0,  //儿童出行人数
            "taocanCount": 1, //购买套餐数量(非套餐产品,改字段为0)
            "otherCount": 0,  //其他数量,目前为0
            "roomCount": 1    //房间数量
        },
        "price": {
            "adultPrice": 980, //成人价
            "childPrice": 0,   //儿童价
            "taocanPrice": 1960, //每份套餐价(非套餐产品,改字段为0)
            "roomSendPrice": 200 //单房差
        },
        "passengers": [
            {
                "name": "张三",  //旅客姓名
                "idType": 0,    //旅客证件类型,具体请参考证件类型表
                "idNo": "220103198505051234", //证件号码
                "isAdult": true, //是否成人
                "abroadRecord":1 //出境记录,针对签证产品,1,一年内有出境该国记录;2,无不良出境记录(如:境外延期境外罚款等),3,一年内有被拒签记录
            },
            {
                "name": "李四",
                "idType": 0,
                "idNo": "220103198505051234",
                "isAdult": true,
                "abroadRecord":1
            }
        ],
        "elements": [
            {
                "type": "Hotel",  //元素类型 Hotel、sight
                "relateId": "5417",    //关联ID
                "date": "2015-05-14"//使用日期
            },
            {
                "type": "sight",
                "relateId": "5418",
                "date": "2015-05-15"
            }
        ],
        "visaPriceId": "3456",//签证套餐ID
        "visaStatus": "RECEIVE", //签证状态
        "visaExpressType": " ",//签证邮寄方式
        "visaExpressAddress": "北京市海淀区苏州街维亚大厦17层", //客人收件地址
        "insurance": 1,     //是否购买了保险 1-已经购买 0-没有购买
        "spellRoom": 1, //是否同意拼房 1-同意 0-不同意
        "totalRoomSendMoney":1,    //房差总价
        "mainOrder":true //是否是主订单
    },
    "opType": "orderPay"  //操作类型
}

    

返回结果

{
   "retCode": 0,        //操作是否成功,0表示成功,其他表示失败
   "message": "操作成功" //提示信息
}

供应商修改订单通知

使用情境描述

  1. Qunar 提供
  2. 订单价格修改,确认订单

接口URL

/supplier/order/modifyOrderPost.qunar

接口参数

供应商以post形式将下面信息同步给Qunar

{
        "user":"11111111111",            //qunar分配user 
        "pass":"22222222222",            //qunar分配pass 
        "orderId":"ABC123",            //供应商系统订单号 
        "contactUser":"张三",            //联系人姓名 
        "contactMail":"test@qunar.com",            //联系人邮箱 
        "money":2000.00,             //修改后总价格
        "passengers": [
            {
                "name": "张三",  //旅客姓名
                "idType": 0,    //旅客证件类型,具体请参考证件类型表
                "idNo": "220103198505051234", //证件号码
                "isAdult": true, //是否成人
                "abroadRecord":1 //出境记录,针对签证产品,1,一年内有出境该国记录;2,无不良出境记录(如:境外延期境外罚款等),3,一年内有被拒签记录
            },
            {
                "name": "李四",
                "idType": 0,
                "idNo": "220103198505051234",
                "isAdult": true,
                "abroadRecord":1
            }
        ],
        "priceChageReason": "给客人打折" //价格修改原因 
}

返回结果

{
  "ret": 1,            //操作是否成功,1表示成功,0表示失败
  "message": "操作成功" //提示信息
}

Qunar取消订单通知接口

使用情境描述

  1. 供应商提供
  2. Qunar方面取消订单通知供应商

接口参数

Qunar以post的形式将下面信息发送给供应商

{
    "data": {
        "orderId": null,              //供应商系统订单id
        "resourceId": "1101",         //供应商系统产品resourceId   
        "shopId": "677929333",         //店铺Id   
        "product": {
            "productId": "43825181",  //去哪儿产品ID
            "title": "产品标题",  //产品标题
            "pFunction": "group", //产品类型: group/free/visa/cruise
            "departure": "北京",  //出发地
            "arrive": "三亚"  //目的地
        },
        "takeoffDate": "2014-02-26",  //客人出行日期
        "totalCount": 1,  //购买数量
        "totalPrice": 1960,  //总价
        "origin": 1960,               //总价
        "money": 0,                   //客人已支付金额 
        "contactUser": "张三",         //联系人名称
        "contactMobile": "18612341234",//联系人手机
        "contactMail": "",             //联系人邮箱
        "contactWeChat": "",             //联系人微信号
        "orderTime": "2019-12-24 20:07:33",//下单时间
        "operateTime": "2019-12-25 20:07:33",//下单时间
        "orderStatus": "UNPAYUNCONFIRM", //订单状态,具体请参考状态表
        "displayId": "0144520140225223444124094",//qunar订单id
        "orderRemark": null, //订单备注信息
        "payTime": null,     //订单支付时间
        "payDeadLine": null, //订单未支付,系统自动取消时间
        "priceId":"123",    //套餐价格ID,针对套餐产品有效
        "priceTitle":"套餐一", //套餐价格名称,针对套餐产品有效
        "count": {
            "adultCount": 2,  //成人出行人数
            "childCount": 0,  //儿童出行人数
            "taocanCount": 1, //购买套餐数量(非套餐产品,改字段为0)
            "otherCount": 0,  //其他数量,目前为0
            "roomCount": 1    //房间数量
        },
        "price": {
            "adultPrice": 980, //成人价
            "childPrice": 0,   //儿童价
            "taocanPrice": 1960 //每份套餐价(非套餐产品,改字段为0)
            "roomSendPrice": 200 //单房差
        },
        "passengers": [
            {
                "name": "张三",  //旅客姓名
                "idType": 0,    //旅客证件类型,具体请参考证件类型表
                "idNo": "220103198505051234", //证件号码
                "isAdult": true, //是否成人
                "abroadRecord":1 //出境记录,针对签证产品,1,一年内有出境该国记录;2,无不良出境记录(如:境外延期境外罚款等),3,一年内有被拒签记录
            },
            {
                "name": "李四",
                "idType": 0,
                "idNo": "220103198505051234",
                "isAdult": true,
                "abroadRecord":1
            }
        ],
        "elements": [
            {
                "type": "Hotel",  //元素类型 Hotel、sight
                "relateId": "5417",    //关联ID
                "date": "2015-05-14"//使用日期
            },
            {
                "type": "sight",
                "relateId": "5418",
                "date": "2015-05-15"
            }
        ],
        "visaPriceId": "3456",//签证套餐ID
        "visaStatus": "RECEIVE", //签证状态
        "visaExpressType": " ",//签证邮寄方式
        "visaExpressAddress": "北京市海淀区苏州街维亚大厦17层", //客人收件地址
        "insurance": 1,     //是否购买了保险 1-已经购买 0-没有购买
        "spellRoom": 1, //是否同意拼房 1-同意 0-不同意
        "totalRoomSendMoney":1,    //房差总价
        "mainOrder":true //是否是主订单
    },
    "opType": "cancelOrder"  //操作类型
}

返回结果

{
   "retCode": 0,        //操作是否成功,0表示成功,其他表示失败
   "message": "操作成功" //提示信息
}

供应商取消订单通知接口

使用情境描述

  1. Qunar 提供
  2. 供应商对未确认的订单,取消订单通知qunar

接口URL

/supplier/order/cancelOrder.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例 备注
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540
orderId 字符串 供应商订单ID 7897893

返回结果

{
        "ret": 1,            //操作是否成功,1表示成功,其他表示失败
        "message": "操作成功" //提示信息
}

供应商延时订单接口

使用情境描述

  1. Qunar 提供
  2. 对已确认的订单,供应商延长用户的付款时间

接口URL

/supplier/order/delayOrder.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例 备注
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540
orderId 字符串 供应商订单ID 7897893
delayHour int 延迟时长 5

返回结果

{
        "ret": 1,            //操作是否成功,1表示成功,其他表示失败
        "message": "操作成功" //提示信息
}

供应商验证消费码接口(废弃)

使用情境描述

  1. Qunar 提供
  2. 供应商验证消费码

接口URL

/supplier/order/couponOrder.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例 备注
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540
orderId 字符串 供应商订单ID 7897893
coupon 字符串 消费码 679675

返回结果

{
        "ret": 1,            //操作是否成功,1表示成功,其他表示失败
        "message": "操作成功" //提示信息
}

Qunar修改订单通知供应商接口

使用情境描述

  1. 供应商提供
  2. 用户修改联系人姓名和联系人手机号。Qunar调用供应商接口通知

接口参数

Quanr将下面信息post给供应商

{
    "data": {
        "orderId": "ABC123",           //供应商系统订单id
        "contactUser": "test123",       //联系人姓名
        "contactMobile": "18600001111" //联系人手机号码
        },
    "opType": "updateOrder"  //操作类型
}

返回结果

{
   "retCode": 0,      //操作是否成功,0表示成功,其他表示失败
   "message": "操作成功" //提示信息
}

用户请求退款通知供应商接口

使用情境描述

  1. 供应商提供
  2. 用户修改联系人姓名和联系人手机号。Qunar调用供应商接口通知

接口参数

Quanr将下面信息post给供应商

{
    "data": {
        "orderId": "ABC123",           //供应商系统订单id
        "orderStatus": "PAYREFUNDING",           //订单状态
        "refundReason": "不想去了",           //退款原因
        "refundMoney": 3072.00,           //退款金额
        "refundDesc": "全额退款"           //退款描述
        },
    "opType": "refundOrder"  //操作类型
}

返回结果

{
   "retCode": 0,        //操作是否成功,0表示成功,其他表示失败
   "message": "操作成功" //提示信息
}

供应商审核退款接口

使用情境描述

  1. Qunar 提供
  2. 供应商对退款申请进行审核操作,同意或拒绝

接口URL

/supplier/order/confirmRefundOrder.qunar

接口参数

Quanr将下面信息post给供应商

{
    "user":"11111111111",            //qunar分配user 
    "pass":"22222222222",            //qunar分配pass 
    "data": {
        "orderId": "ABC123",           //供应商系统订单id
        "status": "consent",           //审核状态, consent-同意, reject-拒绝
        "reason": "已过退款时间",           //退款原因说明
        },
    "opType": "refundOrder"  //操作类型
}

返回结果

{
   "ret": 1,            //操作是否成功,1表示成功,其他表示失败
   "message": "操作成功" //提示信息
}

Qunar订单退款成功通知接口

使用情景描述

  1. 供应商提供
  2. Qunar审核退款订单成功,调用供应商接口进行通知

接口参数

Qunar将下面消息post给供应商

{
    "data" : {
        "orderId":"ABC123",                 //供应商系统订单id
        "orderStatus": "PART_REFUND_SUCC",  // 订单状态,PART_REFUND_SUCC为部分退款成功,REFUNDED为全部退款成功
        "refundMoney":100.00,                //本次退款金额
        "refundReason": "客人不想去了",        // 退款原因
        "refundDesc": "客人不想去了"          //退款说明
         },
     "opType": "refundOrderSucc"          //操作类型     
}

返回结果

{
   "retCode": 0,            //操作是否成功,0表示成功,其他表示失败
   "message": "操作成功"   //提示信息
}

供应商支付后确认订单接口

使用情境描述

  1. Qunar 提供
  2. 订单支付后供应商确认或拒绝订单资源

接口URL

/supplier/order/confirmAfterPay.qunar

接口参数

参数名称 格式 是否可为空 参数说明 示例 备注
user 字符串 供应商验证账号 3803042451
pass 字符串 供应商验证密码 cb062aaeae5fd14d3dfce867ae5fd540
orderId 字符串 供应商订单ID 7897893
type int 操作类型 1 1=确认成交,订单变成交易成功
2=不成交,这个情况客服会仲裁退款

返回结果

{
        "ret": 1,            //操作是否成功,1表示成功,其他表示失败
        "message": "操作成功" //提示信息
}