Skip to main content

酒店信息相关接口

获取酒店列表

说明:根据公司卡号信息,查询B2B渠道所有酒店ID

注:因门店每天都有新增或下线,建议每天同步一次酒店列表,新增或删除酒店

接口地址:hotel/getHotelList

请求方式:POST

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
cardId String 公司卡号 VCENTCRM0002220001
cardPassWord String 公司卡密码 TestPassword

请求示例:

{
"cardId": "VCENTCRM0002220001",
"cardPassWord": "TestPassword"
}
返回参数说明:
参数名 参数类型 备注
code code 状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
message String 响应消息
content List<HotelInfo]> 酒店信息
HotelInfo:
参数名 参数类型 备注
hotelId String 酒店ID
hotelName String 酒店名称

返回示例:

{
"code": "200",
"message": "成功!",
"content": [
{
"hotelId": "0100513",
"hotelName": "全季呼和浩特市政府酒店"
}
]
}

获取酒店详情

说明:根据酒店ID查询酒店详情,仅支持一次查询一个酒店

:系统上线后,首次需落地所有B2B渠道酒店信息,之后每日根据获取的酒店列表中的酒店ID与本地库中酒店相匹配,判断新增或下线,更新酒店详情数据

接口地址: hotel/getHotelComplexList

请求方式:POST

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
cardId String 公司卡号 VCENTCRM0002220001
cardPassWord String 公司卡密码 TestPassword
hotelIdList List<String> 酒店ID 一次最大支持查询1家酒店 ["2000014"]

请求示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"hotelIdList": ["2000014"]
}
返回参数说明:
参数名 参数类型 备注
code code 状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
message String 响应消息
content List<HotelDetail> 酒店信息
HotelDetail:
参数名 参数类型 备注
hotelId String 酒店ID
brandId String 品牌ID
brandCode Int 品牌code
brandName String 品牌名称
hotelName String 酒店名称
hotelNameEn String 酒店名称英文
provinceNo String 省ID
provinceName String 省名称
cityNo String 城市ID
cityName String 城市名称
cityArea String 城市区域名称
countyName String 区县名称
countyNo String 区县ID
nationName String 国家名称
nationNo String 国家ID
hotelAddress String 酒店地址
hotelAddressEn String 酒店地址英文
hotelAddressTip String 酒店地址提示
hotelTelephone String 电话
hotelFax String 酒店传真
zipCode String 邮政编码
roomNum Int 客房数
hotelWordIntroduce String 酒店介绍
longitude String 酒店经度 高德地图
latitude String 酒店纬度 高德地图
openingDate String 营业日期
trialOpeningDate String 试营业日期
operateScope String 经营性质
返回值:
1、内宾
2、内外宾
注:内外宾酒店支持外宾接待
operateScopeId Int 返回值:1、2、3
1=仅大陆客人
2=全球客人
3=仅大陆及港澳台客人
isOpening Boolean 是否营业
hotelClassification String 酒店类别
scaleOfTaxpayer String 纳税人性质 NONE:未知 GENERAL:一般纳税人 COMMON:小规模纳税人
companyPayTax BigDecimal 小规模纳税人的门店,下总对总的订单公司需要承担的税点
5.23:小规模纳税人的门店,选择开1%税率发票,公司需承担全部税点5.23
3.35:小规模纳税人的门店,选择开3%税率发票,公司需承担剩余税点3.35
null:非小规模纳税人门店,不需另外补税点
注:此字段仅针对华住管理的酒店资源
contactPosition String 联系人职位
contactName String 联系人姓名
contactMobile String 联系人手机
contactEmail String 联系人邮箱
contactFax String 联系人邮箱
isInternational Boolean 是否国际酒店
true:是
false:否

1、中国内地酒店(不含港澳台酒店)
2、非中国内地酒店(包含港澳台酒店)
isSupportHuazhu Boolean 是否支持华住会权益(返回true无需处理,返回false需提示客户此酒店不支持华住会权益)
hotelNotice String 酒店公告(比如酒店无餐厅,不支持早餐等信息)
overhaulTime String 大修时间
payAtHotelOnly Boolean 是否仅允许前台现付,仅针对非中国内地酒店(包含港澳台酒店)
true:是
false:否
businessTypeEnumSet List<String> 支持的业务模式
CASH:现付,例如 :到门店付
COMPANY_ADVANCE:企业预付,例如:支付宝立即扣、中航结立即扣
CREDIT:信用,例如:担保金月结,担保金离店T+N扣款
:会返回1-3个枚举,如果某企业要支持信用模式,那么此字段必须包含“CREDIT”
guaranteeModeEnumSet List<String> 支持的担保模式
NONE:无
FIRST_NIGHT:首晚担保
FULL_AMOUNT:全额担保
hotelRoomTypeList List<HotelRoomType> 酒店房型信息
hotelServiceList List<HotelService> 旧酒店设施信息(作废)
serviceList List<HotelServiceFacilityDTO> 新酒店设施信息(新对接用此字段)
hotelPhotoList List<HotelPhoto> 酒店照片
hotelConstructLevelList List<HotelConstructLevel> 酒店营建信息
hotelSpecialServiceList List<HotelSpecialServiceDTO> 客户拥有的单店特权
hotelBrandOuterLevelCode String 酒店档次Code
等级1:经济型
等级2:舒适型
等级3:高档型
等级4:豪华型
等级99:其他
hotelBrandOuterLevelName String 酒店档次名称
timeZone String 时区
timeOffset Int 时间偏移, 用于延退增加时间(如新疆地区)
whenBuilt String 建造年份( 举例:2011 )
HotelRoomType:
参数名 参数类型 备注
roomTypeCode String 房型Code
roomTypeName String 房型Name
roomTypeNameEn String 房型Name英文
roomNum Int 房间数量
summary String 房间描述
hotelArea Int 最大面积
minRoomArea Int 最小面积
floorPlace String 楼层
bedType String 床型
床型枚举:单人房、大床房、特大床房、双床房、三床房、多床房

