预订宝/submitOrder
来自站长百科
submitOrder概述[ ]
- 接口地址:http://api.yudingbao.net/v1.0/hotel/order.ashx?act=submitOrder
- 动作标识:submitOrder
- 参数:见参数说明
- 请求方式:GET
- 响应模式:JSON、JSONP、XML
注意:动作标识是大小写敏感的,请养成良好的编码习惯!
参数说明[ ]
参数名称 | 参数类型 | 说明 | |
---|---|---|---|
1 | sid | string | 应用程序授权编号,在您的app通过审核后由管理员派发给您。 |
2 | skey | string | 应用程序授权公钥,在您的app通过审核后由管理员派发给您。 |
3 | hotelCode | string | 酒店编号。 |
4 | roomCode | string | 房型编号。 |
5 | roomRatePlan | int | 房价排期编号。 |
6 | checkInDate | date | 入住日期。 |
7 | checkOutDate | date | 退房日期。 |
8 | arrivalEarlyTime | date | 客人最早到店时间,通常为18:00或20:00,格式如:20:00 |
9 | arrivalLateTime | date | 客人最晚到店时间,通常为22:00或06:00,格式如:06:00 |
10 | note | string | 备注,下单时需要特别交代的事宜。可以为空。 |
11 | roomCount | int | 房间数量,不得小于1,最多不能超过10。 |
12 | guest | string | 客人姓名,多个客人使用英文“,”隔开 |
客人数量不得小于房间数,每个房间至少提供1位对应的客人姓名 | |||
13 | contacterName | string | 联系人姓名。 |
14 | contacterMobile | string | 联系人手机号码。 |
15 | contacterEMail | string | 联系人电子信箱。 |
16 | isGuaranteeable | bool | 指示该订单是否需要担保,如果需要担保则以下的信用卡信息必须全部填写。 |
17 | ccHolderName | string | 信用卡持卡人的完整姓名,必须与信用卡保持一直。 |
18 | ccNumber | string | 信用卡卡号。 |
19 | ccValidYear | int | 信用卡有效期的年份,应为4位数字。 |
20 | ccValidMonth | int | 信用卡有效期的月份,应为1-12之间的数字。 |
21 | ccVeryfyCode | string | 信用卡校验码,通常位于信用卡背面右上角的一串数字,取其后三位。 |
22 | ccIdTypeCode | int | 信用卡持卡人证件类型,详细定义如下: |
0 —— 身份证 | |||
1 —— 护照 | |||
2 —— 其他 | |||
23 | ccIdNumber | string | 信用卡持卡人的证件号码。 |
24 | test | bool | 指示当前订单是否为测试订单。默认为false。 |
该参数仅用于调试订单接口,生产环境中必须可省略或指定为false。 |
数据格式[ ]
- 响应头:
- Status:0为正常,非0表示处理请求时发生异常,通常是参数校验错误;
- Messages:当Status为非0时该字段肯定包含一条或多条消息文本;
- 响应体:
请看下表:
参数名称 | 参数类型 | 说明 | |
---|---|---|---|
1 | CancellationTime | date | 该订单的最晚取消时间。 |
如果该属性的值早于当前时间,则表示不限制取消时间。 | |||
2 | GuaranteeAmount | int | 担保金额,如果是担保订单则再次提示担保金额。 |
对于非担保订单,该属性的值总是为0。 | |||
3 | HotelOrderId | int | 订单号。请将该订单号明确告知客人知晓。 |
对于数据格式的理解,请参考下列示例代码中的XML响应演示,其中每个字段都标注了数据类型(日期类型在XML响应中统一使用GMT格式,但被标注为string,请开发者注意)。
示例代码[ ]
以下示例代码是通过HTML表单实现了该接口的部分操作,您在开发过程中应当使用自己的平台语言来模拟这些操作以捕获响应体,然后对响应体做出相应的操作。
请求示例
<!-- 这是该接口的请求示例,该接口的访问类同于如下表单的提交, 请注意:该表单使用控件的方法模拟了GET请求 --> <form id="myForm" method="get" action="http://api.yudingbao.net/v1.0/hotel/order.ashx"> <p> <!--动作标识,注意动作标识是大小写敏感的--> <input id="act" name="act" value="submitOrder" type="text" /> </p> <p> <!-- 测试模式 --> <input id="test" name="test" value="true" type="text"> <!--酒店编号--> <input id="HotelCode" name="HotelCode" value="h010t40101203" type="text"> <!--房间编号--> <input id="RoomCode" name="RoomCode" value="1017" type="text"> <!--房价排期编号--> <input id="RoomRatePlan" name="RoomRatePlan" value="46220" type="text"> <!--入住日期--> <input id="CheckInDate" name="CheckInDate" value="2011-05-18" type="text"> <!--退房日期--> <input id="CheckOutDate" name="CheckOutDate" value="2011-05-21" type="text"> <!--最晚到店时间--> <input id="arrivalLateTime" name="arrivalLateTime" value="20:00" type="text"> <!--备注信息,如果客人有特殊要求,一定要在备注里注明--> <input id="note" name="note" value="请安排有窗房间,如没有符合条件的房间,则取消此订单" type="text"> <!--要预订的房间数量--> <input id="roomCount" name="roomCount" value="3" type="text"> <!--客人数量不得小于房间数,每个房间至少提供1位对应的客人姓名--> <input id="guest" name="guest" value="张三,李四,王五" type="text"> <!--联系人信息--> <input id="contacterName" name="contacterName" value="陈先生" type="text"> <input id="contacterMobile" name="contacterMobile" value="13000000000" type="text"> <input id="contacterEMail" name="contacterEMail" value="xxx@qq.com" type="text"> <!--担保及信用卡信息--> <input id="isGuaranteeable" name="isGuaranteeable" value="false" type="text"> <input id="ccHolderName" name="ccHolderName" value="张三" type="text"> <input id="ccNumber" name="ccNumber" value="1234123412341234" type="text"> <input id="ccValidYear" name="ccValidYear" value="2012" type="text"> <input id="ccValidMonth" name="ccValidMonth" value="12" type="text"> <input id="ccVeryfyCode" name="ccVeryfyCode" value="567" type="text"> <input id="ccIdTypeCode" name="ccIdTypeCode" value="0" type="text"> <input id="ccIdNumber" name="ccIdNumber" value="100000000000000000" type="text"> </p> <p> <!--指定响应格式为XML,这里以XML为例--> <input id="format" name="format" value="xml" type="text" /> <!--指定响应体应当是已格式化的,便于阅读代码,在生产环境中应当将该值设置为false--> <input id="indent" name="indent" value="true" type="text" /> <!--产品编号。在我的账户-分销产品的应用列表中可以找到该参数的值。--> <input id="aid" name="aid" value="78663" type="text" /> <!--接口密钥。在我的账户-分销产品的应用列表中可以找到该参数的值。--> <input id="key" name="key" value="0925ed633d24577eb3ffe13f00c55a4f9739f51a77eefb1dba29bb9568acddfd" type="text" /> <!--应用程序授权编号及公钥,这是可选的--> <input id="sid" name="sid" value="" type="text"> <input id="sKey" name="sKey" value="" type="text"> </p> <p> <input id="submit" name="submit" value="提交" type="submit"> </p> </form>
XML响应
<!--XML响应--> <?xml version="1.0" encoding="utf-8"?> <HttpResponse> <Status type="number">0</Status> <Messages type="array"> </Messages> <ResponseBody type="object"> <HotelOrderId type="string">0792196480</HotelOrderId> <CancellationTime type="string">Mon, 01 Jan 0001 00:00:00 GMT</CancellationTime> <GuaranteeMoney type="string">0</GuaranteeMoney> </ResponseBody> </HttpResponse>
JSON响应
// Json响应 { "Status" : 0, "Messages" : [], "ResponseBody" : { "HotelOrderId" : "1563967658", "CancellationTime" : Date(-62135596800000), "GuaranteeMoney" : "0" } }
JSONP响应
// JsonP响应 jsoncallback({ "Status" : 0, "Messages" : [], "ResponseBody" : { "HotelOrderId" : "1563967658", "CancellationTime" : Date(-62135596800000), "GuaranteeMoney" : "0" } });