方法名称
hotel.detail
使用说明
本接口用于获取酒店的静态信息(酒店简介、房型简介、图片等)和动态信息(库存、价格、产品计划等),可用于向客户展示酒店信息;
创建订单接口和订单校验接口需要传入单个HotelId、RoomTypeId和RatePlanId(可以通过本接口获取);
支付方式:
分为现付和预付
现付:分为担保与非担保:
担保:分为全额担保和首晚担保,都需要考虑取消的情况,但客户到店依然需要支付房费,担保的费用会退回用户。
预付:预付都是全额预付,也要考虑取消的情况。
现付的担保和预付的全款都需要调用支付功能。
接国际接口时,如果字段含义有重复,使用国际特有字段(标注为仅用于国际及港澳台酒店,大陆酒店无需关注。)
如有使用本接口的预抓取需求(如特殊场景下需要的缓存),请将方法名替换成hotel.crawl.detail,出入参数不变,真实用户的访问依然使用原方法名hotel.detail,以便于区分流控,避免预抓取任务失控调用数上涨而影响正常真实用户浏览。
输入参数
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
ArrivalDate | 入住日期 | Date | N | 使用yyyy-MM-dd格式,例如:2022-12-09,其他格式不保证可用 |
DepartureDate | 离店日期 | Date | N | 使用yyyy-MM-dd格式,例如:2022-12-09,其他格式不保证可用 |
HotelIds | 酒店ID列表 | String(100) | N | 最多10个,当输入房型和产品条件的时候,只能输入一个酒店ID。多个ID以逗号间隔。如果对接了酒店静态信息hotel.static.list 当酒店非有效时无需请请求该接口 |
RoomTypeId | 房型编号 | String(10) | Y | 当RatePlanId传值的时候不能为空。V1.10后对应销售房型编号 |
RatePlanId | 产品编码 | Long | Y | 默认请传0 |
PaymentType | 支付方式 | Enum | Y | 默认为All,All-不限、SelfPay-现付、Prepay-预付 |
NumberOfAdults | 成人数 | Int | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
NumberOfRooms | 房间数量 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ChildAges | 儿童年龄 | Int[] | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
InvoiceMode | 预付发票模式 | String | Y | Elong-艺龙开发票、Hotel-酒店开发票、NoSense-全部 前台自付产品都是酒店开发票,这里的过滤是针对预付产品。预付订单的发票有两种开具方式:收款方开具或酒店开具。收款方开具发票的,艺龙可提供代开服务,需联系商务开通相关权限。 |
SaveMajiaId | 是否保存Littlemajiaid | Booleam | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 当需要请求可定时,该字段设置为true,才能进行可定验证 |
LatestArrivalTime | 最晚到店时间 | DateTime | Y | 用于计算现付产品的担保规则结果(GuaranteeResult),不传时默认最晚到店时间为入住日期+1Day+6Hour(默认兜底逻辑不适用于所有场景,可酌情考虑传入T+2Hour/NHour或者入住日期+18:00等),请注意保证搜索时此参数与试单和成单时一致,否则对应担保规则结果会不尽相同;填单页中现付产品需要根据用户选择的最晚到店时间重新获取接口最新的担保规则结果,到店时间更改,担保类型为到店时间担保的订单取消规则和担保规则均可能发生变化。使用yyyy-MM-dd HH:mm:ss格式,例如:2022-12-09 12:30:00,其他格式不保证可用 |
Options | 其他条件 | String(10) | N | 仅单酒店有效,可逗号分割 1.酒店详情 2.房型 3.图片 4.当前不可销售的rp不出现在结果里(该选项多个酒店也有效) 5. 每日价格数组输出未DRR计算的原始价格 7. 返回汇率信息ExchangeRateList 8. 经纬度返回百度坐标 9. 仅返回钟点房 11.同时返回钟点房和其他产品 12.如果是现付产品则返回GuaranteeResult,如果是预付产品则返回PrepayResult 13.支持多间,传入时请保证已兼容多间预定逻辑:从一间变多间时价格、规则等产品信息可能发生变化,当房量变化时可以调用hotel.room.change或hotel.data.booking获取最新产品相关信息;不传时某些产品MaxCheckinRooms为1,多间预定可能会失败 14.返回PrepayRuleExtend、GuaranteeRuleExtend 一般情况下传入1,2,4 请按需传入,多返回信息会影响报文长度和响应时间,在调用大的情况下,静态信息(1,2,3)建议使用静态相关接口增量落地(hotel.static.list、hotel.static.info);为了保持接口的清晰与高效,hotel.detail接口中的静态信息(1,2,3)也将不再进行额外的拓展 |
Nat | 国籍 | String[] | Y | 非中国大陆特有字段,见Nat 如果在详情页可获取到客人的国籍,可以传入,我们将筛选符合客人国籍的产品。 如果在详情页获取不到客人的国籍,请根据出参中的Nat查看产品的入住人国籍限制条件 |
响应结果
根节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Count | 查询到的酒店总数 | Int | N | |
Hotels | 酒店结果集 | Hotel[] | Y | 包含多个Hotel节点 |
ExchangeRateList | 汇率信息 | ExchangeRate[] | Y | 包含多个ExchangeRate节点 |
Hotel节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
HotelId | 酒店编号 | String(8) | N | |
LowRate | 最低价格 | Decimal | N | 返回的是该酒店中所有符合查询条件的产品的最低价 |
CurrencyCode | 最低价格的货币 | Enum | Y | 参考Currency |
BookingRules | 预订规则 | BookingRule[] | Y | 该酒店下所有的预订规则。应在订单填写页面提示给用户,也可以做到系统规则中约束用户的选择或输入。 包含多个 BookingRule节点 |
GuaranteeRules(不建议使用) | 担保规则 | GuaranteeRule[] | Y | 包含多个 GuaranteeRule节点,建议使用GuaranteeResult节点 |
PrepayRules(不建议使用) | 预付规则 | PrepayRule[] | Y | 包含多个 PrepayRule节点,建议使用PrepayResult节点 |
GuaranteeRuleExtends(不建议使用) | 新担保规则 | GuaranteeRuleExtend[] | Y | 包含多个GuaranteeRuleExtend节点,建议使用GuaranteeResult节点 |
PrepayRuleExtends(不建议使用) | 新预付规则 | PrepayRuleExtend[] | Y | 包含多个PrepayRuleExtend节点,建议使用PrepayResult节点 |
ValueAdds | 增值服务 | ValueAdd[] | Y | 包含多个 ValueAdd节点,餐食请使用Meals节点 |
DrrRules (已废弃) | 促销规则 | DrrRule[] | Y | 搜索接口(list和detail)中的价格都经过了这些规则的计算,仅需将规则的描述提示用户即可。 包含多个 DrrRule节点, DRR例子请参考DrrRule |
Facilities | 酒店设施 | String(50) | Y | 1 免费wifi 2 收费wifi 3 免费宽带 4 收费宽带 5 免费停车场 6 收费停车场 7 免费接机服务 8 收费接机服务 9 室内游泳池 10 室外游泳池 11 健身房 12 商务中心 13 会议室 14 酒店餐厅 15 叫醒服务 16 行李寄存 17 双床 18 大床 以上是本接口返回的简略设施信息,与静态信息中获取的设施id并不对应。 |
Rooms | 房型列表 | Room[] | Y | 包含多个Room节点 |
Detail | 酒店信息 | Element | Y | 参考Detail节点 Options字段包含1并且不搜索房间、RP并且单个HotelId的时候出现 |
Images | 酒店图片 | Image[] | Y | 酒店的图片,参考Image节点 参考静态信息[仅包含有水印图片,规格:375x200、350x350、640x960、800x600、1080x800、1140x640] (测试环境这个节点因缓存服务器的问题没有数据) |
Gifts | 送礼活动 | Gift[] | Y | 包含多个 Gift节点(建议使用GiftPackages节点),及单独说明 Gifts |
GiftPackages | 礼包套餐 | GiftPackage[] | Y | 包含多个GiftPackage节点(建议使用)礼包套餐使用参考下方,礼包套餐使用说明 及单独说明 Gifts GiftPackages节点和Gifts节点,都描述了礼包内容;若GiftPackages不为空,以此节点为准,为空时再查看Gifts节点;大部分礼包套餐均由GiftPackages描述了,一些历史原因,小部分产品无法转移至新结构,仍需查看Gifts节点;建议接入时优先接入GiftPackages,有能力再接入Gifts。 |
HAvailPolicys | 酒店特殊信息提示 | HAvailPolicy[] | 包含多个 HAvailPolicy节点 V1.04新增. 请把此信息展示给用户,以便用户预订 |
BookingRule节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
TypeCode | 规则类型 | Enum | N | NeedNationality务必提供客人国籍 PerRoomPerName您预订了N间房,请您提供不少于N的入住客人姓名 ForeignerNeedEnName此酒店要求外宾务必留英文拼写 RejectCheckinTime几点到几点酒店不接受预订 , 此处校验的是下单时的预订时间 NeedPhoneNo务必提供客人手机号(请加在联系人结点Contact上) |
BookingRuleId | 预订规则编号 | Long | N | RatePlan.BookingRuleIds将与此关联 |
Description | 描述 | String(255) | N | |
DateType | 日期类型 | Enum | Y | BookDay –预订日期(订单的创建日期) |
StartDate | 开始日期 | Date | Y | |
EndDate | 结束日期 | Date | Y | |
StartHour | 每天开始时间 | Time | Y | 针对日期段内每天生效, 当TypeCode 为RejectCheckinTime时表示StartHour到EndHour 酒店不接受预订 |
EndHour | 每天结束时间 | Time | Y |
GuaranteeRule节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
GuranteeRuleId | 担保规则编号 | Long | N | |
Description | 描述 | String(255) | N | 如果担保规则存在,将此字段展示给用户 |
DateType | 日期类型 | Enum | N | CheckInDay-入住日期 StayDay-在店日期 |
StartDate | 开始日期 | date | N | |
EndDate | 结束日期 | date | N | |
WeekSet | 周有效天数 | String(20) | Y | |
IsTimeGuarantee | 是否到店时间担保 | Boolean | N | False:为不校验到店时间 True:为需要校验到店时间 此字段与之后的IsAmountGuarantee字段用法比较特殊,请仔细阅读注意事项中关于这两个字段的说明。 |
StartTime | 到店担保开始时间 | Time | Y | 用于IsTimeGuarantee==true时进行检查。 |
EndTime | 到店担保结束时间 | Time | Y | [补充]当EndTime小于StartTime的时候,默认从StartTime到次日6点都需要担保。 |
IsTomorrow | 到店担保的结束时间是否为第二天 | Boolean | Y | false为当天,true为次日 |
IsAmountGuarantee | 是否房量担保 | Boolean | N | False:为不校验房量条件 True:为校验房量条件 如果IsTimeGuarantee和IsAmountGuarantee都为false则为强制担保 |
Amount | 担保的房间数,预定几间房及以上要担保 | Int | Y | 用于IsAmountGuarantee==true进行检查 |
GuaranteeType | 担保类型 | String | Y | FirstNightCost为首晚房费担保 FullNightCost为全额房费担保 |
ChangeRule | 变更规则 | Enum | Y | 担保规则取消变更规则: NoChange、不允许变更取消 (不管时间有没有超过 StartTime,下单后都不能取消) NeedSomeDay、允许变更/取消,需在XX日YY时之前通知 NeedCheckin24hour、允许变更/取消,需在到店日期的24点之前几小时通知 |
Day | 日期参数 | date | Y | ChangeRule= NeedSomeDay时,对应规则2描述中 “允许变更/取消,需在XX日YY时之前通知” 中的XX日,YY时 |
Time | 时间参数 | Time | Y | |
Hour | 小时参数 | Int | Y | ChangeRule= NeedCheckinTime时,对应规则3描述中 “ 允许变更/取消,需在最早到店时间之前几小时通知”
中的几小时 ChangeRule= NeedCheckin24hour时,对应规则4描述中“ 允许变更/取消,需在到店日期的24点之前几小时通知” 中的几小时 |
PrepayRule节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PrepayRuleId | 规则编号 | Long | N | |
Description | 描述 | String(255) | N | |
DateType | 日期类型 | Enum | N | CheckInDay:入住日期 |
StartDate | 开始日期 | Date | Y | |
EndDate | 结束日期 | Date | Y | |
WeekSet | 周有效设置 | String(20) | Y | |
ChangeRule | 变更规则 | Enum | N | PrepayNoChange:不允许变更取消; PrepayNeedSomeDay:在到店当日24点前Hour小时前按规则看是否可以免费变更取消(一般是不收罚金),在Hour和Hour2之间按规则存在罚金,Hour2之后不能变更取消; PrepayNeedOneTime:在约定日期时间点(DateNum + Time)前可以免费变更取消 |
Hour | 第一阶段提前的几小时 | Int | Y | 用于PrepayNeedSomeDay |
Hour2 | 第二阶段提前的几小时 | Int | Y | |
DateNum | 具体取消时间日期部分 | Date | Y | 用于PrepayNeedOneTime |
Time | 具体取消时间小时部分 | time | Y | |
DeductFeesBefore | 在变更时间点前是否扣费 | Int | Y | 用于 PrepayNeedSomeDay的Hour前扣款类型(一般不收罚金)。DeductFeesBefore为1表示扣费,0表示不扣费。 |
DeductNumBefore | 时间点前扣费的金额或比例 | Decimal | Y | |
CashScaleFirstBefore | 时间点前扣款类型 | Enum | Y | Money:金额 Percent:比例 FristNight:首晚 |
DeductFeesAfter | 在变更时间点后是否扣费 | Int | Y | 用于 PrepayNeedSomeDay的Hour到Hour2之间的扣款类型。DeductFeesAfter为1表示扣费,0表示不扣费。如果CashScaleFirstAfter为FristNight,则返回-1,没有意义。 |
DeductNumAfter | 时间点后扣费的金额或比例 | Decimal | Y | |
CashScaleFirstAfter | 时间点后扣款类型 | Enum | Y | Money:金额 Percent:比例 FristNight:首晚 |
GuaranteeRuleExtend节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
GuaranteeRuleExtendId | 规则ID | Int | N | |
StartDate | 开始时间 | Date | N | 按入住日匹配,入住日在开始时间和结束时间之间,且符合周有效规则,即为命中此规则 |
EndDate | 结束时间 | Date | N | |
WeekSet | 周有效设置 | String | N | |
GuaranteeType | 担保类型 | Int | N | 0:需担保 1:无需担保 2:超时担保 |
NoshowPenalty | 取消费用类型 | Int | Y | 0:跟随取消费用 1:订单全额 计算担保金额用,0时取PenaltyRuleList计算出的罚金列表中罚金的最大值 |
GrtLatestCheckTime | 超时担保时间 | Int | Y | 单位分钟,相对入住日24点的小时偏移量, 范围[0,840] |
PenaltyRuleList | 取消规则列表 | PenaltyWindowType[] | N | 参见PenaltyWindowType节点;解析示例:点此查看 |
PrepayRuleExtend节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PrepayRuleExtendId | 规则ID | Int | N | |
StartDate | 开始时间 | Date | N | 按入住日匹配,入住日在开始时间和结束时间之间,且符合周有效规则,即为命中此规则 |
EndDate | 结束时间 | Date | N | |
WeekSet | 周有效设置 | String | N | |
NoshowPenalty | 取消费用类型 | Int | Y | 0:跟随取消费用 1:订单全额(目前只有0) |
PenaltyRuleList | 取消规则列表 | PenaltyWindowType[] | N | 参见PenaltyWindowType节点;解析示例:点此查看 |
PenaltyWindowType 节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PenaltyType | 扣款类型 | Int | N | 0:百分比 1:晚数 2:首晚百分比 |
PenaltyValue | 罚金 | Double | N | PenaltyType 为 0,2时,此值为两位小数。 PenaltyType 为1是,此值使用时会取整,按整数处理。 |
Deadline | 规则时间分割起始点 | String | N | 单位分钟,第一个点为1439280 |
ValueAdd节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
ValueAddId | 增值服务编号 | String(10) | N | |
TypeCode | 业务代码 | String(2) | N | 01-早餐 02-午餐 03-晚餐 04-宽带上网 05-服务费 06-政府税 99-特殊早餐,有效日期内生效,优先级高于01早餐 早餐规则的详细用法请参考:https://open.elong.com/faq/detail?id=160&plt=2 当99特殊早餐和01早餐同时存在时,需要根据特殊早餐的有效日期判断哪种早餐生效,即在特殊早餐有效日期内99特殊早餐生效,有效日期外01早餐生效。 餐食相关请使用Meals节点 |
Description | 描述 | String(255) | N | 附加服务描述,代理不想解析的话,可以直接显示该描述 |
IsInclude | 是否包含在房费中 | Boolean | N | false-不包含 true-包含,例如业务代码为早餐时,false即为不含早,true为含早 |
Amount | 包含的份数 | Int | Y | |
CurrencyCode | 货币代码 | Enum | N | 参考Currency |
PriceOption | 单价默认选项 | Enum | Y | Money-金额,Percent-比例,None-无效 |
Price | 单价 | Decimal | Y | 视PriceOption表示金额或比例, 比例值保存的百分数,不是最终的小数, 例如 20%, 则该字段保存为20 |
IsExtAdd | 是否单加 | Boolean | N | 目前只有早餐服务该字段有意义 |
ExtOption | 单加单价默认选项 | Enum | Y | Money-金额,Percent-比例 |
ExtPrice | 单加单价 | Decimal | Y | 视 extOption 不同表示金额或比例值, 比例值保存的百分数,不是最终的小数, 例如 20%, 则该字段保存为20 |
StartDate | 开始日期 | Date | Y | 特殊早餐有效日期 |
EndDate | 结束日期 | Date | Y | |
WeekSet | 周有效设置 | String(20) | Y |
DrrRule节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
DrrRuleId | 促销规则编号 | Int | N | |
TypeCode | 产品促销规则类型代码 | Enum | N | DRRBookAhead --提前X天预订,每间晚优惠:金额M或比例N% DRRStayPerRoomPerNight --连住X晚起,每间晚优惠:金额M或比例N% DRRStayLastNight --连住X晚起,最后Y晚优惠:金额M或比例N% DRRStayTheNightAndAfter --连住X晚起,第Y晚及以后优惠:金额M或比例N% DRRStayPerLastNight --每连住X晚起,最后Y晚优惠:金额M或比例N% DRRStayWeekDay --在店日期包含周X1……X7,订单按周末价或平日价结算 DRRCheckInWeekDay --在周X1至X7入住,订单按周末价或平日价结算 |
Description | 描述 | String(255) | Y | 该字段可以展示给用户 |
DateType | 日期类型 | Enum | N | CheckInDay:入住日期 StayDay:在店日期 BookDay:预订日期 |
StartDate | 促销生效开始日期 | Date | Y | |
EndDate | 促销生效结束日期 | Date | Y | |
DayNum | 提前几天 | Int | Y | |
CheckInNum | 连住几天 | Int | Y | |
EveryCheckInNum | 每连住几晚 | Int | Y | |
LastDayNum | 最后几天 | Int | Y | |
WhichDayNum | 第几晚及以后优惠 | Int | Y | |
CashScale | 按金额或按比例来优惠 | Enum | Y | Cash-金额 Money-金额 Percent-比例 Scale-比例 |
DeductNum | 按金额或比例优惠的数值 | Decimal | Y | 当CashScale为Percent时,该值保存的为百分数,例如30%,则保存为30 |
WeekSet | 星期有效设置 | String(20) | Y | 日期符合Weekset中的周设置,才享受 feetype所对应的价格 仅DRRStayWeekDay和DRRCheckInWeekDay的时候使用 |
FeeType | 价格类型 | Enum | Y | WeekendFee -周末价格 WeekdayFee -平日价格 |
Room节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
RoomId | 展示房型编号 | String(10) | N | V1.10新增,仅用于关联静态信息 |
NameEn | 房间英文名 | String | N | |
Name | 房型名称 | String(50) | N | |
RatePlans | 产品信息 | RatePlan[] | Y | 包含多个RatePlan节点 |
ImageUrl | 图片地址 | String(255) | Y | 有水印图片,入参Options传入2时返回375x200、350x350、640x960、800x600、1080x800等规格图片 |
Floor | 楼层 | String(20) | Y | 入参Options传入2时返回 |
Broadnet | 上网情况 | String(10) | Y | 0-无 1-免费宽带 2-收费宽带 3-免费WIFI 4-收费WIFI 入参Options传入2时返回 |
BedType | 床型 | String(50) | Y | 详见附录的床型列表 入参Options传入2时返回 |
BedDesc | 床型描述 | String(255) | Y | 入参Options传入2时返回 |
Description | 房间描述 | String(255) | Y | |
Comments | 房间备注 | String(500) | Y | V1.04新增,入参Options传入2时返回 |
Area | 面积 | String(20) | Y | V1.14新增,入参Options传入2时返回 |
Capcity | 可容纳人数 | String(10) | Y | V1.17新增 床位房购买的为床位,与此处的入住人数无关。 |
WindowTypeId | 窗户类型ID | Int | Y | |
WindosType | 窗户类型描述 | String(50) | Y | 窗户类型的名称 |
RatePlan节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
RatePlanId | 产品编号 | Long | N | |
RatePlanName | 产品名称 | String(50) | N | |
Status | 销售状态 | Boolean | N | 该产品产品、价格是否有效的状态,这里为false就表示这个产品不能卖了。如果为true,那么还需要依次判断NightlyRate数组中每个节点的状态,只有这些全部都为true,这个产品才可售 ,详见。 false--不可销售(可能是产品无效、部分日期缺少价格)true--可销售 |
RoomTypeId | 销售房型编号 | String(4) | N | V1.10新增,用于hotel.order.create中的入参RoomTypeId |
SuffixName | 供应商房型附加名称 | String(50) | Y | V1.10新增, 房型信息的补充说明 |
HotelCode | 供应商酒店编码 | String(10) | Y | V1.10新增 |
SupportSpecialInvoice | 是否支持专票 | Boolean | Y | true 支持 false 不支持 |
CustomerType | 客人类型 | Enum | Y | All=统一价; Chinese =内宾价,需提示客人“须持大陆身份证入住”; OtherForeign =外宾价,需提示客人“须持国外护照入住”; HongKong =港澳台客人价,需提示客人“须持港澳台身份证入住”; ChinaGuest =中宾价,需提示客人“须持中国身份证、护照入住”; |
guestType | 适用人群 | String | Y | 宾客类型的适用人群: 0:不限 1:其他 2:持中国身份证的居民 3:持回乡证的港澳人士 4:持台胞证的台湾人士 5:持中国护照的侨胞 6:持大陆工作证/居留许可的外籍人士 7:持非中国护照的外籍人士 上述可能出现多个值,多个值时以英文逗号分隔,例:1,2,3 |
guestTypeExtendCh | 其他 | String | Y | 适用人群中其他的内容 |
CurrentAlloment | 房量限额 | Int | Y | 入住时间内不能超售的最小值。国内:当大于0小于5时,表示目前仅剩的房量,0表示房量充足,最少有1间可以预定,多间预定可能会失败;国际:0或999或9999表示房量充足,最少有1间可以预定,多间预定可能会失败 |
ConfirmDurationTime | 预计确认时长 | Int | Y | 产品的预计确认时长,单位秒,小于等于0代表未知确认时长 |
InstantConfirmation | 是否支持即时确认 | Boolean | Y | 表示这个产品是否支持即时确认。最终的订单是否是即时确认还需查看创建订单接口的返回值(推荐)或者调用即时确认接口(不推荐) 注意:使用即时确认,请与商务联系 |
PaymentType | 付款类型 | Enum | Y | SelfPay-前台现付、Prepay-预付 |
BookingRuleIds | 对应的预订规则编号 | String(100) | Y | 参见BookingRule节点,关联多个预订规则时以英文逗号分隔 |
isPriceLimittedProduct | 是否为限价产品 | Boolean | N | 表示本RatePlan是否为限价产品,限价产品必须按照艺龙给出的售价进行售卖,即按照TotalRate指定的价格卖给客人,不同限价类型约束规则不同,详见下面PriceLimitedType字段,接入完成后通知商务变更,新校验规则生效。 false --- 非限价 true --- 限价 |
PriceLimitedType | 限价类型 | Int | N | 二进制bit位分别表示各个限价条件,0为非限价,详见 |
GuaranteeRuleIds | 对应的担保规则编号 | String(100) | Y | 关联的担保规则编号,多个编号时以逗号分隔。只有PaymentType为SelfPay时需要关注,api版本小于1.5时只会关联一个规则编号,也有一定概率出现两个,这是脏数据导致的,两条规则会一模一样,取第一个即可。api版本大于等于1.5则可能出现多个,这时不是脏数据,而是真正的规则,需要取最严的规则使用(规则判定非常复杂,建议直接使用GuaranteeResult节点)。 |
PrepayRuleIds | 对应的预付规则编号 | String(100) | Y | 关联的预付规则编号,多个编号时以逗号分隔。只有PaymentType为Prepay时需要关注,api版本小于1.5时只会关联一个规则编号,也有一定概率出现两个,这是脏数据导致的,两条规则会一模一样,取第一个即可。api版本大于等于1.5则可能出现多个,这时不是脏数据,而是真正的规则,需要取最严的规则使用(规则判定非常复杂,建议直接使用PrepayResult节点)。 |
GuaranteeRuleExtendIds | 对应的新担保规则ID | String(100) | Y | 关联的新担保规则编号,多个编号时以逗号分隔。只有PaymentType为SelfPay时需要关注,建议直接使用GuaranteeResult节点。 |
PrepayRuleExtendIds | 对应的新预付规则ID | String(100) | Y | 关联的新预付规则编号,多个编号时以逗号分隔。只有PaymentType为Prepay时需要关注,建议直接使用PrepayResult节点。 |
DrrRuleIds | 对应的促销规则编号 | String(100) | Y | |
ValueAddIds | 对应的增值服务编号 | String(100) | Y | 使用这些Id到上面对应的规则数组里查找对应的规则。存在多条规则时以逗号分隔。 早餐以ValueAddIds中为准。 |
GiftIds | 礼品ID | String(100) | Y | 请关联下方的Gifts |
PkgProductIds | 礼包套餐ID | String | Y | 可能会关联多个礼包,因此这个字段代表多个id的组合,多个id之间使用英文逗号分隔,例如:1,2,3,关联GiftPackages |
Meals | 新餐食节点 | Meals | N | 见Meals节点 |
HAvailPolicyIds | 酒店特殊信息提示的编号 | String(100) | Y | V1.04新增, 关联Hotel.HAvailPolicys |
ProductTypes | 产品特性类型 | String(20) | Y | V1.08新增。可逗号分隔,目前取值: 3-限时抢购 4-钟点房 5-手机专享 6-铂涛产品,下单需提供入住人身份证(Identification字段已包含此逻辑,涉及到身份信息验证的可统一按照Identification字段来处理) 17-景酒打包产品,只能与景点门票打包销售,默认不吐出 25-床位房(床位房类型此处已无效,判断床位房请解析RatePlanName或者Room节点的Name字段,其中只要有一个字段包含“床位”字样即为床位房) 99-未知,艺龙内部使用,一般代理可忽略 |
sellChannels | 分销渠道 | String(20) | Y | V1.51新增。可逗号分隔,目前取值: 1-分销专享,艺龙内部使用,一般代理可忽 |
IsLastMinuteSale | 是否今日特价(即尾房) | Boolean | Y | IsLastMinuteSale== true的时候再判断StartTime和EndTime |
NeedIdNo | 是否需要提供身份证号 | Boolean | Y | 如果是铂涛产品,不能通过此字段判断,不管true还是false,都要传入身份证。如果不是铂涛产品,指该RatePlan在下单的时候,是否需要传入入住人的身份证号信息,如果该字段不为空且为true,则在成单时必须传入身份证号(已废弃,新字段请参考身份信息验证类型【Identification】) |
Identification | 身份信息验证类型 | Int | N | 0-无特殊验证要求(默认值) 1-整个订单至少传一个身份证 2-订单中每个房间至少传一个证件 3-订单中每个房间至少传一个身份证 4-每个客人传一个身份证 5-整个订单至少传一个身份证且需预订本人入住 (后续可能会继续增加其他验证类型,建议接入时将非文档中给出类型的产品做过滤处理) |
StartTime | 尾房开始时间 | Time | Y | 尾房每天可以销售的开始时间,仅IsLastMinuteSale为true时有效,格式为HH:mm:ss |
EndTime | 尾房结束时间 | Time | Y | 尾房每天可以销售的结束时间,仅IsLastMinuteSale为true时有效,格式为HH:mm:ss, 结束时间可能大于23:59,代表第二天,请在系统上支持这种情况,目前最多支持到次日的造成6点整,也就是EndTime=30 |
MinAmount | 预定最少数量 | Int | Y | 默认值:1 |
MinDays | 最少入住天数 | Int | Y | 默认值:1 |
MaxDays | 最多入住天数 | Int | Y | 默认值:365 |
MaxCheckinRooms | 最多预订间数 | Int | Y | 版本v1.35新增,规定了每个订单最多预订多少间 存在下单订多间不通过,但是一间一间的下单可以下多单的情况,这种情况就是此字段造成的。 从一间变多间时价格、规则等产品信息可能发生变化,当房量变化时可以调用hotel.room.change或hotel.data.booking获取最新产品相关信息。 支持多间时请将Options传入13。 |
MinAdvHours | 最少提前预订小时数 | Int | N | 按checkInDate的23:59:59(一般认为24点)来计算 |
MaxAdvHours | 最多提前预订小时数 | Int | N | |
TotalRate | 总价 | Decimal | N | 已经通过DRR的计算可以直接显示给客人。价格为-1表示不能销售。 |
AverageRate | 日均价 | Decimal | N | |
AverageBaseRate | 促销前的日均价 | Decimal | Y | 版本1.08新增 |
CurrencyCode | 货币 | Enum | Y | 参考Currency |
Coupon | 同程促销金额 | Decimal | Y | 同程促销金额 |
NightlyRates | 每天价格数组 | NightlyRate[] | Y | 包含多个NightlyRate节点 |
InvoiceMode | 预付产品发票模式 | String | N | 仅用于预付产品的发票开具模式。 版本V1.11新增 Hotel -- 酒店开具 Elong -- 艺龙开具 |
CooperationType | 酒店签约类型 | int | Y | v1.27 1为直签,2为非直签,0为未知 |
BookingChannels | 产品可以展示销售的渠道 | String | Y | v1.23新增,逗号分隔的数字列表(如果仅出现3表示仅在手机端销售): 1---线上(普通的PC访问的Web) 2---线下(呼叫中心、门店) 3---手机(Mobile App、H5) |
earliestToliveTime | 可住开始时间 | String(6) | Y | V1.32新增。 1、钟点房产品特有字段。 2、可住时长stayTime为客人实际可住时长的最大值,客人实际的可住时长需要代理根据可住结束时间减去当前时间进行计算 3、当结束时间小于开始时间时表示为第二天结束。 4、注意钟点房是有可售时间的,可售开始时间为 earliestToliveTime,可售结束时间为latestToliveTime减去stayTime,在可售时间范围外试单不能通过,即最晚入住时间为可售结束时间。 5、钟点房最晚到店时间为可住结束时间,最晚到店时间超过可住结束时间试单不能通过;钟点房的最晚预定时间为可住结束时间-1hour,实时搜索时不需要判断最晚预定时间,超过最晚预定时间的产品不会给出。 V1.61版本开始支持钟点房跨天 latestToliveTime大于24时即为钟点房跨天产品(前端具体展示格式可参考同程旅行官网) |
latestToliveTime | 可住结束时间 | String(6) | Y | |
stayTime | 可住时长 | String(2) | Y | |
xStayPeopleNum | 可入住人数 (已废弃) | String | Y | 房型补充说明 |
xStaySex | 可入住性别 (已废弃) | String | Y | |
xBedType | 床型 (已废弃) | String | Y | |
xFloor | 楼层 (已废弃) | String | Y | |
xOrientation | 朝向 (已废弃) | String | Y | |
xUserDefined | 自定义说明 (已废弃) | String | Y | |
HotelLevel | 酒店等级 | String | Y | V1.34新增 1:特牌 2:金牌 3:银牌 4:蓝牌 0:非挂牌 |
majia_id | 产品唯一标识 | String | Y | 产品唯一标识,H5或小程序跳转模式需使用,需要联系商务开通权限, 注意不要把这个值传入到下面的Littlemajiaid |
Littlemajiaid | 产品唯一标识(API成单使用) | String | Y | 产品唯一标识,所有产品试单、成单需要LittleMajiaId、GoodsUniqId传入 国际请求时,马甲有效时间30分钟 |
GoodsUniqId | 商品唯一标识 | String | Y | 商品唯一标识,所有产品试单、成单需要LittleMajiaId、GoodsUniqId传入 请求为国际酒店时,用于标识唯一产品 |
DayPromotions | 每日促销明细集合 | DayPromotion[] | Y | 只有开了促销权限(臻选特惠)才有数据,见DayPromotion |
PromotionFlags | 促销活动集合 | PromotionFlag[] | Y | 只有开了促销权限(臻选特惠)才有数据,此数据为每日促销活动的聚合。见PromotionFlag |
isPromotion | 是否促销 | Boolean | Y | 是否是促销产品(臻选特惠),为true时,所有产品试单、成单需要LittleMajiaId、GoodsUniqId传入 |
NeedMajiaId | 是需要回传马甲 | Boolean | Y | 产品NeedMajiaId为true时,所有产品试单、成单需要LittleMajiaId、GoodsUniqId传入 |
UsedPromotionValues | 使用的同程促销类型 | UsedPromotionValue[] | Y | 使用的同程促销类型及金额,可能有多个 |
InternetFilter | 网络标准化 | Int | Y | 网络标准化用的(仅用于国际及港澳台酒店,大陆酒店无需关注。) |
BoardFilter | 早餐标准化 | Int | Y | 早餐标准化用的(仅用于国际及港澳台酒店,大陆酒店无需关注。) |
PrepayResult | 预付结果节点 | PrepayResult | N | 参考PrepayResult节点 |
GuaranteeResult | 现付结果节点 | GuaranteeResult | N | 参考GuaranteeResult节点 |
RoomSquareMetres | 房间面积 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
TaxAndServiceFee | 税和服务费原币种 | Decimal | Y | 废弃,请使用NightlyRate节点的Rate和MinRate。 |
TaxAndServiceFeeRMB | 税和服务费人民币币种 | Decimal | Y | |
BedDescription | 床型描述 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedTypeAssociationalFilter | 床型标准化描述 | String | Y | 床型标准化后的文本-床型分组,仅用于国际及港澳台酒店,大陆酒店无需关注。 |
HasWindow | 是否有窗 | Boolean | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
SmokingDesc | 吸烟偏好描述 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
Board | 膳食 | Element | Y | 参考Board节点 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
RoomChildAge | 房间可住儿童年龄 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
RoomMaxPax | 房间最大入住人数 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
AdultOccupancyPerRoom | 房间最大可住成人数 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ChildrenOccupancyPerRoom | 房间最大可住儿童数 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
CheckInInstructions | 入住需知 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ExtraPersonFee | 额外人员费用(附加费) | Decimal | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ExtraPersonFeeRMB | 额外人员费用(附加费人民币) | Decimal | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedGroups | 床型信息 | InterBedGroup[] | Y | 参考InterBedGroup节点 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
InternetDesc | 网络描述 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
SupplierId | 供应商id | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
SubSupplierId | 二级供应商id | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
ShopperProductId | 商品库shopperid | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
AdditionalTax | 另付税和服务费 | AdditionalTax | Y | 参考AdditionalTax节点 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
Nat | 国籍限制 | Nat | Y | 非中国大陆 特有字段 代表当前产品对入住人国籍限制条件,见Nat节点。 注意如果当前为空,不一定代表产品无国籍限制,也有可能供应商无能力提供国籍限制条件 注意如果当前部位空,代表一定有限制要求 |
NightlyRate节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Date | 当天日期 | Date | N | |
Member | 会员价 | Decimal | N | 已经通过DRR的计算可以直接显示给客人。价格为-1表示不能销售。 |
Cost | 结算价 | Decimal | N | 仅用于结算价模式下的预付产品可用,非结算价模式下返回-1 |
Status | 库存状态 | Boolean | N | 表示当天库存是否可用,详见 |
AddBed | 加床价 | Decimal | Y | -1表示不能加床 |
Basis | 原始价格 | Decimal | Y | 未经过DRR计算过的原始价格,入参Options包含5的时候返回 |
BreakfastCount | 早餐数量 | Int | Y | v1.25新增,表示这一日的包含在房费中的早餐数量。 同一房型同一产品不同天数的早餐数量可能不一致,是由于特殊早餐问题造成的,具体可以参考ValueAdd节点。 |
coupon | 同程促销金额 | Decimail | Y | v1.29 每天的同程促销金额 |
Rate | 每晚每间房价(含税费) | Decimail | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
MinRate | 最小价(不含税费) | Decimail | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
UsedPromotionValue节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PromotionTypeId | 促销类型id | Int | N | 1:返现; 9:立减; 10:普通红包返现; 11:普通红包立减; 62:满返红包;63:满减红包 |
PromotionValue | 优惠金额 | Decimal | N | 优惠的金额 |
Nat节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Type | 国籍类型 | Int | N | 1:不适用; 2:适用; |
List | 国籍Code List | String[] | N | 例如:["CN","GB"],需要与Type结合使用 |
Detail节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
HotelName | 酒店名称 | String(100) | N | |
StarRate | 挂牌星级 | Int | N | 酒店对外的挂牌星级(国家旅游局规定)。0-无星级;1-一星级;2-二星级;3-三星级;4-四星级;5-五星级。当为0时对外显示可用Category的值,但请进行图标区分。 |
Category | 艺龙推荐级别 | Int | N | 艺龙推荐星级,而非酒店挂牌星级。对应值含义为:0,1,2:客栈;3:舒适;4:高档;5:豪华;A:公寓 |
Latitude | 纬度 | String(20) | Y | 默认返回Google坐标系。 当Options中加入8后,输出为百度坐标。 |
Longitude | 经度 | String(20) | Y | 其他坐标系请联系对应的厂商获取转换方法。 |
Address | 地址 | String(255) | Y | |
Phone | 前台电话 | String(20) | Y | |
ThumbNailUrl | 封面图片 | String(255) | Y | |
City | 城市ID | String(20) | Y | |
CityName | 城市名称 | String(50) | Y | V1.16新增。为空时候使用ID和GEO数据进行关联。 |
District | 行政区ID | String(20) | Y | |
DistrictName | 行政区名称 | String(50) | Y | V1.16新增。为空时候使用ID和GEO数据进行关联。 |
BusinessZone | 商业区ID | String(20) | Y | |
BusinessZoneName | 商业区名称 | String(50) | Y | V1.16新增。为空时候使用ID和GEO数据进行关联。 |
Review | 评价 | Element | Y | 参照 Review节点 |
Features | 特色介绍 | String(max) | Y | |
GeneralAmenities | 设施服务 | String(max) | Y | |
Traffic | 交通状况 | String(max) | Y | |
Description | 酒店描述 | String(max) | Y | 酒店的简介、描述 |
HotelNameEn | 酒店英文名 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
AddressEn | 英文地址 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
CheckInTime | 到店时间 | String | Y | |
CheckOutTime | 离店时间 | String | Y | |
HotelCountryName | 国家名称 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
HotelCountryCode | 国家编码 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
HotelCountryId | 国家id | Int | N | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
HotelPolicy | 酒店政策 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
Review节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Good | 好评数 | Int | N | |
Poor | 差评数 | Int | N | |
Count | 评论总数 | Int | N | |
Score | 好评率 | String(10) | Y | 如果是带%就是计算好的如94%;如果不带%就是一个数额需要自行再处理如0.94 |
Image节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Type | 图片类型 | Element | N | 1 - 餐厅 (Restaurant) 2 - 休闲 (Recreation Facilities) 3 - 会议室 (Meeting/Conference) 5 - 外观 (Exterior) 6 - 大堂/接待台 (Lobby/ Reception) 8 - 客房 (Guest Room) 10 - 其他 (Other Facilities) 11 - 公共区域 (Public Area) 12 - 周边景点 (Nearby Attractions) |
IsCoverImage | 是否是酒店封面 | String | Y | 字符串类型,为 "true" 时表示Location中都是该酒店封面图片,为空或为"false"表示非酒店封面图片 |
IsRoomCoverImage | 是否为房型封面 | String | Y | 字符串类型,为 "true" 时表示Location中都是RoomId对应房型的封面图片,为空或为"false"表示非房型封面图片 |
RoomId | 房型编号 | String(255) | N | |
Locations | 图片地址 | Location[] | Y | 参照Location节点 |
Location节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
SizeType | 图片规格 | Int | N | 1:jpg图片,固定长边350,固定长边350缩放图片(用于详情页图片展示) 7:png图片,固定长边640放缩图片 8:1080x800规格的图片 9:1140x640规格的图片 10:800x600规格的图片 11:960x640规格的图片 12:375x200规格的图片 |
WaterMark | 是否有水印 | Boolean | N | 默认为有水印图片 |
Url | 图片地址 | String(255) | N |
GiftPackage节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PkgProductId | 礼包套餐ID | Long | N | 关联RatePlan.PkgProductids |
PkgType | 礼包套餐类型 | Int | N | 0:礼包,1:套餐 |
PkgProductName | 礼包套餐名字 | String | Y | |
RuleDescriptionAdditional | 礼包套餐特别说明 | String | Y | |
Pictures | 礼包套餐图片 | Picture[] | Y | 参考Picture节点 |
XProducts | X产品列表 | XProduct[] | Y | 参考XProduct节点 |
XProduct节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
XProductId | X产品ID | Long | N | X产品即一个具体的礼包套餐 |
XProductName | X产品名字 | String | N | |
TypeName | X产品类型 | String | Y | 有"食","享" 两种类型 |
Quantity | X产品数量 | String | Y | |
ReceptionTimes | X产品接待时间 | String | Y | |
Capacity | X产品适用人数 | String | Y | |
BookingPhone | X产品预订电话 | String | Y | |
AppointPolicy | X产品预订规则 | String | Y |
Picture节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
ImgIndex | 礼包套餐图片顺序 | Int | N | |
ImgUrl | 礼包套餐图片链接 | String | N |
Gift节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
GiftId | 送礼编号 | Long | N | 关联RatePlan.GiftId |
GiftDescription | 礼包副标题 | String | Y | 关于礼品副标题的描述 |
Description | 描述 | String | N | 关于礼品的描述 |
RelatedProducts | 关联的产品列表 | RelatedProducts[] | Y | RelatedProducts节点 |
StartDate | 礼品有效开始时间 | Date | N | yyyy-MM-dd'T'HH:mm:ss+08:00格式,例如:2018-11-02T00:00:00+08:00 |
EndDate | 礼品有效结束时间 | Date | N | yyyy-MM-dd'T'HH:mm:ss+08:00格式,例如:2018-11-02T00:00:00+08:00 |
DateType | 日期类型 | Enum | N | CheckinDate:入住日 BookingDate:预订日 StayDate:在店日 |
WeekSet | 星期设置 | String(20) | N | |
GiftContent | 活动内容 | String(2000) | N | |
GiftTypes | 送礼类型 | String(20) | N | 1.礼品-含果盘 3.礼品-含水果 4.礼品-含饮品 5.礼品-含精美艺品 6.礼品-其他 7.延迟退房-延迟至13点退房 8.延迟退房-延迟至14点退房 9.延迟退房-延迟至15点退房 10.延迟退房-其他 11.餐饮-含午餐 12.餐饮-含晚餐 13.餐饮-含下午茶 14.餐饮-含餐券 15.餐饮-其他 16.旅游门票-含景点门票 17.旅游门票-含演出门票 18.旅游门票-其他 19.折扣/折扣券-含店内折扣/折扣券 20.折扣/折扣券-含外部折扣/折扣券 21.折扣/折扣券-其他 22.交通-含接站 23.交通-含接机 24.交通-含送站 25.交通-含送机 26.交通-含景区直通车 27.交通-其他 28.其他-其他 注意:1.52版本及以后该字段废弃,请使用GiftInfos字段,1.52之前的版本扔使用该字段。 |
GiftInfos | 新的送礼类型 | GiftInfo[] | Y | 参考GiftInfo字段 |
HourNumber | 小时数 | Int | Y | |
HourType | 小时数的类型 | Enum | Y | Hours24全天24小时都可以送礼品 XhourBefore几点之前送礼品 XHourAfter几点之后送礼品 |
WayOfGiving | 送礼方式 | Enum | N | EveryRoom-每间房送一回礼品 EveryRoomPerDay-每间房每个晚上送一回礼品 Other-其他,参考下面的描述 |
WayOfGivingOther | 其他的送礼具体方式 | String(20) | Y | 送礼方式为其他的时候,送礼活动的名称 |
GiftValue | 礼包价值 | Double | Y | 礼包、套餐的预估总价值 |
RelatedProducts节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
RoomTypeIds | 供应商房型id列表 | String | N | 以逗号分隔的供应商房型id列表 |
RatePlanId | 价格计划ID | Integer | N |
EffectiveDates节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
StartDate | 礼品有效开始时间 | Date | N | yyyy-MM-dd'T'HH:mm:ss+08:00格式,例如:2018-11-02T00:00:00+08:00 |
EndDate | 礼品有效结束时间 | Date | N | yyyy-MM-dd'T'HH:mm:ss+08:00格式,例如:2018-11-02T00:00:00+08:00 |
HAvailPolicy节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Id | 提示编号 | String | N | RatePlan.HAvailPolicyIds 与此关联 |
AvailPolicyText | 提示内容 | String(1024) | N | |
AvailPolicyStart | 有效开始时间 | DateTime | N | |
AvailPolicyEnd | 有效结束时间 | DateTime | N |
GiftInfo节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
GiftInfo | 礼包一级编号 | Long | N | 1.含礼品 2.延迟退房 3.含餐饮 4.含旅游门票 5.含折扣/抵扣券 6.含交通 7.其他 |
GiftSubInfos | 二级礼包内容 | GiftSubInfo[] | N | 参考GiftSubInfo节点 |
GiftSubInfo节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
SubInfo | 礼包二级编号 | Integer | N | 1.含果盘 3.含水果 4.含饮品 5.含精美艺品 6.其他 7.延迟至13点退房 8.延迟至14点退房 9.延迟至15点退房 10.其他 11.含午餐 12.含晚餐 13.含下午茶 14.含餐券 15.其他 16.含景点门票 17.含演出门票 18.其他 19.含店内折扣/抵扣券 20.含外部折扣/抵扣券 21.其他 22.含接站 23.含接机 24.含送站 25.含送机 26.含景区直通车 27.其他 28.其他 注意:1-6对应一级编号的1,7-10对应一级编号的2,11-15对应一级编号的3,16-18对应一级编号的4,19-21对应一级编号的5,22-27对应一级编号的6,28对应一级编号的7 |
ExchangeRate节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
CurrencyCode | 货币编码 | String | N | |
Rate | 汇率值 | Decimal | N | 对应货币转换成人民币的汇率 |
DayPromotion节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Date | 日期 | Date | Y | |
Promotions | 每日促销明细 | Promotion[] | Y | 每天的促销明细,可以包含多个,如:2019-05-12可以包含“天天特价”、“优享会”等多个促销,多个促销会叠加使用。见Promotion |
Promotion节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PromotionType | 促销类型 | Integer | N | 0:未定义、1:天天特价、2:门店新客、3:优享会、4:其他促销、5:权益云 |
PriceDiscountValue | 卖价优惠金额 | Decimal | N | 卖价优惠金额 |
PromotionId | 促销活动Id | Long | N | 促销活动Id,根据此ID关联PromotionFlag中的PromotionId,获取具体活动标签 |
PromotionFlag节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
PromotionId | 促销活动Id | Long | N | 促销活动Id |
PromotionTag | 促销活动标签 | String | Y | 促销活动标签 |
Board节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
BreakfastIncluded | 是否含早 | Boolean | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
HalfboardIncluded | 是否半膳 | Boolean | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
FullboardIncluded | 是否全膳 | Boolean | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
Boards | 膳食明细 | Element | Y | 参考BoardDetail节点 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BoardDesc | 膳食描述 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BoardDetail节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Description | 描述 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
Count | 膳食数量 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
type | 膳食类型 | Int | Y | 膳食类型 1:早餐;2:午餐;3:晚餐;0:未知餐型;仅用于国际及港澳台酒店,大陆酒店无需关注。 |
InterBedGroup节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
BedGroupId | 床型信息id | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedGroupDesc | 床型信息描述 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedTypes | 床类型 | BedType[] | Y | 参考BedType节点 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedType节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
BedTypeId | 床类型id | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedTypeName | 床类型名称 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
BedType | 床类型 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 大床,单人床,双层床,圆床,壁柜床,婴儿床,子母床,小床,胶囊床,沙发床,水床,通铺,折叠床,拼床,由酒店安排 等 |
Count | 床数 | Int | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
Size | 床大小 | String | Y | 仅用于国际及港澳台酒店,大陆酒店无需关注。 |
PrepayResult节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
CancelDescription | 取消规则 | String | N | |
CancelType | 取消类型 | int | N | 1:免费取消;2:收费取消,3:限时取消,4:不可取消 |
LadderVouch | 是否使用阶梯担保规则 | boolean | Y | 废弃,此字段无意义,与LadderParseList节点无关,可以忽略 |
LadderParseList | 取消规则明细 | LadderParse[] | N | 参考LadderParse节点 |
CancelTag | 取消规则标签 | String | Y | 如果规则是任意取消和不可取消的没有这个字段和对应值, 限时取消和付费取消则会返回该字段 |
LadderParse节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
BeginTime | 开始时间 | long | N | |
EndTime | 结束时间 | long | N | |
CutType | 扣费类型 | int | N | 0:不扣费;1:金额;2:比例;3:首晚房费;4:全额房费; 请注意:hotel.detail、hotel.data.booking、hotel.order.detail接口中CutType、CutValue存在不一致的情况,对客展示建议直接使用具体扣费金额:AmountRmb(兜底当扣费金额AmountRmb大于订单金额时,展示不可取消) |
CutValue | 扣费值 | Decimal | N | 原始币种 |
Amount | 扣费值 | Decimal | N | 国际现付的是原币,预付对客的是人民币,预付对酒店的是原币。 |
ShortDesc | 短文案 | String | Y | |
AmountRmb | 扣费值 | Decimal | N | 人民币 |
ExchangeRate | 汇率 | Decimal | Y |
GuaranteeResult节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
MoneyArrivalTime | 到店时间触发时的担保金额 | Double | N | (废弃)货币类型为原币种,即所在RatePlan节点下的CurrencyCode |
ArrivalTime | 需要担保的到店时间(格式:hh:mm) | String | N | 用户填写的最晚到店早于此时间,不需要关注MoneyArrivalTime,否则需要需要担保MoneyArrivalTime |
RoomCount | 房量担保分割点 | Integer | N | 用户预订间数小于此值不需要担保,否则需要担保 |
GuaranteeType | 担保类型 | Integer | N | 二进制位表示:1:到店时间担保,2:房量担保,3:预订即需担保,4:免担保 0:免担保;2:到店时间担保;4:房量担保;8:预定即需担保 |
GuaranteeMoney | 当前条件下需要担保的金额 | Double | N | 具体见取消规则明细 |
NeedGuarantee | 当前条件下是否需要担保 | Boolean | N | |
CancelTime | 可以取消的时间点,单位秒 | Long | N | (废弃)之前可以取消,之后不可取消,不可取消时:为-28800,免费取消时:Long.MAX_VALUE,其他情况下为北京时间的时间戳 |
CancelDescription | 取消规则详细描述 | String | Y | |
CancelTag | 取消规则标签 | String | Y | 如果规则是任意取消和不可取消的没有这个字段和对应值,限时取消和付费取消则会返回该字段 |
CancelType | 取消类型 | Integer | N | 1. 免费取消、2.付费取消、3.可取消、4.不可取消 |
LadderParseList | 取消规则明细 | LadderParse[] | N | 参考LadderParse节点 |
Meals节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
hasMealTable | 是否存在餐食表格 | Boolean | N | 为true代表取“dayMealTable”餐食表格字段,查看每天的餐食情况 |
mealCopyWriting | 餐食文案描述 | String | N | 总餐食描述 |
dayMealTable | 每日餐食表格 | List<DayMeal> | N | 包含多个DayMeal,见DayMeal节点; 具体场景demo可见:https://open.elong.com/faq/detail?id=312&plt=2 |
DayMeal节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
date | 餐食的日期 | String | N | yyyy-MM-dd格式,例如2021-08-12 |
useDynamicMeal | 是否使用动态餐食 | Boolean | N | 为true取dynamicMealDesc; 为false取breakfastDesc、lunchDesc、dinnerDesc; |
dynamicMealDesc | 动态餐食描述 | String | Y | 例如:3种餐食(3选2) |
breakfastShare | 早餐数量 | Int | N | 例如:0 |
breakfastDesc | 早餐描述 | String | Y | |
lunchShare | 午餐数量 | Int | N | 例如:1 |
lunchDesc | 午餐描述 | String | Y | 例如:1份午餐 |
dinnerShare | 晚餐数量 | Int | N | 例如:2 |
dinnerDesc | 晚餐描述 | String | Y | 例如:2份晚餐 |
dayMealCopyWriting | 到天餐食描述 | String | Y | 例如:2份早餐/间 |
AdditionalTax节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
TotalAmountRmb | 另付税和服务费总额 | Decimal | Y | |
AdditionalTaxItems | 另付税和服务费明细 | AdditionalTaxItem[] | Y | 参考AdditionalTaxItem节点 |
AdditionalTaxItem节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Description | 另付税和服务费明细描述 | String | Y | |
Amount | 另付税和服务费明细金额 | Decimal | Y |
输入参数示例
https://api-test.elong.com/rest?timestamp=1489979202 &format=json&method=hotel.detail&signature=1b34811e21b8efe78738b3afd6ed68f4 &user={userid}&data={"Version":"1.28","Local":"zh_CN", "Request":{"ArrivalDate":"2017-3-21","DepartureDate":"2017-3-22", "HotelIds":"40101006","PaymentType":"All"}}
输出参数示例
{ "Code": "0", "Result": { "Count": 1, "Hotels": [ { "HotelId": "40101006", "LowRate": 1.5, "CurrencyCode": "RMB", "Distance": 0, "BookingRules": [ { "BookingRuleId": 94112, "TypeCode": "PerRoomPerName", "DateType": "BookDay", "StartDate": "2014-02-13T00:00:00 08:00", "EndDate": "2064-02-13T00:00:00 08:00", "StartHour": "00:00:00", "EndHour": "23:59:00", "Description": "酒店要求每个房间至少提供一名入住客人的姓名" } ], "GuaranteeRules": [ { "GuranteeRuleId": 18915459, "DateType": "CheckInDay", "StartDate": "2017-02-10T00:00:00 08:00", "EndDate": "2018-02-10T00:00:00 08:00", "WeekSet": "1,2,3,4,5,6,7,", "IsTimeGuarantee": false, "StartTime": "18:00", "EndTime": "06:00", "IsTomorrow": true, "IsAmountGuarantee": false, "Amount": 5, "GuaranteeType": "FirstNightCost", "ChangeRule": "NoChange", "Day": "2017-03-10T00:00:00 08:00", "Time": "18:00", "Hour": 6, "Description": "担保条件:在17.02.10至18.02.10入住需要您提供信用卡担保。预订后无法变更取消,如未入住,将扣除第一晚房费作为违约金。" } ], "PrepayRules": [ { "PrepayRuleId": 8, "DateType": "CheckInDay", "StartDate": "2017-02-01T00:00:00 08:00", "EndDate": "2020-12-31T00:00:00 08:00", "WeekSet": "1,2,3,4,5,6,7,", "ChangeRule": "PrepayNoChange", "CashScaleFirstAfter": "FristNight", "CashScaleFirstBefore": "FristNight", "DateNum": "2017-03-20T00:00:00 08:00", "Time": "18:00", "DeductFeesAfter": 1, "DeductFeesBefore": 0, "DeductNumAfter": 0, "DeductNumBefore": 0, "Hour": 24, "Hour2": 0, "Description": "预付规则:在17.02.01 到20.12.31期间入住,需要提供信用卡预付全额房费。一经预订成功不可变更/取消。" } ], "ValueAdds": [], "DrrRules": [], "Rooms": [ { "RoomId": "1163", "Name": "主楼标准客房invoice", "RatePlans": [ { "Status": true, "CustomerType": "All", "CurrentAlloment": 0, "InstantConfirmation": true, "IsLastMinuteSale": false, "StartTime": "00:00:00", "EndTime": "23:59:00", "TotalRate": 1000, "AverageRate": 1000, "CurrencyCode": "RMB", "Coupon": 0, "NightlyRates": [ { "Member": 1000, "Cost": -1, "Status": true, "AddBed": -1, "Date": "2017-03-21T00:00:00 08:00", "BreakfastCount": 0, "coupon": 0 } ], "BookingRuleIds": "", "PrepayRuleIds": "6", "ValueAddIds": "", "RoomTypeId": "1163", "HotelCode": "40101006", "InvoiceMode": "Hotel", "BookingChannels": "1,2,3", "CooperationType": 1, "RatePlanId": 484311, "RatePlanName": "预付RP3", "MinAmount": 1, "MinDays": 1, "MaxDays": 365, "PaymentType": "Prepay", "Nat":{ "Type":1, "List":["CN","GB"] }, "DayPromotions": [ { "Date": "2019-05-22T00:00:00+08:00", "Promotions": [ { "PromotionType": 1, "PriceDiscountValue": 15, "PromotionId": 5 } ] }, { "Date": "2019-05-23T00:00:00+08:00", "Promotions": [ { "PromotionType": 1, "PriceDiscountValue": 14, "PromotionId": 5 } ] } ], "PromotionFlags": [ { "PromotionId": 5, "PromotionTag": "天天特价" } ], } ] } ], "Gifts": [ { "GiftId": 1128, "StartDate": "2017-03-20T00:00:00 08:00", "EndDate": "2017-03-20T00:00:00 08:00", "DateType": "CheckinDate", "WeekSet": "1,2,3,4,5,6,7", "GiftContent": "礼包测试", "GiftTypes": "", "HourNumber": 0, "HourType": "Hours24", "WayOfGiving": "EveryRoom", "WayOfGivingOther": "", "Description": "2016年08月01日至2017年08月31日期间入住,每间房包含一次:礼包测试" } ], "HAvailPolicys": [] } ] }, "Guid": "d20e71b0-5a04-44eb-b69e-d8a45f4b6b06" }
注意事项
InvoiceModel字段为Elong时,不代表一定由艺龙开具发票。只有预付产品才有可能为Elong,预付产品如果接入方自己不想要开发票,可以联系商务开通代开发票服务,此时才是艺龙开具发票,如果不开通代开服务,则由接入方自己开具发票。
传入多个酒店ID请求的时候,每个酒店只返回最多两个产品。
关于价格取整问题,有些产品价格可能会有小数,如果分销商不想在自己的网站上展示小数,可以在展示时四舍五入或向上取整,但是订单填写页需要展示真实的价格给客户。
尽量控制请求数据量的大小,例如尽量不请求静态信息(如酒店简介、房型简介、图片等),静态信息通过静态信息文件获取;
实时搜索模式下Gift节点中的StartDate、EndDate、DateType和WeekSet不用判断;
担保规则(GuaranteeRule节点)使用说明:
展示的时候只需要展示描述字段,不需要进行其他处理。在填写订单时根据以下判断是否需要提交支付信息。
调用hotel.list和hotel.detail这两个搜索接口的时候若出现了担保规则,则有可能需要担保的(但也可能根据客人选择的条件判断后没有满足条件的担保规则,那么不需要担保),如果没有出现担保规则,则是不需要担保的。
担保规则筛选顺序:先判断IsAmountGuarantee和IsTimeGuarantee字段,再根据结果来决定最后判断的字段。IsAmountGuarantee和IsTimeGuarantee字段的详细判断如下:
IsAmountGuarantee | IsTimeGuarantee | 说明 |
---|---|---|
FALSE | FALSE | 无条件担保订单,即必须担保,(要在日期范围内)不需要判断其他条件 |
TRUE | FALSE | 房量担保,检查Amount |
FALSE | TRUE | 到店时间担保,检查StartTime 和EndTime |
TRUE | TRUE | 房量担保或到店时间担保 。需要检查Amount、StartTime和EndTime,满足一个条件就需要担保 |
礼包套餐(GiftPackages节点)使用说明:
- 在房型产品中取GiftPackage.PkgProducname作为礼包套餐标题展示,在礼包套餐标题前取PkgType字段展示类型(如0,展示为礼包)。在礼包套餐详情页中,按类别(TypeName)分别展示每个类别中X产品(XProduct)具体信息:取该类型中的每个X产品的XProductName+Qunatity进行拼接作为该类别X产品标题,如"X产品A 1份/天+X产品B 1份一天";在X产品标题前可展示X产品类型(TypeName)。在该类别X产品标题分别展示所含X产品信息,取"XProductName使用说明"作为每个X产品的副标题,如"X产品A使用说明",在每个X产品的副标题下展示其具体内容:"预约规则:AppointPolicy 预约时间: ReceptionTimes 适用人数:Capacity 预约电话:BookingPhone"等内容。如果这些字段返回都为空,则无需展示该X产品
- 在X产品展示完之后可取礼包套餐的特别说明(GiftPackage.RuleDescriptionAdditional)进行展示,标题为"特别说明",取图片GiftPackage.Pictures中的ImgUrl字段展示图片,标题为"图文说明",图片按Picture.ImgIndex的大小按顺序展示。
常见错误码
错误码 | 解释 | 解决方法 |
---|---|---|
H000005 | 入住日期不能为空 | 可能是日期格式错误导致的,支持的日期时间格式:"yyyy-MM-dd" |
H000006 | 离店日期不能为空 | 可能是日期格式错误导致的,支持的日期时间格式:"yyyy-MM-dd" |
H002004 | 没有搜索预付产品权限 | 权限不够,联系商务解决。 |
H004001 | 无预付产品权限 | 权限不够,联系商务解决。 |
H100999 | 搜索异常 | 这种有可能是底层问题,这种需要重试1-2次,不要无限重试,也有可能是传入的酒店ID太多,尽量少于3个 |