详细解释:
床数量=1且床宽<1.5m,为"单人房"
床数量=1且1.5m<床宽<1.8m,为"大床房"
床数量=1且床宽≥1.8m,为"特大床房"
床数量=2,为"双床房"
床数量=3,为"三床房"
床数量>3,为"多床房"
若某个房型有多个床宽信息,则可通过bedWidth字段查看床宽信息。
bedWidth String 床宽
返回值:“2张2*1.8米床”
isADSL String 是否可宽带上网
isADSLWifi String 是否客房WIFI覆盖
isHasWindow String 是否有窗
有窗、部分有窗、无窗、无窗
isCanAddBed String 能否加床
hasSmokeFree String 无烟
maxCheckInPeoNum Int 最多入住人数
roomTypePhotoUrl String 房型图片URL
isHasWindowNewDesc String 返回示例:
返回1:“窗户可打开,且窗外是户外开放环境”
返回2:“部分房间窗户为内景窗”
返回3:“内景窗,位于走廊或过道”
返回4:“封闭窗,不可打开”
HotelServiceFacilityDTO :

酒店设施分类

参数名 参数类型 备注
typeName String 分类名称
typeCode String 分类code
typeIcon String 分类图标
itemList List<HotelServiceFacilityItemDTO> 服务设施集合
HotelServiceFacilityItemDTO :
参数名 参数类型 备注
serviceCode String 设施code
serviceName String 设施名称
icon String 图标
iconUrl String 图标Url
cornerIcon String 角标
subList List<HotelServiceFacilitySubItemDTO> 多套设施
HotelServiceFacilitySubItemDTO :
参数名 参数类型 备注
pictureList List<String> 图片集合
describe String 描述
subName String 子名称
morePropList List<HotelServiceFacilityItemMorePropDTO> 更多信息
HotelServiceFacilityItemMorePropDTO :
参数名 参数类型 备注
name String 字段名称
value String 字段值
valueUnit String 设施单位
HotelService :
参数名 参数类型 备注
childClassCode Int 设施Code
childClassName String 设施Name
childClassNameDesc String 设施描述
childClassType String 设施类型
1:综合设施
2:服务项目
3:客房设施
4:餐饮设施
5:娱乐设施
isInside Bool 设施在室内还是室外
isFree Bool 设施是否免费
HotelPhoto:
参数名 参数类型 备注 备注2
roomTypeCode String 房型Code 酒店外部照片 ChildClassCode= 0 &RoomTypeCode = "" 酒店内部照片 ChildClassCode!= 0 & RoomTypeCode = "" 房型照片 RoomTypeCode = 对应房型Code
childClassCode Int 设施Code
roomName String 场所名称
roomDesc String 场所描述 门头照、形象照-大、形象照-小、精选图片、地图、房型照、其他(公共区域、综合、服务、客房、餐饮、娱乐) 酒店列表页面建议展示“门头照”
photoURL List<String> 图片URL(多个)
HotelConstructLevel:
参数名 参数类型 备注
constructLevelNo String 品牌版本号
constructLevelName String 品牌版本名称
HotelSpecialServiceDTO:

说明:门店或者品牌愿意给高等级客户提供增值服务,如免费接驳,免费洗衣,欢迎水果,下午茶等,该对象提供输出门店给到指定客户服务标签

参数名 参数类型 备注
serviceId String 单店特权Id
serviceName String 单店特权名称
startTime Date 单店特权开始时间
endTime Date 单店特权结束时间
useRules String 使用规则
weekDisableDays String 每周禁用日 格式0101010,从周一开始,0:不禁用,1:禁用
disableDateList List<DisableDateDTO> 禁用日期列表
serviceBookerIdList List<String> 1、直连公司忽略此字段
2、TMC公司按照查询到的托管公司卡号展示给对应的托管公司
DisableDateDTO:
参数名 参数类型 备注
startTime Date 禁用开始时间
endTime Date 禁用结束时间

设施类型:

childClassType 设施类型 说明 childClassCode 设施Code 说明 childClassCode 设施Code 说明
1 综合设施 1 前台保险箱 203 微烤箱
1 综合设施 10 POS机 204 电磁炉
1 综合设施 113 Niiice café 205 洗烘一体机
1 综合设施 13 大厅上网 206 智能马桶
1 综合设施 15 商务休息区 207 胶囊咖啡机
1 综合设施 16 传真打印 21 外币兑换
1 综合设施 17 复印 22 邮政服务
1 综合设施 18 商品销售 3 会议室
1 综合设施 19 免费咖啡饮料 5 停车场
1 综合设施 20 自动取款机 6 大堂wifi覆盖
1 综合设施 202 开放式厨房 8 餐厅
2 服务项目 200 同城行李寄送 25 行李寄存
2 服务项目 23 自助洗衣 26 机场/火车站接送
2 服务项目 24 叫醒服务 7 客衣送洗服务
3 客房设施 100 手机开门 34 电水壶
3 客房设施 107 浴缸 35 免费瓶装水
3 客房设施 108 冰箱 36 拖鞋
3 客房设施 109 音响 37 免费咖啡包
3 客房设施 110 保险箱 38 免费茶包
3 客房设施 111 Mini Bar 39 免费文具用品
3 客房设施 112 按摩椅 4 宽带上网接口
3 客房设施 12 电视 40 时钟/闹钟
3 客房设施 2 电吹风 41 衣柜
3 客房设施 201 空气净化器 42 备用床具
3 客房设施 27 独立卫生间 43 浴室化妆放大镜
3 客房设施 28 24小时热水 44 雨伞
3 客房设施 29 分体式(中央)空调 45 收费电影
3 客房设施 30 免费洗漱用品 46 欢迎礼品
3 客房设施 31 国内长途电话 47 110V电压插座
3 客房设施 32 国际长途电话 48 针线包
3 客房设施 33 有线/卫星电视接收 9 客房Wifi覆盖
4 餐饮设施 49 中餐厅 55 茶室
4 餐饮设施 50 西餐厅 56 烧烤
4 餐饮设施 51 日式餐厅 57 礼品廊
4 餐饮设施 52 大堂吧 58 电梯/滚梯
4 餐饮设施 53 酒吧 59 微波炉
4 餐饮设施 54 咖啡厅 60 信用卡结算服务
5 娱乐设施 61 免费网吧 69 迷你影院
5 娱乐设施 62 免费台球 70 自行车出租
5 娱乐设施 63 免费桌上足球 71 健身房
5 娱乐设施 64 免费电玩 72 SPA
5 娱乐设施 65 免费桌游 73 游泳池
5 娱乐设施 66 酒吧 74 棋牌室
5 娱乐设施 67 咖啡厅 75 按摩室
5 娱乐设施 68 书吧 76 舞厅

