方法名称
hotel.data.rate
使用说明
本接口对比实时hotel.detail接口缺少折扣优惠,价格竞争力低,非必要尽量不对接此接口。
本接口用于获取产品的原始价格,在需要获取全部产品价格或产品价格有更新时使用。
1)此价格接口获取到的价格均为原始价格,如有促销产品(比如连住3晚优惠10%等),需要通过DRR计算优惠后的价格;而通过搜索接口(hotel.list、hotel.detail)查询返回的是优惠后价格;
2)根据hotel.data.rp中酒店的周末设置,若某天是周末,则当天的会员价格用价格的Weekend属性,是工作日则使用价格的Member属性;
3)DRR规则中用到的周末价,需从本接口中获取;
4) [注意]如果返回的记录里面出现冲突的(如RoomTypeId和RatePlanId相同的多条记录,存在StartDate和EndDate交叉),这样冲突的数据是数据同步过程中读取了脏数据导致的,请检测到后再请求一次本接口,若还是不能解决则以最大的PriceID那条记录为准,其他的都可以舍弃。
输入参数
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
HotelIds | 酒店编号 | String(100) | N | 最多10个,逗号分隔 |
HotelCodes | 酒店编码 | String | Y | 最多10个,逗号分隔。如果输入这个参数,请确保这些HotelCodes都是HotelIds(只能输入一个)所属的 |
PaymentType | 付款类型 | Enum | N | All - 全部 SelfPay - 前台现付 Prepay - 预付 |
StartDate | 开始时间 | DateTime | N | 大于等于昨天, 使用yyyy-MM-dd格式,例如:2022-12-09 |
EndDate | 结束时间 | DateTime | N | 和开始时间不超过90天, 使用yyyy-MM-dd格式,例如:2022-12-09 |
InvoiceMode | 发票模式 | Enum | Y | NoSense --全部 Elong --艺龙开票 Hotel --酒店开票 注:该字段只过滤预付产品。 |
响应结果
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
Rates | 价格集合 | Rate[] | Y | 包含多个Rate节点 |
Rate节点
节点 | 名称 | 类型 | 可为空 | 说明 |
---|---|---|---|---|
HotelID | 酒店ID | String(8) | N | 这几个属性是业务主键 |
RoomTypeId | 房型ID | String(10) | N | |
RateplanId | 产品 ID | Int | N | |
StartDate | 开始时间 | Date | N | |
EndDate | 结束时间 | Date | N | |
HotelCode | 供应商ID | String(8) | Y | v1.13新增 |
Status | 状态 | Boolean | N | 已废弃,总是返回true,返回的都是有效价格,请注意清理本地无效价格 |
Member | 平日卖价 | Decimal | N | -1代表此房无价,无价和满房都不能进行预订 |
Weekend | 周末卖价 | Decimal | N | 同上 |
MemberCost | 平日结算价 | Decimal | N | 同上,开通了结算价模式的接入方才可以使用 |
WeekendCost | 周末结算价 | Decimal | N | 同上,开通了结算价模式的接入方才可以使用 |
AddBed | 加床价 | Decimal | Y | V1.01新增 -1代表不能加床,0-免费加床,大于0表示加床的费用 |
PriceID | 价格ID | Long | Y | V1.08新增 |
CurrencyCode | 货币类型 | String | Y | V1.08新增 参考Currency |
InvoiceMode | 发票模式 | Enum | Y | V1.36新增 NoSense --全部 Elong --艺龙开票 Hotel --酒店开票 |
IsPriceLimit | 是否限价 | Boolean | N | 表示当前价格是否限价 ,限价时须按照艺龙给出的售价进行售卖。不同限价类型约束规则不同,详见下面PriceLimitedType字段,接入完成后通知商务变更,新校验规则生效。 多天连住时,有一天为true,则所有天限价。 判断限价时与hotel.data.rp接口中IsPriceLimitProduct字段为或关系,两者有其一为true,均为限价。 false:非限价 true:限价 |
PriceLimitedType | 限价类型 | Int | N | 二进制bit位分别表示各个限价条件,0为非限价,详见 |
输入示例
https://api-test.elong.com/rest?timestamp=1489989779&format=json &method=hotel.data.rate&signature=98516ce4c003bd1737b18937f946510c &user={userid}&data={"Version":"1.28","Local":"zh_CN","Request": {"StartDate":"2017-3-21","EndDate":"2017-3-22","HotelIds":"40101025","PaymentType":"SelfPay"}}
输出示例
{ "Code":"0", "Result":{ "Rates":[ { "HotelID":"40101025", "HotelCode":"70101318", "RoomTypeId":"1118", "RateplanId":478755, "StartDate":"2016-04-12T00:00:00 08:00", "EndDate":"2017-04-23T00:00:00 08:00", "Status":true, "Member":100.0, "Weekend":100.0, "MemberCost":-1.0, "WeekendCost":-1.0, "AddBed":-1.0, "PriceID":1233457173, "CurrencyCode":"RMB" } ] }, "Guid":"0f34ed10-8685-4fb7-9ffa-ed38c25e73a3" }
常见错误码
错误码 | 解释 | 解决方法 |
---|---|---|
H000997 | 未知异常 | 重试,反复出现请联系技术支持人员 |