方法名称
hotel.order.create
使用说明
简单介绍
使用搜索接口或数据接口获取的酒店产品信息和用户填写的用户信息作为入参,用户输入的参数都进行校验后再提交,根据出参判断是否成单。API接口提交订单时,为防止恶意提交订单情况,一次性预订房间不要超过7间(小于8),客人入离店日期不要超过30天,如客人需要超过间房量或入离店日期超过30天情况,可让客人通过电话预订;同一个AffiliateConfirmationId(即接入方自己维护的订单号),或同一个客人的订单并发提交会有限制; 推荐设置的超时时间为30秒;若成单失败可以在45秒后重试。
须使用https访问本接口。
支付方式
分为现付和预付
现付:分为担保与非担保:
担保:分为全额担保和首晚担保,都需要考虑取消的情况,但客户到店依然需要支付房费,担保的费用会退回用户。
预付:预付都是全额预付,也要考虑取消的情况。现付的担保和预付的全款都需要调用支付功能。
艺龙提供一种公司担保业务,开通此业务,成单时可以不向艺龙提交用户的信用卡信息。需要开通请联系商务。
更为细致的使用说明请前往以下链接查看:http://open.elong.com/faq/detail?id=121&plt=2
信用卡支付发送短信验证码环节,短信验证码限制是90秒/次,可通过hotel.order.pay接口重新发送验证码。
信用卡支付退款时间:离店后担保金退回各个银行处理退款进度是不同的,预计3-15工作日原路退回。
建议使用信用卡支付合作方在页面进行提示,避免造成不必要客诉。
异常处理
当收到了明确的响应的时候,请参考错误码来决定是否需要重试(本接口常见错误码处理方法在本页面下方);
当其他的未知异常不能正常处理的时候(如超时、网络异常、返回异常字符),请重试, 确保每个请求都有明确的正常的返回;
重试的时候不需要修改AffiliateConfirmationId,这样就不会造成重复提交;
也可以通过AffiliateConfirmationId查询hotel.order.detail是否生成了订单再做后继处理;
通过接口提交的订单没有收到返回,但能在hotel.order.list中查询到,则该订单创建成功。
在hotel.incr.order订单增量接口里面有新单产生的时候也有消息出现,可以通过AffiliateConfirmationId关联订单。
如遇到网络异常、系统异常等异常场景,重试或者其他补偿措施失效时,请必须有人工客服跟进确认订单的实际状态,避免由于双方状态差异而产生的损失。
关于重单
当客人已经通过其他渠道预定了该酒店,代理商再次提交成单请求时会失败。 判定依据:入住日期+相同联系人手机号码(无手机号码,按空处理)+ 入住人姓名(去除空格等非法字符后,完全相同;多个入住人,只要能匹配一个就认为重复)。请注意此处重单判断基于是否有符合条件的有效订单,不能作为关键性重单判断依据。严格判断请销售端确保只生成一个订单,并将订单号不变的传入AffiliateConfirmationId。
输入参数
根节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
AffiliateConfirmationId | 合作伙伴订单确认号 | String(30) | N | 合作伙伴订单号。不同的订单这个值不一样,同一个订单发送多次请求也须用同一个值。 如果这个值相同,即使之后的HotelId、入住人、联系人等所有的信息都不同,那么也不会创建新单,而是返回上一次成单的订单号。 多次发送请求间隔需要在45秒以上。 |
HotelId | 酒店编号 | String(8) | N | |
RoomId | 展示房型编号 | String(8) | Y | 允许为空,当传入时会校验房型编号绑定关系 |
RoomTypeId | 销售房型编号 | String(8) | N | V1.10更新 注意区分RoomId和RoomTypeId 如果为实时搜索模式,对应的是hotel.list、hotel.detail接口中的RatePlan.RoomTypeId |
RatePlanId | 产品编号 | Int | N | |
ArrivalDate | 入住日期 | Date | N | 如果是凌晨入住,那么入住日期是前一天, 使用yyyy-MM-dd格式,例如:2022-12-09,其他格式不保证可用 |
DepartureDate | 离店日期 | Date | N | 使用yyyy-MM-dd格式,例如:2022-12-09,其他格式不保证可用 |
HourRoomStartTime | 钟点房入住开始时间 | DateTime | Y | 当成单的产品为钟点房(小时房)时,需要入参该字段,格式为yyyy-MM-dd HH:mm:ss,且应符合钟点房的开始结束时间; v1.55添加,可参照:http://open.elong.com/faq/detail?id=318&plt=2 |
HourRoomEndTime | 钟点房入住结束时间 | DateTime | Y | |
CustomerType | 客人类型 | Enum | Y | 已废弃,不再校验 All=统一价; HongKong =港澳台客人价,需提示客人“须持港澳台身份证入住”; ChinaGuest =中宾价,需提示客人“须持中国身份证、护照入住”; 需要和RatePlanId对应的RatePlan(参考hotel.list#RatePlan、hotel.detail#RatePlan、hotel.data.rp#RatePlan)中的该属性一致 |
PaymentType | 付款类型 | Enum | N | SelfPay-前台现付、Prepay-预付 |
NumberOfRooms | 房间数量 | Int | N | 有几个房间,对应OrderRoom数组节点数量,每一订单房间数量不要超过7间(小于8) |
NumberOfCustomers | 客人数量 | Int | N | 客人数量需要大于等于房间数量 |
EarliestArrivalTime | 最早到店时间 | DateTime | N | 1、两者都是必填字段,可让用户选择两个时间点,也可以只让客人选择最晚到店时间,系统根据下面的规则计算出最早到店时间。 2、最早到店时间范围:入住日7:00(建议14:00,因一般酒店接待开始时间是14点)-23:59; 最晚到店时间范围:入住日7:00-23:59和次日1:00-6:00; 都必须是整点或半点或23:59。 3、最早到店时间须晚于当前时间, 最晚到店时间须晚于最早到店时间,一般相差3个小时。 4、如果客人凌晨预订凌晨入住,则入住的是前一天的房间,须设置入住日期为前一天,最早到店时间为入住日期的23:59,最晚到店时间为入住日期的第二天的06:00。 5、最早到店和最晚到店时间是完整的日期时间类型yyyy-MM-dd HH:mm:ss,如2017-03-16 13:06:30,不要只传入时间13:06:30,否则会报错。 |
LatestArrivalTime | 最晚到店时间 | DateTime | N | |
CurrencyCode | 货币类型 | Enum | N | 请和获取价格的地方保持一致。参考Currency |
TotalPrice | 总价 | Decimal | N | 原币种价格 RatePlan的TotalRate * 房间数, 开通了结算价的分销商,此处应该传入结算价。 如果是国际分销商需要传入 sum(Rate) * 房间数。 |
CustomerIPAddress | 客人访问IP | String(50) | N | ip格式,如 211.151.230.212;请提供真实的客人IP,将更好控制恶意订单 |
IsGuaranteeOrCharged | 是否已担保或已付款 | Boolean | Y | 开通了公司担保业务的合作伙伴才能使用该属性。当贵公司确定对客人扣款成功后,才可以设置为true,否则设置为false |
ConfirmationType | 确认类型 | Enum | N | NotAllowedConfirm -- 不发送短信给客人和酒店双方,合作伙伴自查订单状态后自行联系客人,确认短信模板可参考艺龙确认短信模板示例 SMS_cn -- 艺龙发短信给客人与酒店,订单确认失败的时候会主动联系酒店,订单发生创建、取消时短信通知酒店,订单发生确认时短信通知客人 NoNeed -- 艺龙不发短信给客人,订单确认失败的时候不主动联系酒店,订单发生创建、取消时短信通知酒店 注:下单时如果输入了邮箱那么都会发送邮件 |
NoteToHotel | 给酒店备注 | String(200) | Y | 客人给酒店的备注,尽量不填写,以免影响房间确认速度,并可减少投诉;若必须要填,尽量对要求进行规范,便于沟通和处理。 特别注意:目前艺龙不支持传入该字段,即使传入也会忽略掉 |
NoteToElong | 给艺龙备注 | String(200) | Y | |
IsNeedInvoice | 是否需要发票 | Boolean | Y | 前台现付订单发票由酒店开具;预付订单的发票有两种开具方式:收款方开具或酒店开具。收款方开具发票的,艺龙可提供代开服务,需联系商务开通相关权限。 |
OrderRooms | 客人信息 | OrderRoom[] | N | 该节点的个数应和NumberOfRooms相等。 参考OrderRoom节点 |
Invoice | 发票信息 | Invoice | Y | 当IsNeedInvoice为true时填写。 将由普通快递投递 参考Invoice节点 |
Contact | 联系人 | Contact | N | 参考Contact节点 |
CreditCard | 信用卡 | CreditCard | Y | 担保订单和预付订单才须传信用卡。 如果IsCreateOrderOnly或IsGuaranteeOrCharged为true,则一定不能传信用卡信息。 参考CreditCard节点 |
DoveCorpCard | 第三方支付 | DoveCorpCard | Y | 担保订单和预付订单才须传第三方支付信息。 如果IsCreateOrderOnly为true或IsGuaranteeOrCharged为false,则一定不能传第三方支付信息。 参考DoveCorpCard节点 |
ExtendInfo | 扩展字段 | ExtendInfo | Y | 参考ExtendInfo节点 |
IsCreateOrderOnly | 仅创建订单 | Boolean(false) | Y | 需要请求的版本大于v1.20,有关支付逻辑的详细说明请参考这里 true - 表示本次请求只创建订单,不提供支付信息;订单创建成功后,请求者再通过hotel.order.pay提供支付信息; false - 订单信息和支付一起传入 |
CustomerPrice | 销售给客人的最终价格 | Decimal | Y | 需透传用户真实卖价,酒店开票产品或结算价分销商的限价产品需将卖价传入 |
OrderValidation | 订单数据校验 | OrderValidation | Y | 该逻辑暂不支持 对早餐、担保金额和取消时间进行校验, 传入代表校验,否则不校验, |
Coupon | 促销信息 | CouponInfo | Y | 已废弃 优惠信息,仅为提示信息,一般不需要。前台自付是返现,预付是立减。 |
LittleMajiaId | 马甲Id | String | Y | 从hotel.detail接口获取,用于促销,促销产品调用时,需要透传该字段; 新接入搜索模式或者国际酒店请求时,必传;建议历史已接入搜索模式分销商也将此字段全部传回;国内酒店马甲Id不再有30分钟限制 搜索模式所有产品必传 |
GoodsUniqId | 商品唯一标示 | String | Y | 从hotel.detail接口获取,用于促销,促销产品调用时,需要透传该字段; 新接入搜索模式或者国际酒店请求时,必传;建议历史已接入搜索模式分销商也将此字段全部传回 搜索模式所有产品必传 |
SpecificRemark | 特殊要求 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ChildAges | 儿童年龄 | Int[] | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
NumberOfAdults | 成人数 | Int | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
HotelCode | 酒店code | String | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
SupplierId | 供应商id | String | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
SubSupplierId | 二级供应商id | String | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ShopperProductId | 商品库shopperid | String | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
EncryptOption | 用户信息加密选项 | Int | Y | 0:无需加密,1:对称加密 传1时,需要对入参中的以下字段进行加密: Customers节点Name字段 Contact节点Name,Mobile,Email Invoice节点的Title,TaxPayerNum,TaxRegisterBank,RegisterBankNum,RegisterAddress,RegisterPhoneNum Recipient节点:Province,City,District,Street,Name,phone,Email 加密方式同信用卡 |
DayPriceList | 每日价 | DayPrice[] | Y | 每日价透传:用于每日金额校验,避免出现订单部分退艺龙与合作方退款金额不一致现象发生 。DayPriceList节点里每个DayPrice里的Price之和 * NumberOfRooms = TotalPrice |
Invoice节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
InvoiceType | 发票类型 | Enum | N | v1.31新增。Paper-纸质发票,Electronic-电子发票,SpecialPaper-专用发票。 |
TitleType | 抬头类型 | Enum | N | Personally-个人,Enterprise- 企业,Government-政府机关行政单位,默认为企业; Personally时,不需填写抬头Title(抬头默认为个人)和纳税人识别号/统一社会信用代码ITIN Enterprise时,必须填写抬头Title和纳税人识别号/统一社会信用代码ITIN Government时,必须填写抬头Title |
Title | 抬头 | String(200) | N | |
ITIN | 纳税人识别号/统一社会信用代码 | String(20) | N | 字符长度是15、18或20位,是数字和字母的组合或纯数字 |
ItemName | 发票内容 | String(100) | N | 代订房费或代订住宿费 |
Amount | 金额 | Decimal | N | 人民币价格 |
Recipient | 收件人 | Recipient | N | 参考Recipient节点 |
IsNeedRelationOrder | 是否添加发票备注 | boolean | Y | true-在发票备注栏中添加酒店预订信息(酒店名称、入住日期、离店日期、房间数) false-不添加,默认值 |
TaxPayerNum | 纳税人识别号 | String | Y | 专票必传 |
TaxRegisterBank | 开户银行 | String | Y | 专票必传 |
RegisterBankNum | 银行账号 | String | Y | 专票必传 |
RegisterAddress | 注册地址 | String | Y | 专票必传 |
RegisterPhoneNum | 电话 | String | Y | 专票必传 |
Recipient节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Province | 省份 | String(20) | N | 接口中无规范定义,按照国家邮政规范填写即可。电子发票无需填写。 |
City | 城市 | String(20) | N | |
District | 行政区 | String(20) | N | |
Street | 街道 | String(100) | N | |
PostalCode | 邮编 | String | Y | |
Name | 收件人 | String(10) | N | |
Phone | 电话 | String(20) | N | |
Email | Email | String(100) | Y | 电子发票时该字段必须填写 |
Contact节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Name | 姓名 | String(50) | N | 在正式环境中姓名请不要填写“张三、李四、王五、test、测试”等,艺龙系统有对应姓名黑名单; 也不能填写小姐、先生或女士。 |
String(50) | Y | 下单时如果输入了邮箱,将会向对应邮箱发送预定成功等通知邮件。 国际请求时必传。 | ||
MobileAreaCode | 区号 | String(10) | N | 手机号区号 |
Mobile | 手机 | String(20) | N | 港澳手机需要加前缀,大陆手机不需要,其他地区不支持 |
Phone | 电话 | String(20) | Y | 国家代码-地区代码-电话号码-分机号,如+86-010-58602288-6660 |
Fax | 传真 | String(20) | Y | |
Gender | 性别 | Enum | N | Female 女,Maile 男, Unknown 保密 |
FirstName | 名 | String | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
LastName | 姓 | String | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
CreditCard节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Number | 卡号 | String(20) | N | 注意:CreditCard节点下的字段对大小写敏感 1、如果是担保订单,则Creditcard下的所有字段都必须赋有效值 2、测试环境信用卡卡号可填4336660000000000 3、如是身份证号码,请填写有效身份证信息,艺龙系统有对应身份证号的校验 4、当需要VerifyCode(CVV)需要先调用信用卡验证接口确认该信用卡是否需要提供CVV;如果卡需要CVV没有提供CVV会拒绝成单 5、卡号加密方式(必须) 加密方法:使用DES对称加密算法(cbc模式,key值和iv值一致) 加密内容=当前时间戳+#+信用卡号 加密密钥:账号appkey的后8位 例如: $CreditCardNO= des_encrypt(time(). '#4336660000000000', substr($appkey,-8)); 测试加密方法 Xcrypt::encrypt( '12345#6789012345', '12345678') == 8e519cf90bf4240f7f653af ff4f6d658f5e402a4ff2581a7 Java版加密算法参考Java信用卡加密 注:信用卡仅支持国内开通的银联卡,具体以接口返回为准。 |
CVV | cvv | String(3) | N | 需加密,加密方式同卡号注:信用卡支付新流程CVV必传,不需要根据common.creditcard.validate方法返回IsNeedVerifyCode字段判定是否需要CVV。 |
ExpirationYear | 有效期-年 | Int | N | |
ExpirationMonth | 有效期-月 | Int | N | |
HolderName | 持卡人 | String(20) | N | 中文姓名,不含空格,需加密,加密方式同卡号 |
IdType | 证件类型 | Enum | N | 证件类型 身份证 IdentityCard, 护照 Passport, 其他 Other 注:当前接口只支持身份证,需要身份证开户的银行卡保持一致。 |
IdNo | 证件号码 | String(20) | N | 需加密,加密方式同卡号 |
Mobile | 手机 | String(20) | Y | 需加密,加密方式同卡号信用卡支付新流程使用且是必填项。需要与信用卡绑卡手机号一致,否则会订单支付失败。 |
DoveCorpCard节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Number | 卡号 | String(20) | N | 注意:DoveCorpCard节点下的字段对大小写敏感 卡号加密方式(必须) 加密方法:使用DES对称加密算法(cbc模式,key值和iv值一致) 加密内容=当前时间戳+#+信用卡号 加密密钥:账号appkey的后8位 例如: $DoveCorpCardNO= des_encrypt(time(). '#4336660000000000', substr($appkey,-8)); 测试加密方法 Xcrypt::encrypt( '12345#6789012345', '12345678') == 8e519cf90bf4240f7f653af ff4f6d658f5e402a4ff2581a7 Java版加密算法参考第三方支付加密同Java信用卡加密 |
ExpirationDate | 有效期 | String(4) | N | 格式MMYY |
ExtendInfo节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
String1 | 扩展字段 | String(100) | Y | 可以存放合作伙伴自己的一些信息(Api不会改变这里的信息),有利于获取订单后进行一些渠道分析等 |
String2 | 扩展字段 | String(100) | Y | |
String1 | 扩展字段 | String(100) | Y | |
Int1 | 扩展字段 | Int | Y | |
Int2 | 扩展字段 | Int | Y | |
Int3 | 扩展字段 | Int | Y |
OrderRoom节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Customers | 入住人信息 | Customer[] | N | 每个房间支持传入多个入住人信息, 该字段为数组 转xml时注意自定义一个节点 参考Customer节点 |
Customer节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Name | 姓名 | String(50) | N | 禁止使用“小姐”、“先生”、“女士”、名人姓名、污秽词语,中文姓名不得出现任何汉字外的字符,当客人输入拼音或英文姓名时,应给与明确的提示,在下方展示红色提示文案,类似:英文姓和名用“/”隔开。并且要做强校验,没有斜杠时,无法提交订单。 |
Gender | 性别 | Enum | N | Female 女,Maile 男, Unknown 保密 |
Nationality | 国籍 | String(10) | N | 有些酒店在预订规则BookingRule中规定需要提供国籍;填写具体的国籍,如中国、日本、美国、USA等 |
Nat | 国籍Code | String | Y | 非中国大陆特有字段,因有的产品对入住人有国籍要求,因此建议传入当前字段,我们将做验证,以避免成单后无法入住的不好体验。 注意:a.需要每个客人都传,或者每个客人都不传;b.对于供应商无能力通过接口标准化限制国籍,但实际酒店有要求的情况,暂时无法避免。 入参举例:Nat:"CN",代表中国 |
IdCardNo | 证件号 | String | Y | 需判断产品中【Identification】字段属性,按校验要求传对应身份信息;可加密,加密方式和信用卡节点证件号码字段相同 |
IdCardType | 证件类型 | Enum | Y | IdentityCard 身份证, Passport 护照, HomeVisitingCertificate 回乡证, TaiwanCompatriotCertificate 台胞证, HongkongMacaoTaiwanResidencePermit 港澳台居民居住证 |
FirstName | 名 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
LastName | 姓 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
OrderValidation节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Type | 校验类型 | String | N | 逗号分隔的数字: 0:不进行校验 1:早餐数量校验 2:取消时间校验 3:担保金额校验 如果校验所有:Type=1,2,3 |
GuaranteeAmount | 担保金额 | Decimal | Y | 预付金额或担保金额 |
CancelTime | 最晚取消时间 | DateTime | Y | 担保预付最晚取消时间 |
DateBreakFastList | 每日早餐数量列表 | DateBreakFastList[] | Y | 参考DateBreakFast节点 |
DateBreakFast节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Date | 日期 | DateTime | N | |
BreakFastCount | 包含的早餐份数 | String | N |
CouponInfo节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Amount | 优惠总金额 | Decimal | N | |
NightlyCoupons | 每日促销详情 | NightlyCoupon | Y | 参考NightlyCoupon节点 |
NightlyCoupon节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Date | 在店日期 | DateTime | N | |
PromotionRoomNights | 每间夜优惠详情 | PromotionRoomNight | N | 参考PromotionRoomNight节点 |
PromotionRoomNight节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Amount | 优惠金额 | Decimal | N |
DayPrice
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Price | 每日价 | BigDecimal | N | 每日价格 |
Date | 日期 | Date | N | 价格对应的日期,yyyy-MM-dd 格式,例如2024-09-14,其他格式不保证持续兼容 |
MinRate | 税后价 | BigDecimal | Y | 国际必传、国内不允许传。对应于NightRate里MinRate,同时Price为NightRate里Rate |
响应结果
根节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
OrderId | 订单编号 | Long | N | |
CancelTime | 最晚取消时间 | DateTime | N | 如果日期为9999-12-30 23:00:00等条件代表不限制取消时间,不限制取消时间的订单 |
GuaranteeAmount | 担保金额 | Decimal | Y | 如果此订单是担保订单,则在此列出担保金额,币种是人民币(如果提交订单时候的是港币,这里也会被换算成对应金额的人民币)。 |
CurrencyCode | 货币类型 | Enum | Y | |
IsInstantConfirm | 是否是即时确认 | Boolean | Y | v1.19新增。采用这个属性,就不需要再请求hotel.order.instant接口了。即时确认只说明这个库存确认方式,最终能否确认给客人还需要考虑订单是否为担保订单,担保订单需要担保成功后才能确认,预付订单同样需要等待客人支付后才能确认。 |
PaymentDeadlineTime | 支付最后期限 | DateTime | Y | v1.19新增。如果担保预付订单,提交的信用卡因某种原因支付失败,系统可以保留一段时间,继续支付。如果这个时间点还没有成功支付,系统将自动取消订单。 继续支付请使用 hotel.order.pay接口 |
PaymentMessage | 支付错误信息 | String(100) | Y | V1.19新增 |
输入参数示例
https://api-test.elong.com/rest?format=json&method=hotel.order.create&user={userid}×tamp=1488508207&signature=1b34c24f5c31381a67c666f4dc211077&data={"Local":"en_US","Request":{"AffiliateConfirmationId":"131703030230110195","ArrivalDate":"2017-03-05 18:30:00","ConfirmationType":"NotAllowedConfirm","Contact":{"Mobile":"158******7","Name":"测试样例"},"CreditCard":{"ExpirationMonth":10,"ExpirationYear":2016,"HolderName":"28e1e42de545f17f008cb83048970e94b2fc8721c33230ba5bc76be4d90ba121","IdNo":"28e1e42de545f17fb2483df69743b72bb23b61f9102df0191bb607a11f908a8c","IdType":"IdentityCard","Number":"28e1e42de545f17f491da318d9565d874c65e69a612f3fef7dba4b11c89801da","cVV":"28e1e42de545f17fea797d0b4807ed06"},"CurrencyCode":"RMB","CustomerIPAddress":"192.168.1.1","CustomerType":"OtherForeign","DepartureDate":"2017-03-06 18:30:00","EarliestArrivalTime":"2017-03-05 17:00:00","HotelId":"40101022","IsGuaranteeOrCharged":false,"IsNeedInvoice":false,"LatestArrivalTime":"2017-03-05 19:00:00","NoteToElong":"","NumberOfCustomers":1,"NumberOfRooms":1,"OrderRooms":[{"Customers":[{"Name":"测试入住"}]}],"PaymentType":"SelfPay","RatePlanId":8703,"RoomTypeId":"1043","TotalPrice":350},"Version":1.29}
输出参数示例
{ "Code":"0", "Result":{ "OrderId":12345678, "CancelTime":"9999-12-30 00:00:00". "IsInstantConfirm":false } "Guid":"196d84d9-19b1-4aa2-8891-1c699e806a3c" }
注意事项
1.可以使用common.creditcard.validate来进行信用卡验证,验证信用卡是否可用和是否需要cvv2(小链接:cvv2),如果不需要传入cvv2,那么就不要让用户提供该信息。
2.开通虚拟卡后,贵公司可以自行与客户进行结算业务,我司将采取周结或月结的方式与贵公司进行结算。若有需要,在成单和支付接口可以传虚拟卡信息,将IsGuaranteeOrCharged设置为true,且信用卡留空即可。
3.提交的信息不能包含如下9个特殊字符:'<', '>', '&', '\'', '"', ';', '\\', ':', '='
常见错误码
错误码 | 解释 | 解决方案 |
---|---|---|
H000005 | 入住日期不能为空 | 可能是日期格式错误导致的,支持的日期时间格式:"yyyy-MM-dd" |
H000018 | {0}含有非法字符 | 提交的信息不能包含如下9个特殊字符:'<', '>', '&', '\'', '"', ';', '\\', ':', '=' |
H000997 | 未知异常 | 重试,反复出现请联系技术支持人员 |
H001013 | 是否已担保或已付款必须填写 | 开通了公司担保业务,如果订单需要支付,则IsGuaranteeOrCharged必须为true,且不能传入信用卡信息。 |
H001037 | 信用卡失效或已担保或已支付业务已经失效 | 可能的原因有两个,一是没有开通虚拟卡业务的,那么就是传入的信用卡失效,让客户传入可用的信用卡;如果开通了虚拟卡业务,则是虚拟卡过期,联系商务解决。 |
H001039 | 预付或强制担保订单必须设置为已经担保或已经支付 | 开通了公司担保业务,如果订单需要支付,则IsGuaranteeOrCharged必须为true,且不能传入信用卡信息。 |
H001040 | 无支付或担保权限,不能设置为已经担保或已经支付 | 即没有开通虚拟卡业务,如要开通,需要联系商务。 |
H001041 | 使用已担保或已支付业务,不需要提供信用卡信息 | 开通了公司担保业务,如果订单需要支付,一定不要传入信用卡信息。 |
H001152 | 预付或强制担保订单使用虚拟卡业务,不需要提供信用卡信息与第三方支付信息 | 开通公司担保业务且未开通公司第三方支付,如果订单需要支付,一定不要传入信用卡信息与第三方支付信息。 |
H001153 | 预付或强制担保订单使用第三方支付业务,不需要提供信用卡信息 | 开通公司第三方支付,如果订单需要支付,一定不要传入信用卡信息。 |
H001154 | 预付或强制担保订单使用第三方支付业务,需要提供第三方支付信息 | 开通公司第三方支付,如果订单需要支付,需要提供第三方支付信息。 |
H001155 | 无支付或担保权限,不需要提供第三方支付信息 | 未开通公司第三方支付,一定不要提供第三方支付信息。 |
H001156 | 无法确认开通支付业务的权限类型(虚拟卡业务或第三方支付业务) | 担保业务与第三方支付业务不能同时开通,需联系商务解决。 |
H001043 | 订单重复或过快提交 | 订单不要并发提交,如果出现异常,则45秒后提交 |
H001045 | 疑似重复订单,不进行处理 | 重单判定条件详见本页使用说明和注意事项。 |
H001046 | 系统不能接受贵司的发票请求 | 不要传入Invoice节点,如需请联系商务解决。 |
H001083 | 获取产品信息失败,可能酒店、房型和RatePlan无效或未关联,也可能无对应库存或房价 | 遇到这个问题,首先检查HotelId、RoomTypeId和RatePlanId对应关系是否正确(HotelId不要传HotelCode,RoomTypeId不要传RoomId)。如果对应正确,那么可能是库存失效导致的,大部分原因是因为数据更新不及时,用户搜索得到结果后过了一段时间才下单,此时数据已发生变化,无库存、满房、无价、不符合预定规则。该问题不可能完全杜绝,离线数据模式可以通过及时更新数据来减少。 详细说明请查看常见问题:http://open.elong.com/faq/detail?id=162&plt=2 |
H001085 | 底层提交订单异常 | 重试,反复出现请联系技术人员解决。 |
H001086 | 尾房产品应该在合适的时间销售 | 参考hotel.data.rp接口中是否今日特价字段及其日期。 |
H099999999 | 未知错误 | 重试,反复出现请联系技术人员解决。 |
H100999 | 系统异常 | 重试,反复出现请联系技术人员解决。 |
H101093 | 底层提交订单保存异常,请重试 | 重试,反复出现请联系技术人员解决。 |
H001095 | 给酒店的备注不能包含:务必、一定、必须此类话 | 主要是港澳酒店不允许出现 |
H001097 | 客人姓名未通过校验 | 小姐、先生、名人姓名、污秽词语,中文姓名不得出现任何汉字外的字符,英文姓名不得出现英文字母和空格外的字符 |
H001044-3 | 计算订单价格失败 | 重试,反复出现请联系技术人员解决。 |
H001044-4 | 计算订单担保金额失败 | 重试,反复出现请联系技术人员解决。 |
H001044-7 | 下单失败,查不到卡号,找不到CardNo=**********的会员信息! | 联系技术解决 |
H001044-4001 | 下单失败,查不到卡号,找不到CardNo=**********的会员信息! | 联系技术解决 |
H001044-6 | 货币种类错 | 注意港澳台币 |
H001044-95 | VouchType与担保规则冲突 | 产品需要担保则需要必须传入担保信息,如果不需要担保,则一定不要传入担保信息。如果检查后担保规则符合条件,那么请按无担保来下订单,并在下单成功后将费用返还用户。这种情况是由于搜索接口更新没有成单接口更新快导致的,这条规则已经不适用但是搜索接口没有获取到。 |
H001188 | 每日价传参异常 |
|
H001189 | 每日价传参异常,{0}价格异常 |
|