返回示例:


{
"code": "200",
"message": "成功!",
"content": [
{
"hotelId": "2000014",
"hotelName": "汉庭上海人民广场酒店",
"hotelNameEn": "Hanting Hotel (Shanghai People's Square)",
"brandCode": 2,
"brandId": "0002",
"brandName": "汉庭",
"hotelAddress": "延安东路343号(8号线大世界站1号口出后沿西藏南路往北走至延安高架路右转直走350米)",
"hotelAddressEn": "No.343 Yan'an East Road, Shanghai, 200021, China",
"hotelAddressTip": "地铁8号线大世界站1号口,沿延安东路向东300米即达;距云南路美食街步行300米;南京路步行街丶人民广场丶外滩丶城隍庙丶蜡像馆15分钟;8号线4站直达",
"hotelWordIntroduce": "汉庭酒店上海人民广场店位于上海有灵魂之区美称的黄浦区。酒店距离地铁8号线大世界站步行仅8分钟,距离地铁1,2号线人民广场站步行仅10分钟,距离地铁10号线南京东路站步行仅10分钟。地铁2号线直连上海两大机场,至虹桥机场只需40分钟,浦东国际机场1小时。酒店位于上海著名的南京东路步行街和淮海路之间,距两地步行均只需要10分钟。外滩,豫园(城隍庙),人民广场,新天地,上海博物馆,上海大剧院近在咫尺,步行时间仅需15分钟。乘坐地铁1号线5站路至徐家汇站下便是繁华的徐家汇商圈,乘坐地铁2号线1站路至南京西路站下便是著名的梅龙镇广场(美国领事馆)和恒隆广场。酒店交通便捷,周边超市,餐饮,娱乐设施一应俱全,环境舒适典雅,是商务旅游人士住宿的明智之选。",
"hotelTelephone": "021-63288811",
"hotelFax": "63232217",
"hotelClassification": null,
"operateScope": "内宾",
"scaleOfTaxpayer": "GENERAL",
"provinceNo": "310000",
"provinceName": "上海市",
"cityNo": "310100",
"cityName": "上海市",
"cityArea": null,
"countyName": "青浦",
"countyNo": "310101",
"nationName": "中国",
"nationNo": "CN",
"longitude": "121.481460034847260",
"latitude": "31.230006850768724",
"zipCode": "200001",
"isOpening": true,
"openingDate": "2012-12-31 00:00:00",
"trialOpeningDate": "2012-12-31 00:00:00",
"roomNum": 169,
"contactPosition": null,
"contactName": null,
"contactMobile": "",
"contactEmail": "",
"contactFax": "63232217",
"businessTypeEnumSet": [
"CASH",
"COMPANY_ADVANCE",
"CREDIT"
],
"guaranteeModeEnumSet": [
"NONE",
"FIRST_NIGHT",
"FULL_AMOUNT"
],
"hotelRoomTypeList": [
{
"roomTypeCode": "DR1",
"roomTypeName": "大床房",
"roomTypeNameEn": "",
"roomNum": 14,
"summary": "",
"hotelArea": 17,
"floorPlace": "4-7",
"bedType": "大床房",
"bedWidth": "2张2*1.8米床",
"isADSL": "",
"isADSLWifi": "客房wifi",
"isHasWindow": "部分有窗",
"isCanAddBed": "不可加床",
"hasSmokeFree": "无烟处理",
"maxCheckInPeoNum": 2,
"roomTypePhotoUrl": "https://img.huazhu.com/cos/mdm/HN02000710/b0619944-4e8e-4129-b4f4-54b4bcb560a8/2021-09-10-16-56-03-699.jpg"
},
{
"roomTypeCode": "TR1",
"roomTypeName": "双床房",
"roomTypeNameEn": "",
"roomNum": 43,
"summary": "",
"hotelArea": 20,
"floorPlace": "1-7",
"bedType": "双床房",
"bedWidth": "2张2*1.8米床",
"isADSL": "",
"isADSLWifi": "客房wifi(部分)",
"isHasWindow": "部分有窗",
"isCanAddBed": "不可加床",
"hasSmokeFree": "无烟处理",
"maxCheckInPeoNum": 3,
"roomTypePhotoUrl": "https://img.huazhu.com/cos/mdm/HN02000710/4032f3d9-1021-48c8-b57e-6b5eae36bc10/2021-09-10-17-02-52-996.jpg"
}
],
"hotelServiceList": [
{
"childClassCode": 17,
"childClassName": "复印",
"childClassNameDesc": "",
"childClassType": "1",
"isInside": null,
"isFree": null
},
{
"childClassCode": 9,
"childClassName": "客房Wifi覆盖",
"childClassNameDesc": "",
"childClassType": "3",
"isInside": null,
"isFree": null
},
{
"childClassCode": 2,
"childClassName": "电吹风",
"childClassNameDesc": "",
"childClassType": "3",
"isInside": null,
"isFree": null
},
{
"childClassCode": 13,
"childClassName": "大厅上网",
"childClassNameDesc": "",
"childClassType": "1",
"isInside": null,
"isFree": null
}
],
"hotelPhotoList": [
{
"roomTypeCode": "DR1",
"childClassCode": 0,
"roomName": null,
"roomDesc": "房型照",
"photoURL": [
"https://img.huazhu.com/cos/mdm/HN02000710/b0619944-4e8e-4129-b4f4-54b4bcb560a8/2021-09-10-16-56-03-699.jpg",
"https://img.huazhu.com/cos/mdm/HN02000710/a9104687-333c-4930-92ec-930c95936876/2021-09-10-16-56-26-529.jpg"
]
},
{
"roomTypeCode": "",
"childClassCode": 8,
"roomName": null,
"roomDesc": "餐厅",
"photoURL": [
"https://img.huazhu.com/cos/mdm/HN02000710/bc3d9506-8f99-44ba-aebb-81a166b42b59/2021-05-23-19-01-35-525.jpg"
]
},
{
"roomTypeCode": "",
"childClassCode": 23,
"roomName": null,
"roomDesc": "洗衣房",
"photoURL": [
"http://img.huazhu.com/widget/mdm/HN02000710/24da0ac4-a536-4844-9dc7-d6862eaf06af/2019-10-10-11-59-09-321.jpeg"
]
}
],
"serviceList": [
{
"typeName": "公共区域",
"typeCode": "CONF_GGQY",
"typeIcon": "",
"itemList": [
{
"serviceCode": "WFbiaoq1ian01",
"serviceName": "01重点设施wf",
"icon": "",
"iconUrl": "https://test-res-pub.huazhu.com/hdata_hcube/1883f1622af3eed67f3ee0a3a6235247.jpeg",
"cornerIcon": "https://test-res-pub.huazhu.com/hdata_hcube/b34eecc7a0efbd33e727666db0a31d0a.png",
"subList": [
{
"pictureList": [
"https://test-res-pub.huazhu.com/hdata_hcube/1d485db2525152a6e708da25ddd18228.jpg",
"https://test-res-pub.huazhu.com/hdata_hcube/eb5132a73fdb9c73b3df70770997ec0c.jpg"
],
"describe": "补充说明补充说明补充说明补充说明补充说明补充说明补充说明",
"subName": "设施名称1",
"morePropList": [
{
"name": "会议室桌长",
"value": "11",
"valueUnit": "米"
},
{
"name": "会议室楼层",
"value": "11",
"valueUnit": "层"
}
]
},
{
"pictureList": [],
"describe": "",
"subName": "设施名称2",
"morePropList": [
{
"name": "会议室桌长",
"value": "8.8",
"valueUnit": "米"
},
{
"name": "会议室楼层",
"value": "8",
"valueUnit": "层"
}
]
}
]
}
]
}
],
"hotelConstructLevelList": [
{
"constructLevelNo": "0230",
"constructLevelName": null
}
]
}
],
"echoToken": "8715e67b-e0dc-477b-9321-3a783233018a"
}

图片放缩方法

接口会返回图片的url,图片尺寸很大。为了加快前端加载速度,华住提供图片放缩的功能,客户可以根据需要在我们提供的长款尺寸列表中选择。使用方法如下:

原图地址+可选尺寸+原图扩展名,如:示例图片

系统支持的‘宽-高’尺寸
'16-16', '32-15', '88-88',
'100-75', '110-80', '115-100', '120-120', '120-90', '127-107', '140-109', '150-128', '175-130', '190-160',
'200-150', '230-120', '250-220', '250-240', '265-265', '288-114',
'320-250', '320-100', '346-260',
'400-300', '480-360', '480-180',
'540-468',
'600-249', '640-480', '640-200', '640-500', '640-240', '660-265', '675-375', '675-375',
'795-450',
'800-600', '800-250',
'960-360',
'1002-185', '1024-768',
'3000-2250'

获取酒店房量房价

(获取酒店房量房价TMC专用接口请点击)

说明:酒店房价落地接口,直连企业通过该接口,每天可全量同步酒店房价数据落地, 仅支持一次查询一个酒店,一次最大支持查询1家酒店31天。

注:系统上线后,首次需落地90天房价信息,之后每日落地第91天房价信息

房价房量接口接入方案

  • 1、接入方每天不超过三次拉取全量房价房量,每次间隔建议6小时以上
  • 2、接入方每次拉取全量房价房量,时间范围是1-90天
  • 3、接入方使用验单接口发现房价房量变更,及时拉一次当前酒店的房价房量
  • 4、接入方可以接入房价房量变更通知接口,若有房量房价变更,华住商旅系统会及时通知

限流整改措施

  • 1、若监测到接入方收到整改通知后,依然存在频繁拉取房价房量,会做一定限流甚至关停IP处理

接口地址:/hotel/getRoomPrice

请求方式:POST

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
cardId String 公司卡号 VCENTCRM0002220001
cardPassWord String 公司卡密码 TestPassword
memberLevelList List<String> 会员级别列表
企业会员
K:企业铂金 85含双早
C:企业金卡 88含双早
J: 企业玫瑰金88不含早
U: 92含双早
D: 企业银卡92不含早
O: 95含双早
T: 95不含早
个人会员
I:个人铂金会85含双早
B:个人金会员88含单早
X:个人玫瑰员88不含早
A:个人银会员92不含早
P:个人星会员98不含早
如果不填则默认以公司卡号的会员等级去获取
注:
(1)TMC客户必填(根据自己实际需要的等级传参)
(2)直连可不传,不传时,默认只返回当前cardId对应等级的企业价格
checkInDate Date 入住日期 2020-03-06
checkOutDate Date 离店日期 2020-03-07
hotelIdList List<String> 酒店列表 一次最大支持查询1家酒店 ["2000505"]
roomTypeList List<String> 房型列表 不传默认取所有房型 ["DR"]
adultsPerRoom Integer 一间房的入住人数,用于获取多人价(举例:一人价、两人价等);
入住人数:1-5,目前不支持大于5人(不涉及儿童数量,价格只根据成人数量计算,举例:两大一小,数量传2)
不传值,默认是2
注:针对非中国内地酒店(包含港澳台酒店)使用

请求示例:

{
"cardId": "VCENTCRM0002220001",
"cardPassWord": " TestPassword",
"memberLevelList": ["K","C"],
"checkInDate": "2020-05-20",
"checkOutDate": "2020-05-21",
"hotelIdList": [
"2000505"
]
}
返回参数说明:
参数名 参数类型 备注
code code 状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
message String 响应消息
content List<RoomDTO> 房量房价信息
RoomDTO:
参数名 参数类型 备注
hotelId String 酒店Id
roomRateList List<RoomRateDTO> 房价码列表
RoomRateDTO:
参数名 参数类型 备注
rateCode String 房价码ID
注意事项:
1、在每个企业中单个酒店的同一个房价码ID会存在不同房型下面,同一个房型下不会出现重复房价码ID。
rateCodeName String 房价码名称
rateCodeDescription String 房价码描述
checkInTypeList String 入住类型
NONE 不限制
HOUR 按小时
DAY 按天
企业商旅目前只支持按天入住(DAY)
activityId String 活动ID
注意事项:
1、活动ID不为空即为活动房价码
2、连住活动房价码存在提前离店收取罚金
3、判断连住优惠活动规则:活动ID不为空,预订政策中minCheckInUnit天数大于1。
tagList List<String> 1、门市价(RackRate):没有任何折扣的价格,一般性不输出;
2、会员价(Base):基于企业卡等级折扣的价格,比如企业卡等级是K,就是85折价格;
3、固定价(RFPNegotiation):某企业与某酒店的某个或多个房型签订的价格,比如A企业与A酒店大床房签订一段时间200元的价格;
4、活动价(Standard):一般性有两种折扣模式:一种是折上折模式,比如提前1天预订9折,就是在会员价基础上在打9折;一种是固定活动价格,比如固定400元;活动价上线前需要运营配置指定的企业;可判断activityId是否不为空,若不为空就是活动价。
5、单店协议价(Negotiation):某酒店与某企业签订的一种固定协议价格
priceDailyList List<PriceDailyDTO> 每日价格
注意事项:
1、每日的总对总结算金额是按照每日税后价格计算的;
2、小规模纳税人每日总对总价格是每日税后价格*1.0523,保留两位小数,四舍五入。
roomCountDailyList List<RoomCountDailyDTO> 每日房量
房价码返回为空的情况
1、此酒店已下架此房价码
2、没有匹配房价码的售卖规则(如连住时间、售卖时间等)
注意事项:一般性判断availableCount数量即可;若不可预定或者没房量,此字段都是0。
memberAndBreakFastList List<BreakFastDTO> 会员和早餐 同时查询多个会员等级的房价码时会存在多个会员等级的早餐,请根据会员等级来匹配早餐数量
memberLevels List<String> 会员等级
bookInfo BookDTO 预订政策
注意事项:通过预订政策判断活动房价码可预订时间范围,可入住时间范围以及是否需满足连住要求等。
举例:活连住动(活动ID13135),新春优惠-提前1天连住2晚折上9折
"minBookUnit":1---提前一天预订
"minCheckInUnit":2---连续预订两晚
"beginBookDate":"2024-01-31",--开始预订日期
"endBookDate":"2024-02-28"-----结束预订日期
"firstCheckInDate":"2024-02-01",-----开始入住日期
lastCheckOutDate":"2024-02-29"-----结束入住日期
条件今天是2月27日
场景1:2月27日-03月02日;不满足提前一天预订的条件,不满足3月1日入住条件,不能支持预订
场景2:2月28日-03月02日;3月1日的入住日期不满足在开始入住日期和结束入住日期范围内,不能支持预订
场景3:2月28日-03月01日;满足提前一天预订,2月28日和2月29日均在入住日期范围内,此场景可以支持预订
checkInInfo CheckInDTO 入住政策
cancelInfo CancelDTO 取消政策
(取消时间是代表酒店的当地时间)(若是海外酒店需要换算成北京时间,可以根据酒店详情中的时区换算)。
otherInfo OtherDTO 其他政策
rfpCardIdList List<String> 对于企业直连客户,房价码输出即可使用(此字段供TMC使用,直连客户可忽略)
activityControlInfo ActivityControl 对于企业直连客户,房价码输出即可使用(此字段供TMC使用,直连客户可忽略)
rateCodeControl RateCodeControl 对于企业直连客户,房价码输出即可使用(此字段供TMC使用,直连客户可忽略)

使用华住商旅接口"/hotel/getRoomPrice"需要特别注意事项。

  1. 如果"memberLevelList"传入参数是多个等级的方式,出参时返回的房价码基于包含的不同数量早餐包需要做程序处理。 华住商旅目前会返回两种形式的房价码早餐包,字段是 "memberAndBreakFastList",如下:
  • a、返回一个房价码包含一个等级的早餐包 ,字段"memberAndBreakFastList",主要房价码是"企业会员价","企业会员折上折活动价";
  • b、返回一个房价码包含多个等级的早餐包 ,字段"memberAndBreakFastList",主要是房价码是"门市固定折扣价","RFP价格"; 如果遇到房价码中包含多个等级的早餐包,需要按照不同等级匹配一次房价码中的早餐包即可。
  1. 如果"memberLevelList"传入参数是一个等级的方式,出参时返回的房价码仅包含一个等级的早餐包,不需要二次处理。

第一、afterTaxPrice和companyToGroupPrice字段解释

  1. afterTaxPrice为含税价
  2. companyToGroupPrice为含税价+税点差额
    无论对客展示是显示afterTaxPrice还是显示companyToGroupPrice,验价接口和下单接口统一传afterTaxPrice。(见订单相关接口模式)

第二、“税点差额”解释

公司总对总订单情况中,由于存在小规模纳税人的酒店,导致华住总部开票和酒店开票之间存在税点差额,需要补额外税点费用。 税点差额计算方法:afterTaxPrice*0.0523(保留两位小数,第三位小数四舍五入) 因此业务上需判断税点差额由客人承担还是公司承担

  1. 由客人承担时并且订单是总对总订单,则将companyToGroupPrice显示给客人;
  2. 由公司承担时并且订单是总对总订单,则将afterTaxPrice显示给客人;
    特别地,由于现付订单(非总对总订单)从门店直接拿票,无需要补额外税点费用。因此现付订单前端显示afterTaxPrice即可。
PriceDailyDTO:
参数名参数类型备注
roomTypeIdString房型
bizDateDate营业日
currencyCodeString币种
CNY:人民币
EUR:Euro
AED:United Arab Emirates Dirham
AFN:Afghani
AMD:Armenian Dram
ANG:Netherlands Antillean Guilder
AOA:Kwanza
ARS:Argentine Peso
AZN:Azerbaijan Manat
BAM:Convertible Mark
BBD:Barbados Dollar
BDT:Taka
BGN:Bulgarian Lev
BHD:Bahraini Dinar
BIF:Burundi Franc
CHF:Swiss Franc
DKK:Danish Crones
DZD:Algerian Dinar
EGP:Egyptian Pound
HUF:Hungarian Forint
OMR:Omani Rial
QAR:Qatari Riyal
SAR:Saudi Riyal
SEK:Swedish Crones
TND:Tunisian Dinar
USD:United States Dollar
XCD:East Caribbean Dollar
GBP:Pound Sterling
marketPriceBigDecimal门市价
marketCNYPriceBigDecimal人民币门市价(含税价)
beforeTaxPriceBigDecimal税前价(净价)
beforeTaxCNYPriceBigDecimal人民币税前价(净价)
afterTaxPriceBigDecimal税后价(含税价)
afterTaxCNYPriceBigDecimal人民币税后价(含税价)
multiPersonInt一人价、两人价
companyToGroupPriceBigDecimal公司总对总价(含税价+税点差价)
companyToGroupCNYPriceBigDecimal人民币公司总对总价(含税价+税点差价)
isForbiddenBool是否禁用
isBlackBool房型是否黑名单

房价码返回为空的情况

  1. 此酒店已下架此房价码
  2. 没有匹配房价码的售卖规则(如连住时间、售卖时间等)
RoomCountDailyDTO:
参数名参数类型备注
roomTypeIdString房型
bizDateDate营业日
retainCountInt保留房量
shareCountInt共享房量
availableCountInt可售房量
isForbiddenBool是否禁用
isBlackBool房型是否黑名单
BreakFastDTO:
参数名参数类型备注
companySrcString公司来源
HUAZHU 华住
ACCOR 雅高
memberLevelString会员级别
breakfastCountIntbreakfastCount是指入住人的最大早餐份数
举例说明:
1、中国内地酒店(不含港澳台酒店):
a、若返回breakfastCount=1,则入住人只有1份早餐
b、若返回breakfastCount=2,则入住人最多2份早餐
2、非中国内地酒店(包含港澳台酒店):
a、预订1人价格,若返回breakfastCount=1,则入住人只有1份早餐
b、预订1人价格,若返回breakfastCount=2,则入住人只有1份早餐
c、预订2人价格,若返回breakfastCount=1,则入住人只有1份早餐
d、预订2人价格,若返回breakfastCount=2,则入住人最多2份早餐
BookDTO:
参数名参数类型备注
guaranteeModeString支持的担保模式
NONE:无
FIRST_NIGHT:首晚担保
FULL_AMOUNT:全额担保
1、到付和预付区别
a、guaranteeMode是NONE,则支持到店付或者预付
b、guaranteeMode是FIRST_NIGHT或者FULL_AMOUNT,则必须预付
2、担保模式使用
a、企业协议价按照企业卡的担保模式(运营开卡时确认的担保模式)
b活动价按照房价码担保模式,判断房量房价接口中的BookDTO中的guaranteeMode(担保模式)(房量房价接口中activityId不为空就是活动房价码;活动价下单时,验价及下单接口必须要传activityId,否则默认为会员价)
3、现付客户不能使用活动价注意事项
由于活动价的担保模式都是需预付,导致因公现付或者因私订单,下单后会在5分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
beginBookDateDate开始预订日期
endBookDateDate结束预订日期
bookUnitString提前预订单位
NONE 不限制
HOUR 按小时
DAY 按天
minBookUnitInt最小提前多久预订,如果bookUnit是小时就是从24点倒推
maxBookUnitInt最大提前多久预订
firstCheckInDateDate开始入住日期
lastCheckOutDateDate结束入住日期
checkInUnitString连续入住单位
NONE 不限制
HOUR 按小时
DAY 按天
minCheckInUnitInt最小连续入住
maxCheckInUnitInt最大连续入住
bookDescString预订说明

注:
仅支持当日预订
minBookUnit(最小提前预订):等于0
maxBookUnit(最大提前预订):等于0

CheckInDTO:
参数名 参数类型 备注
isOneSelf Bool 是否必须本人本卡
checkInDesc String 入住说明
CancelDTO:
参数名 参数类型 备注
isCanCancel Bool 是否可取消
lastCancelDay Int 最晚取消天
"lastCancelDay": 0,表示当天
"lastCancelDay": 1,入住日前一天
"lastCancelDay": 2,入住日前两天
以此类推(在允许时间范围内可以支持免费取消)
lastCancelTime String 预付最晚取消时间(当天时间)
若是海外酒店则是当地时间,可根据酒店详情中时区timeZone字段换算。
cancelDesc String 取消说明
OtherDTO:
参数名 参数类型 备注
isPromotionCodeCanBook Bool 是否必须使用促销券码才能预订
isCanUseCoupon Bool 是否支持优惠券
otherDesclastCancelTime String 其他说明
ActivityControl:
参数名 参数类型 备注
activityId code 活动ID
controlType ControlType 管控类型
BLACK 黑名单
WHITE 白名单

黑白名单不会同时返回
controlList List<String> 管控列表 存储管控的卡号
RateCodeControl:
参数名 参数类型 备注
controlType ControlType 管控类型
WHITE 白名单
controlList List<String> 管控列表 存储管控的卡号

返回示例:

{
"code": "200",
"message": "成功!",
"content": [
{
"hotelId": "2000014",
"roomRateList": [
{
"rateCode": "RFP-558-3-2",
"rateCodeName": "企业尊享价",
"rateCodeDescription": null,
"checkInTypeList": [
"DAY"
],
"activityId": null,
"tagList": [
"RFPContract"
],
"priceDailyList": [
{
"roomTypeId": "TR1",
"bizDate": "2022-12-01",
"currencyCode": "CNY",
"marketPrice": 549,
"beforeTaxPrice": 558,
"afterTaxPrice": 558,
"multiPerson": null,
"companyToGroupPrice": 558,
"marketCNYPrice": 549,
"beforeTaxCNYPrice": 558,
"afterTaxCNYPrice": 558,
"companyToGroupCNYPrice": 558,
"isForbidden": false,
"isBlack": false
}
],
"roomCountDailyList": [
{
"roomTypeId": "TR1",
"bizDate": "2022-12-01",
"retainCount": 0,
"shareCount": 22,
"availableCount": 22,
"isForbidden": false,
"isBlack": false
}
],
"memberAndBreakFastList": [
{
"companySrc": "HUAZHU",
"memberLevel": "C",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "D",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "T",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "U",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "J",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "K",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "L",
"breakfastCount": 2,
"breakFastExt": null
},
{
"companySrc": "HUAZHU",
"memberLevel": "O",
"breakfastCount": 2,
"breakFastExt": null
}
],
"memberLevels": [
"C",
"D",
"J",
"K",
"L",
"O",
"T",
"U"
],
"bookInfo": {
"guaranteeMode": "NONE",
"beginBookDate": "2021-11-22",
"endBookDate": "2023-12-31",
"bookUnit": "DAY",
"minBookUnit": 0,
"maxBookUnit": 999,
"firstCheckInDate": "2021-11-22",
"lastCheckOutDate": "2023-12-31",
"checkInUnit": "DAY",
"minCheckInUnit": 1,
"maxCheckInUnit": 9999,
"bookDesc": "预订说明:担保方式:NONE,预订日期范围(开始日期:2021-11-22,结束日期:2023-12-31),提前预订单位:DAY,最小提前预订:0 (0表示无限制),最大提交预订:999 (9999表示无限制),最早入住日期:2021-11-22,最晚离店日期:2023-12-31,连续入住单位:DAY,最小连续入住1 (0表示无限制),最大连续入住:9999 (9999表示无限制)"
},
"checkInInfo": {
"isOneSelf": false,
"checkInDesc": "入住说明:是否必须本人本卡:否"
},
"cancelInfo": {
"isCanCancel": true,
"lastCancelDay": 0,
"lastCancelTime": "18:00:00",
"cancelDesc": "取消说明:是否可取消:是,最晚取消天:0最晚取消时间:18:00:00"
},
"otherInfo": {
"isPromotionCodeCanBook": false,
"isCanUseCoupon": false,
"otherDesc": "其他说明:是否必须使用促销券码才能预订:否,是否支持优惠券:否,"
},
"rfpCardIdList": [
"VCENTCRM0002224829"
],
"RateCodeControl":{
"controlType":"WHITE",
"controlList":[
"VCENTCRM0002221024","VCENTCRM0002221025"
]
},
"activityControlInfo": null
}
]
}
],
"echoToken": "34ca3ea1-8864-4ff1-b229-bd7cd65a7bb9"
}

酒店房价变更消息推送(回调接口)

说明:

B2B渠道酒店房价产生变化后,会及时将房价变化的酒店信息推送给企业,企业接收到酒店信息后,可通过获取房价接口,及时更新房价信息,确保房价信息及时、准确。

注:接口仅用于接收数据,不要做任何逻辑处理,另写一个服务去处理数据,响应时长不能超过3s,随着接口升级有可能会增加字段,需要兼容

对接房价变化消息推送,企业需提供通知接口,通知接口标准参数定义见下:

请求方式:POST

HttpHeaders增加参数验证:

time:取系统当前时间,格式:yyyy-MM-dd HH:mm:ss

sign:客户的Secret + time,MD5加密

客户接收数据时,自行验签:拿到请求头中的time和自己公司的Secret,MD5加密,生成sign1,比较sign和sign1

sign1 = MD5Utils.encodeMD5(String.format("%s%s", 客户的Secret, time));

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
modifyTime Date 修改时间 2019-09-20 18:35:32
hotelId String 酒店ID 2000011
roomTypeId String 房型 PK1
注:无值时代表全部房型
startDate Date 开始日期 2020-01-20
endDate Date 结束日期 2020-01-25
flagInfo String 标识(活动ID)
请求参数示例
{
"modifyTime":"2023-02-27 17:35:32",
"hotelId":"9000730",
"roomTypeId":"PK1",
"startDate":"2023-02-27",
"endDate":"2023-02-28"
}
返回参数说明
参数名 参数类型 备注
code code 响应码 200 成功,其他为失败
message String 响应消息
返回示例
{
"code": "200",
"message": "成功!"
}

酒店房量预警消息推送(回调接口)

说明:

B2B渠道酒店剩余房量<=3时,会及时将房量预警的酒店信息推送给企业,企业接收到酒店信息后,可通过获取房量接口,及时更新房量信息,确保房量信息及时、准确。

注:接口仅用于接收数据,不要做任何逻辑处理,另写一个服务去处理数据,响应时长不能超过3s,随着接口升级有可能会增加字段,需要兼容

对接房量预警消息推送,企业需提供通知接口,通知接口标准参数定义见下:

请求方式:POST

HttpHeaders增加参数验证:

time:取系统当前时间,格式:yyyy-MM-dd HH:mm:ss

sign:客户的Secret + time,MD5加密

客户接收数据时,自行验签:拿到请求头中的time和自己公司的Secret,MD5加密,生成sign1,比较sign和sign1

sign1 = MD5Utils.encodeMD5(String.format("%s%s", 客户的Secret, time));

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
modifyTime Date 修改时间 2019-09-20 18:35:32
hotelId String 酒店ID 2000011
roomTypeId String 房型 PK1
注:无值时代表全部房型
startDate Date 开始日期 2020-01-20
endDate Date 结束日期 2020-01-25
flagInfo String 标识(活动ID)
请求参数示例
{
"modifyTime": "2019-09-20 18:35:32",
"hotelId": "2000011",
"roomTypeId": "PK1",
"startDate": "2020-01-20",
"endDate": "2020-01-25",
"flagInfo": ""
}
返回参数说明
参数名 参数类型 备注
code code 响应码 200 成功,其他为失败
message String 响应消息

客户获取行政区

说明:根据公司卡号信息及行政区代码,查询此行政区下的子行政区

注:客户根据自身系统需要,自行评估是否需要对接

接口地址:region/getRegionInfo

请求方式:POST

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
cardId String 公司卡号 VCENTCRM0002220001
cardPassWord String 公司卡密码 TestPassword
regionCode String 行政区代码 01或者02
注:01是顶级行政区代码,代表中国,02代表海外
请求示例:
{
"cardId": "VCENTCRM0002220001",
"cardPassWord": "TestPassword",
"regionCode": "TW1000"
}
返回参数说明:
参数名 参数类型 备注
code code 状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
message String 响应消息
content RegionDTO 行政区信息
RegionDTO:
参数名 参数类型 备注
regionCode String 行政区Code
regionName String 行政区名
regionNameEn String 行政区英文名
regionZhSpell String 行政区全拼
regionZhShortSpell String 行政区简拼
regionLevel String 行政区级别
ROOT:根
COUNTRY:国家
CITY:城市
DISTRICT:区县
isDomestic Bool 是否国内城市
regionSortIndex Int 行政区下标
isHot Bool 是否热点行政区
groupCode String 所属组(首字母大写)
lat String 行政区经度
lng String 行政区纬度
childNodes List<RegionDTO> 子行政区
返回示例:
{
"code": "200",
"message": "成功!",
"content": {
"regionCode": "TW1000",
"regionName": "台北",
"regionNameEn": "TAIBEISHI",
"regionZhSpell": "TAIBEISHI",
"regionZhShortSpell": "TBS",
"regionLevel": "CITY",
"isDomestic": true,
"regionSortIndex": 890,
"isHot": false,
"groupCode": "T",
"lat": "0.0",
"lng": "0.0",
"childNodes": [
{
"regionCode": "TW1008",
"regionName": "大安区",
"regionNameEn": "DAANQU",
"regionZhSpell": "DAANQU",
"regionZhShortSpell": "DAQ",
"regionLevel": "DISTRICT",
"isDomestic": true,
"regionSortIndex": 1152,
"isHot": false,
"groupCode": "D",
"lat": "0.0",
"lng": "0.0",
"childNodes": []
},
{
"regionCode": "TW1007",
"regionName": "松山区",
"regionNameEn": "SONGSHANQU",
"regionZhSpell": "SONGSHANQU",
"regionZhShortSpell": "SSQ",
"regionLevel": "DISTRICT",
"isDomestic": true,
"regionSortIndex": 1213,
"isHot": false,
"groupCode": "S",
"lat": "0.0",
"lng": "0.0",
"childNodes": []
},
{
"regionCode": "TW1006",
"regionName": "中山区",
"regionNameEn": "ZHONGSHANQU",
"regionZhSpell": "ZHONGSHANQU",
"regionZhShortSpell": "ZSQ",
"regionLevel": "DISTRICT",
"isDomestic": true,
"regionSortIndex": 1420,
"isHot": false,
"groupCode": "Z",
"lat": "0.0",
"lng": "0.0",
"childNodes": []
}
]
},
"echoToken": "c9063c70-baa4-494e-b7ee-1795fb465988"
}

获取活动价规则

说明:获取所有活动价及规则

接口地址:hotel/getActivityRuleList

请求方式:POST

请求参数说明:
参数名 参数类型 备注 是否必填 示例值
cardId String 公司卡号 VCENTCRM0002220001
cardPassWord String 公司卡密码 TestPassword
请求示例:
{
"cardId": "VCENTCRM0002220001",
"cardPassWord": "TestPassword"
}
返回参数说明:
参数名 参数类型 备注
code code 状态码 200 成功!
message String 响应消息
content List<ActivityRuleDTO> 活动规则信息
ActivityRuleDTO
参数名 参数类型 备注
activityId String 活动id
activityName String 活动名称
bookingStartDate String 预订开始日期 yyyy-MM-dd
bookingEndDate String 预订结束日期(包含) yyyy-MM-dd
bookingStartTime String 开始售卖时间 HH:mm
bookingEndTime String 结束售卖时间 HH:mm
bookingWeeklyControl String 预订周禁用日 首位指周日,1 可以用 0 禁用
bookingExcludeDateList List<String> 预订禁用日期
checkinStartDate String 入住开始日期 yyyy-MM-dd
checkinEndDate String 入住结束日期 yyyy-MM-dd
checkinWeeklyControl String 入住周禁用日 首位指周日,1 可以用 0 禁用
checkinExcludeDateList List<String> 入住禁用日期
minLos Integer 最小连住天数
maxLos Integer 最大连住天数
minAdvanceBooking Integer 最小提前预订天数
maxAdvanceBooking Integer 最大提前预订天数
cancelPolicyType String 取消规则设置类型
1000无法取消
1001自由取消
1002罚金取消
1003某时间段后不可取消
cancelPenaltySettings String 取消罚金设置类型
1000永久收取罚金
1001罚金按照设定时间收取
cancelBookingDay Integer 取消期天数 (
当cancelPolicyType为1002罚金取消且罚金按设定时间收取时
1003某时间段后不可取消时有效 )
cancelBookingTime String 取消期时间 HH:mm (
当cancelPolicyType为1002罚金取消且罚金按设定时间收取时
1003某时间段后不可取消时有效)
guaranteePolicyType String 担保规则类型
1000现付
1001担保
1002预付
holdReservationTime String 现付最晚保留时间 HH:mm (当guaranteePolicyType担保规则类型为1000现付时有效)
ratecode List<String> 房价码,调房价码接口查询
controlType String 管控类型 black 黑名单 white白名单
controlList List<String> 管控列表 存储管控的卡号
返回示例:
{
"code": "200",
"message": "成功!",
"content": [
{
"activityId": "310023",
"activityName": "测试白名单",
"bookingStartDate": "2021-12-21",
"bookingEndDate": "2023-12-31",
"bookingStartTime": "00:00",
"bookingEndTime": "23:59",
"bookingWeeklyControl": "1111111",
"bookingExcludeDateList": null,
"checkinStartDate": "2021-12-21",
"checkinEndDate": "2023-12-31",
"checkinWeeklyControl": "1111111",
"checkinExcludeDateList": null,
"minLos": 1,
"maxLos": 365,
"minAdvanceBooking": 0,
"maxAdvanceBooking": 365,
"cancelPolicyType": "1000",
"cancelPenaltySettings": null,
"cancelBookingDay": null,
"cancelBookingTime": null,
"guaranteePolicyType": "1002",
"holdReservationTime": null,
"rateCodeList": [
"310023-RACK",
"310023-Base-OCK-STD-NBF"
],
"controlType": "white",
"controlList": ["cardId1","cardId2"]
},
{
"activityId": "66777",
"activityName": "全渠道新促销测试",
"bookingStartDate": "2022-12-03",
"bookingEndDate": "2023-03-31",
"bookingStartTime": "00:00",
"bookingEndTime": "23:59",
"bookingWeeklyControl": "1111111",
"bookingExcludeDateList": null,
"checkinStartDate": "2022-12-03",
"checkinEndDate": "2023-03-31",
"checkinWeeklyControl": "1111111",
"checkinExcludeDateList": null,
"minLos": 1,
"maxLos": 365,
"minAdvanceBooking": 0,
"maxAdvanceBooking": 365,
"cancelPolicyType": "1002",
"cancelPenaltySettings": "1000",
"cancelBookingDay": null,
"cancelBookingTime": null,
"guaranteePolicyType": "1002",
"holdReservationTime": null,
"rateCodeList": [
"PRO04c"
],
"controlType": "black",
"controlList": ["cardId1","cardId2"]
}
],
"echoToken": "01c604cf-363e-4f3d-a94d-c7c570ea85c0"
}