Skip to main content

订单相关接口模式

下单前验证是否可定指定房型接口

说明:下单之前的DoubleCheck,用于下单前对一家酒店某个具体房型的房价、房量校验,

检验通过方可下单

接口地址:/hotel/checkAvailability

请求方式:POST

请求参数说明:
参数名参数类型备注是否必填示例值
cardIdString公司卡号VCENTCRM0002220001
cardPassWordString公司卡密码TestPassword
isGroupBool是否对总
false:个人支付
订单
true:企业总对总支付订单,包括预付和信用
true
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分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
bookerIdString预订人公司卡ID
hotelIdString酒店Id2000505
roomTypeIdString房型代码DR
checkInDateDateTime入住日期2020/1/1
checkOutDateDateTime离店日期2020/1/2
activityIdString活动Id会员价非必填 活动价必填
rateCodeString房价码
couponNosList<String>优惠券列表
bookerPersonMobileString预订人手机号与优惠券绑定人手机号一致;
若是中国大陆手机号,前缀无需加+86,请直接传11位手机号码
bookerPriceTypeString预订价格类型
个人:PERSON
企业:COMPANY
当企业总对总支付订单时,必传企业:COMPANY
PERSON
adultsPerRoomInteger一间房的入住人数,用于获取多人价(举例:一人价、两人价等);
入住人数:1-5,目前不支持大于5人(不涉及儿童数量,价格只根据成人数量计算,举例:两大一小,数量传2)
不传值,默认是2
注:针对非中国内地酒店(包含港澳台酒店)使用
currencyCodeString币种(当地币种)非中国内地酒店(包含港澳台酒店)需要传输

请求示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"bookerId": "VCENTCRM0002224829",
"checkInDate": "2020-08-26",
"checkOutDate": "2020-08-27",
"hotelId": "2000015",
"guaranteeMode": "NONE",
"isGroup": false,
"roomTypeId": "SQ1",
"rateCode": "Base-OCK-STD-BF2",
"activityId": ""
}
返回参数说明:
参数名参数类型备注
codecode状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
messageString响应消息
contentCheckAvailabilityDTO返回对象,此酒店此房型的房量、房价信息
CheckAvailabilityDTO:
参数名参数类型备注
activityIdString活动ID
roomCountCheckAvailabilityRoomCountDTO房量
priceDailyListList<PriceDailyDTO>每日价格
roomCountDailyListList<RoomCountDailyDTO>每日房量
rateCodeInfoListList<RateCodeInfoRespDTO>房价码信息
memberBreakFastBreakFastDTO会员和早餐信息
bookInfoBookInfoDTO预订信息
checkInInfoCheckInInfoDTO入住信息
cancelInfoCancelInfoDTO取消信息
exchangeRateListList<ExchangeRate>汇率信息
otherInfoOtherInfoDTO其他信息
CheckAvailabilityRoomCountDTO:
参数名参数类型备注
roomTypeIdString房型ID
retainCountInt保留房量
shareCountInt共享房量
availableCountInt可用房量
PriceDailyDTO
参数名参数类型备注
roomTypeIdString房型
bizDateDate营业日 yyyy-MM-dd
currencyCodeString币种
marketPriceDecimal门市价
beforeTaxPriceDecimal税前价(净价)
afterTaxPriceDecimal税后价(含税价)
multiPersonInt一人价、两人价
companyToGroupPriceDecimal公司总对总价(含税价+税点差价)
marketCNYPriceDecimal人民币门市价(含税价)
beforeTaxCNYPriceDecimal人民币税前价(净价)
afterTaxCNYPriceDecimal人民币税后价(含税价)
companyToGroupCNYPriceDecimal人民币公司总对总价(含税价+税点差价)
isForbiddenBool是否禁用
isBlackBool是否房型黑名单
RoomCountDailyDTO:
参数名参数类型备注
roomTypeIdString房价码
bizDateDate营业日
retainCountInteger保留房
shareCountInteger共享房
availableCountInteger可售
isForbiddenBoolean是否禁用
isBlackBoolean是否房型黑名单
RateCodeInfoRespDTO:
参数名参数类型备注
rateCodeString房价码
checkInTypeListList<String>入住类型(DAY、HOUR、GROUP、LONGSTAY)
tagList<String>标签 尾房、固定价等
activityIdString子活动id
BreakFastDTO:
参数名参数类型备注
memberLevelString会员级别
breakfastCountIntegerbreakfastCount是指入住人的最大早餐份数
举例说明:
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份早餐
companySrcCompanySrc公司来源(枚举,HUAZHU:华住 ACCOR:雅高)
breakFastExtBreakFastExtDTO早餐扩展信息
BreakFastExtDTO:
参数名参数类型备注
multiPersonBreakFastCountListList<MultiPersonDTO>多人入住早餐列表
MultiPersonDTO:
参数名参数类型备注
multiPersonInteger入住人数
breakfastCountIntegerbreakfastCount是指入住人的最大早餐份数
举例说明:
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份早餐
BookInfoDTO:
参数名参数类型备注
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分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
holdTimeString最晚保留时间
bookDescString预订说明
CheckInInfoDTO:
参数名参数类型备注
isOneSelfBool是否必须本人本卡
checkInDescString入住说明
CancelInfoDTO:
参数名参数类型备注
isCanCancelBool是否可取消
lastCancelDateString最晚取消时间
cancelDescString取消说明
ExchangeRate
参数名参数类型备注
currencyOriginString原始币种
currencyTargetString目标币种
exchangeRateString汇率
currencyDateString汇率日期 yyyy-MM-dd
timestampLong汇率时间搓
versionNoString汇率版本
OtherInfoDTO:
参数名参数类型备注
isPromotionCodeCanBookBool是否必须使用促销券码才能预订
isCanUseCouponBool是否支持优惠券
otherDescString其他说明

返回示例:

{
"code": "200",
"message": "成功!",
"content": {
"activityId": null,
"roomCount": {
"roomTypeId": "SQ1",
"retainCount": 0,
"shareCount": 16,
"availableCount": 16
},
"priceDailyList": [
{
"roomTypeId": "SQ1",
"bizDate": "2020-08-26",
"currencyCode": "CNY",
"marketPrice": 329,
"beforeTaxPrice": 280,
"afterTaxPrice": 280,
"companyToGroupPrice": 289.38,
"marketCNYPrice": 329,
"beforeTaxCNYPrice": 280,
"afterTaxCNYPrice": 280,
"companyToGroupCNYPrice": 289.38,
"isForbidden": false,
"isBlack": false
}
],
"roomCountDailyList": [
{
"roomTypeId": "SQ1",
"bizDate": "2020-08-26",
"retainCount": 0,
"shareCount": 16,
"availableCount": 16,
"isForbidden": false,
"isBlack": false
}
],
"memberBreakFast": {
"memberLevel": "K",
"breakfastCount": 2
},
"bookInfo": {
"guaranteeMode": "NONE",
"holdTime": null,
"bookDesc": "预订说明:担保方式:NONE,"
},
"checkInInfo": {
"isOneSelf": true,
"checkInDesc": "入住说明:是否必须本人本卡:是"
},
"cancelInfo": {
"isCanCancel": true,
"lastCancelDate": "2020-08-26 18:00:00",
"cancelTime": "2020-08-26 20:00:00",
"cancelDesc": "取消说明:是否可取消:是,最晚取消时间:2020-08-26 18:00:00,"
},
"exchangeRateList": {
"currencyOrigin": "SUD",
"currencyTarget": "CNY",
"exchangeRate": "0.185525936797918143",
"currencyDate": "2023-07-05",
"timestamp": 1688515199,
"versionNo": "a141ef6f5be7481e9db0158641247811"
},
"otherInfo": {
"isPromotionCodeCanBook": false,
"isCanUseCoupon": true,
"otherDesc": "其他说明:是否必须使用促销券码才能预订:否,是否支持优惠券:是,"
}
},
"echoToken": "61173cd8-1089-4cce-83d9-4ef9ddd2b1fe"
}

下单

注意:

所有使用华住商旅API接口对接的客户(包括TMC),均需要根据以下机制做程序补偿机制

  1. 调用华住商旅下单接口后,没有收到确定的返回结果(如500错误或系统网络超时等), 调用方需使用原下单请求号RequestNo进行重试下单接口(orderadd)或查询接口(queryByRequestNo), 查询建议,下单后的第3分钟后查询第一次,若返回500错误或系统网络超时等,建议第5分钟查询第二次,若再返回500错误或系统网络超时等,建议第10分钟查询第三次;
  • 1)若查询到订单号:
  • a、订单号bookStatus状态为P则代表未处理完成,需按照查询建议继续查询订单状态即可;
  • b、订单号bookStatus状态为R则代表预订成功;
  • c、订单号bookStatus状态为E则代表客户在前台已办理入住;
  • d、订单号bookStatus状态为X则代表订单已取消。
  • 2)如超过10分钟,仍未收到确定结果或者订单号bookStatus状态仍为P,可发到华住商旅企业对接群找华住相关人员确认订单情况,如未重试或未确认可能会产生差异订单,企业需要结算此笔费用。
  1. 总对总结算模式的下单请求,若返回"付款失败(code:3028,message:订单支付失败)", 需要重试下单接口(orderadd)或查询接口(queryByRequestNo)获取到已经生成的订单号, 查询建议,下单后的第3分钟后查询第一次,若返回500错误或系统网络超时等,建议第5分钟查询第二次,若再返回500错误或系统网络超时等,建议第10分钟查询第三次;
  • 1)订单号中查看bookStatus状态
  • a、订单号bookStatus状态为P则代表未处理完成,需按照查询建议继续查询订单状态即可;
  • b、订单号bookStatus状态为R则代表预订成功;
  • c、订单号bookStatus状态为E则代表客户在前台已办理入住;
  • d、订单号bookStatus状态为X则代表订单已取消。(扣款失败会取消订单)。
  • 2)如超过10分钟,订单号bookStatus状态仍为P,可发到华住商旅企业对接群找华住相关人员确认订单情况,如未重试或未确认可能会产生差异订单,企业需要结算此笔费用。

接口地址: order/add

请求方式:POST

请求参数说明:
参数名参数类型备注是否必填示例值
cardIdString公司卡号VCENTCRM0002220001
cardPassWordString公司卡密码TestPassword
isGroupBool是否总对总
false:现付订单
true:总对总订单,包括预付和信用
true
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分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
1、到付和预付区别
a、guaranteeMode是NONE,则支持到店付或者预付
b、guaranteeMode是FIRST_NIGHT或者FULL_AMOUNT,则必须预付
2、担保模式使用
a、企业协议价按照企业卡的担保模式(运营开卡时确认的担保模式)
b、活动价按照房价码担保模式,判断房量房价接口中的BookDTO中的guaranteeMode(担保模式)(房量房价接口中activityId不为空就是活动房价码;活动价下单时,验价及下单接口必须要传activityId,否则默认为会员价)
3、现付客户不能使用活动价注意事项
由于活动价的担保模式都是需预付,导致因公现付或者因私订单,下单后会在5分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
apiTypeStringAPI 类型
INTERFACE:接口下单
DIRECT:直连H5下单
INTERFACE
requestNoString下单请求号
outerRefIdString关联号(OA Id)
bookerIdString预订人公司卡ID
isNeedRegisterMemberBool是否为入住人赠送积分
bookerPersonIdString预订人员工编号
bookerPersonFirstNameString国内酒店传值时,此字段表示“预订人姓名”或“预订人的名“
海外酒店传值时,此字段表示“预订人的名”
海外酒店传值时,请传英文或者拼音
bookerPersonLastNameString预订人的姓(海外酒店必传)
海外酒店传值时,请传英文或者拼音
bookerPersonMobileString预订人手机号如使用优惠券个人价这个字段必填
使用优惠券,与优惠券绑卷人手机号一致
使用个人价,传个人会员的手机号;
若是中国大陆手机号,前缀无需加+86,请直接传11位手机号码
bookerPersonIDNumberString预订人证件号注:预留字段,无需传值
adultsInt一间房的入住人数,用于获取多人价(举例:一人价、两人价等);
入住人数:1-5,目前不支持大于5人(不涉及儿童数量,价格只根据成人数量计算,举例:两大一小,数量传2)
不传值,默认是2
childsInt儿童数
travelLevelString差旅档次和级别
travelTypeString差旅类型
COMPANY:因公
PERSON:因私 (当企业总对总支付订单时,必传企业:COMPANY)
PERSON
linkFirstNameString国内酒店传值时,此字段表示“联系人姓名”或“联系人的名“
海外酒店传值时,此字段表示“联系人的名”
海外酒店传值时,请传英文或者拼音
linkLastNameString联系人的姓(海外酒店必传)
海外酒店传值时,请传英文或者拼音
linkMobileString联系人手机
linkEmailString联系人邮箱非中国内地酒店(包含港澳台酒店)此字段为必填
hotelIdString酒店Id2000505
roomTypeIdString房型DR
checkInTypeString入住类型
DAY:天
HOUR:小时
DAY
checkInDateDateTime入住日期2020/1/1
checkOutDateDateTime离店日期2020/1/2
arriveTimeDateTime抵达时间
roomCountInt房间数量,>=1
remarkString客人备注
dailyPriceListList<DailyPriceParameter>每日房价列表
rateCodeString房价码
activityIdString活动Id会员价非必填 活动价必填
isNeedBool是否需要一次性用品,H5新加字段,接口上还未实现
invoiceNoString纳税人识别号当是总对总订单并且有多组开票信息时,必传
bookerPriceTypeString预订价格类型
个人:PERSON
企业:COMPANY
当企业总对总支付订单时,必传企业:COMPANY
PERSON
customerDictionaryString企业对账单的扩展字段,需提前找运营在后台配置对应扩展字段;
外部客户调用接口时可传递对应的扩展字段,扩展字段将呈现在华住商旅后台下载的企业对账单中,方便用于对账使用等。
扩展字段如下:
Department:员工部门 ;
ApplicationRemark:申请单备注 ;
EmpUniqueId:员工唯一标识 ;
OrderType:订单类型 ;
ApplicationCostCenter:申请单成本中心 ;
ReqUniqueId:下单标识 ;
Subsidiary:子公司 ;
PayCompanyName:发薪公司 ;
传值规则:{ "ReqUniqueId":"DS10001", "OrderType":"CREDIT", "Department":"CK" }
OrderType枚举: (CREDIT:信用 ADVANCE:预付 OTHER:其他)
guestInfoListList<GuestParameter>入住人信息(整体为空表示不传值,若需传值按照具体规则传值)
settleBodyCodeString会计主体code开启主体对账时必传
DailyPriceParameter:
参数名参数类型备注是否必填示例值
bizDateDateTime营业日
afterTaxPriceDecimal房价(税后价)
afterTaxCNYPriceDecimal人民币房价(税后价)非中国内地酒店(包含港澳台酒店)总对总下单必填
couponNoString优惠券码
GuestParameter:
参数名参数类型备注是否必填示例值
guestFirstNameString中国内地酒店(不含港澳台酒店)传值时,此字段表示“入住人姓名”或“入住人的名“
非中国内地酒店(包含港澳台酒店)传值时,此字段表示“入住人的名”
海外酒店传值时,请传英文或者拼音
guestLastNameString入住人的姓(海外酒店必传)
海外酒店传值时,请传英文或者拼音
guestPhoneString入住人手机号若是中国大陆手机号,前缀无需加+86,请直接传11位手机号码
guestEmailString入住人邮箱
guestRoomNoInteger同一个值则表示为同一房间入住人

请求参数示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"isGroup": true,
"guaranteeMode": "NONE",
"apiType": "INTERFACE",
"requestNo": "string",
"outerRefId": "string",
"bookerId": "string",
"isNeedRegisterMember": false,
"bookerPersonId": "string",
"bookerPersonMobile": "string",
"bookerPersonIDNumber": "string",
"adults": 0,
"childs": 0,
"travelLevel": "string",
"travelType": "COMPANY",
"linkMobile": "string",
"linkEmail": "string",
"hotelId": "string",
"roomTypeId": "string",
"checkInType": "DAY",
"checkInDate": "2020-01-01",
"checkOutDate": "2020-01-02",
"arriveTime": "2020-01-02 14:00:00",
"roomCount": 0,
"remark": "string",
"dailyPriceList": [
{
"bizDate": "2020-01-01",
"afterTaxPrice": 0
}
],
"rateCode": "string",
"activityId": "string",
"invoiceNo": "string",
"guestInfoList": [
{
"guestFirstName": "张三/三",
"guestLastName": "张",
"guestPhone": "13411111111",
"guestEmail": "zhangsan@xx.com",
"guestRoomNo": 1
}
]
}
返回参数说明
参数名参数类型备注
codecode状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
messageString响应消息
contentOrderInfoOrderInfo
OrderInfo:
参数名参数类型备注
orderIdcode华住订单号
bookStatusString订单预订状态
P:处理中(中间态)
R:预订成功
E:完成
X:取消

返回参数示例

{
"code": "200",
"message": "string",
"content": {
"bookStatus": "string",
"orderId": "string"
}
}

取消订单

接口地址: order/cancel

请求方式:POST

请求参数说明:
参数名参数类型备注是否必填示例值
cardIdString公司卡号VCENTCRM0002220001
cardPassWordString公司卡密码TestPassword
orderIdString订单号R20005050001936627
hotelIdString酒店Id2000505

请求示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"orderId": "string",
"hotelId": "string"
}
返回参数说明:
参数名参数类型备注
codecode状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
messageString响应消息
contentBool是否成功

返回示例:

{
"code": "200",
"message": "string",
"content": true
}

查询订单

接口地址:order/query

请求方式:POST

请求参数说明:
参数名参数类型备注是否必填示例值
cardIdString公司卡号VCENTCRM0002220001
cardPassWordString公司卡密码TestPassword
orderIdString订单号R20005050001936627
hotelIdString酒店Id2000505

请求示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"orderId": "string",
"hotelId": "string"
}
返回参数说明:
参数名参数类型备注
codecode状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
messageString响应消息
contentOrderInfo订单信息
OrderInfo:
参数名参数类型备注
requestNoString外部流水号、下单请求号
orderIdString订单号
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份早餐
adultsInt成人数
childsInt儿童数
travelLevelString差旅类型等级、档次 (H5需要)
travelTypeString差旅类型,因公(COMPANY),因私(PERSON),(H5需要)
bookerPersonIdString预订人员工编号
linkFirstNameString国内酒店传值时,此字段表示“联系人姓名”或“联系人的名“
海外酒店传值时,此字段表示“联系人的名”
linkLastNameString联系人的姓(海外酒店必传)
linkMobileString联系人电话
linkEmailString联系人邮箱(非中国内地酒店(包含港澳台酒店)酒店此字段为必填)
bookerPersonFirstNameString国内酒店传值时,此字段表示“预订人姓名”或“预订人的名“
海外酒店传值时,此字段表示“预订人的名”
bookerPersonLastNameString预订人的姓(海外酒店必传)
hotelIdString酒店Id
hotelNameString酒店名称 (H5需要)
hotelAddressString酒店地址 (H5需要)
brandCodeString酒店品牌code (H5需要)
brandNameString酒店品牌名称 (H5需要)
roomTypeIdString房型代码
roomTypeNameString房型名称 (H5需要)
checkInTypeString入住类型,天(DAY),小时(HOUR)
checkInDateDateTime预订单入住日期
checkOutDateDateTime预订单离店日期
lastCheckoutTimeDateTime最晚离店日期
arriveTimeDateTime预订单预计到达时间
roomCountInt预订房间数
bookStatusString订单预订状态
P:处理中(中间态)
R:预订成功
E:完成
X:取消
businessTypeString业务模式
CASH:现付,例如:到门店付
COMPANY_ADVANCE:企业预付,例如:支付宝立即扣、中航结立即扣CREDIT:信用,例如:担保金月结,担保金离店T+N扣款
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分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
dailyPriceListList<DailyPriceResponseDTO>每日房价
currencyCodeString币种
rateCodeString房价码
activityIdString活动Id
isCanCancelBool是否可以取消
lastCancelTimeDateTime最晚取消时间 (H5需要)
cancelDescString取消政策
lastHoldTimeDateTime最晚保留时间
isSendMessageBool预订短信是否已发送 (H5需要)
createTimeDate下单时间
payStatusString订单付款状态
NONE:未支付
PAY:已支付
REFUND:已退款
注:针对总对总结算订单,下单流程是先下单,下单成功再去扣款,扣款成功,返回订单号,扣款失败会马上取消订单,在取消订单过程中,客户来重试下单或查询订单,会返回bookStatus=R和订单号给客户,但实际在客人没有马上办理入住的情况下会取消订单,造成客人到店无可入住的订单,现可以根据bookStatus=R并且payStatus=PAY判断订单预订并支付成功,如果bookStatus=R并且payStatus=NONE在客人没有马上办理入住的情况下会取消订单,取消成功bookStatus=X(此时不关心payStatus),由于客人办理入住导致取消失败,产生的费用需要正常结算
checkInPolicyDescString入住政策,H5新增字段,接口还未实现
outerHotelRefIdString第三方酒店订单ID(雅高)
travelMoneyString差标金额
pmsAdapterOrderStatusString实际订单状态
R:预订成功
I:入住
O:离店
N:NoShow
E:完成
X:取消
bookerPriceTypeString预订价格类型
bookerPersonMobileString绑券会员手机号或个人价手机号
DailyPriceResponseDTO:
参数名参数类型备注
bizDateDateTime营业日
afterTaxPriceBigDecimal房价
afterTaxCNYPriceBigDecimal人民币房价

返回参数示例:

{
"code": "200",
"message": "成功!",
"content": {
"requestNo": "1701222124836",
"orderId": "R2000014133954927001",
"breakfastCount": 2,
"adults": 1,
"childs": 0,
"travelLevel": "",
"travelType": "COMPANY",
"linkMobile": "18302451065",
"linkEmail": "ceshizhuanyong@ceshi.com",
"linkFirstName": "赵七七/七七",
"linkLastName": "赵",
"bookerPersonFirstName": "张三/三",
"bookerPersonLastName": "张",
"hotelId": "2000014",
"hotelName": null,
"hotelAddress": null,
"brandCode": null,
"brandName": null,
"roomTypeId": "DR1",
"roomTypeName": null,
"checkInType": "DAY",
"checkInDate": "2023-11-29",
"checkOutDate": "2023-11-30",
"lastCheckoutTime": "2023-11-30 14:00:00",
"arriveTime": "2023-11-30 18:00:00",
"roomCount": 1,
"bookStatus": "R",
"businessType": "CREDIT",
"guaranteeMode": "FIRST_NIGHT",
"dailyPriceList": [
{
"bizDate": "2023-11-29",
"afterTaxPrice": 373,
"afterTaxCNYPrice": 373
}
],
"currencyCode": "CNY",
"rateCode": "Base-OCK-STD",
"activityId": "",
"isCanCancel": true,
"lastCancelTime": "2023-11-29 00:00:00",
"cancelDesc": "取消说明:是否可取消:是,最晚取消时间:2023-11-29 00:00:00,",
"lastHoldTime": "2023-11-29 20:00:00",
"isSendMessage": false,
"outerHotelRefId": null,
"pmsAdapterOrderStatus": "R",
"bookerPersonMobile": "",
"bookerPriceType": "COMPANY",
"createTime": "2023-11-29 09:42:05",
"bookerPersonId": "",
"travelMoney": "",
"payStatus": "PAY"
},
"echoToken": "e359a589-4138-4b40-b22b-0beb37df24bf"
}

根据下单号查询订单

接口地址:order/queryByRequestNo

请求方式:POST

请求参数说明:
参数名参数类型备注是否必填示例值
cardIdString公司卡号VCENTCRM0002220001
cardPassWordString公司卡密码TestPassword
requestNoString下单请求号hd070808

请求示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"requestNo": "string"
}
返回参数说明:
参数名参数类型备注
codecode状态码
200 成功!
500 应用程序繁忙,请稍后再试!
521 企业V卡号或者验证码错误!
messageString响应消息
contentOrderInfo订单信息
OrderInfo:
参数名参数类型备注
requestNoString外部流水号、下单请求号
orderIdString订单号
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份早餐
adultsInt成人数
childsInt儿童数
travelLevelString差旅类型等级、档次 (H5需要)
travelTypeString差旅类型,因公(COMPANY),因私(PERSON),(H5需要)
bookerPersonIdString预订人员工编号
linkMobileString联系人电话
linkEmailString联系人邮箱
linkFirstNameString国内酒店传值时,此字段表示“联系人姓名”或“联系人的名“
海外酒店传值时,此字段表示“联系人的名”
linkLastNameString联系人的姓(海外酒店必传)
bookerPersonFirstNameString国内酒店传值时,此字段表示“预订人姓名”或“预订人的名“
海外酒店传值时,此字段表示“预订人的名”
bookerPersonLastNameString预订人的姓(海外酒店必传)
hotelIdString酒店Id
hotelNameString酒店名称 (H5需要)
hotelAddressString酒店地址 (H5需要)
brandCodeString酒店品牌code (H5需要)
brandNameString酒店品牌名称 (H5需要)
roomTypeIdString房型代码
roomTypeNameString房型名称 (H5需要)
checkInTypeString入住类型,天(DAY),小时(HOUR)
checkInDateDateTime预订单入住日期
checkOutDateDateTime预订单离店日期
lastCheckoutTimeDateTime最晚离店日期
arriveTimeDateTime预订单预计到达时间
roomCountInt预订房间数
bookStatusString订单预订状态
P:处理中(中间态)
R:预订成功
E:完成
X:取消
businessTypeString业务模式
CASH:现付,例如:到门店付
COMPANY_ADVANCE:企业预付,例如:支付宝立即扣、中航结立即扣CREDIT:信用,例如:担保金月结,担保金离店T+N扣款
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分钟内自动取消。所以建议因公现付客户或者因私订单不要使用活动价,而是使用企业协议价下单。
dailyPriceListList<DailyPriceResponseDTO>每日房价
currencyCodeString币种
rateCodeString房价码
activityIdString活动Id
isCanCancelBool是否可以取消
lastCancelTimeDateTime最晚取消时间 (H5需要)
cancelDescString取消政策
lastHoldTimeDateTime最晚保留时间
isSendMessageBool预订短信是否已发送 (H5需要)
createTimeDate下单时间
payStatusString订单付款状态
NONE:未支付
PAY:已支付
REFUND:已退款
注:针对总对总结算订单,下单流程是先下单,下单成功再去扣款,扣款成功,返回订单号,扣款失败会马上取消订单,在取消订单过程中,客户来重试下单或查询订单,会返回bookStatus=R和订单号给客户,但实际在客人没有马上办理入住的情况下会取消订单,造成客人到店无可入住的订单,现可以根据bookStatus=R并且payStatus=PAY判断订单预订并支付成功,如果bookStatus=R并且payStatus=NONE在客人没有马上办理入住的情况下会取消订单,取消成功bookStatus=X(此时不关心payStatus),由于客人办理入住导致取消失败,产生的费用需要正常结算
checkInPolicyDescString入住政策,H5新增字段,接口还未实现
outerHotelRefIdString第三方酒店订单ID(雅高)
travelMoneyString差标金额
pmsAdapterOrderStatusString实际订单状态
R:预订成功
I:入住
O:离店
N:NoShow
E:完成
X:取消
bookerPriceTypeString预订价格类型
bookerPersonMobileString绑券会员手机号或个人价手机号
DailyPriceResponseDTO:
参数名参数类型备注
bizDateDateTime营业日
afterTaxPriceBigDecimal房价
afterTaxCNYPriceBigDecimal人民币房价

返回示例:

{
"code": "200",
"message": "成功!",
"content": {
"requestNo": "1701222124836",
"orderId": "R2000014133954927001",
"breakfastCount": 2,
"adults": 1,
"childs": 0,
"travelLevel": "",
"travelType": "COMPANY",
"linkMobile": "18302451065",
"linkEmail": "ceshizhuanyong@ceshi.com",
"linkFirstName": "赵七七/七七",
"linkLastName": "赵",
"bookerPersonFirstName": "张三/三",
"bookerPersonLastName": "张",
"hotelId": "2000014",
"hotelName": null,
"hotelAddress": null,
"brandCode": null,
"brandName": null,
"roomTypeId": "DR1",
"roomTypeName": null,
"checkInType": "DAY",
"checkInDate": "2023-11-29",
"checkOutDate": "2023-11-30",
"lastCheckoutTime": "2023-11-30 14:00:00",
"arriveTime": "2023-11-30 18:00:00",
"roomCount": 1,
"bookStatus": "R",
"businessType": "CREDIT",
"guaranteeMode": "FIRST_NIGHT",
"dailyPriceList": [
{
"bizDate": "2023-11-29",
"afterTaxPrice": 373,
"afterTaxCNYPrice": 373
}
],
"currencyCode": "CNY",
"rateCode": "Base-OCK-STD",
"activityId": "",
"isCanCancel": true,
"lastCancelTime": "2023-11-29 00:00:00",
"cancelDesc": "取消说明:是否可取消:是,最晚取消时间:2023-11-29 00:00:00,",
"lastHoldTime": "2023-11-29 20:00:00",
"isSendMessage": false,
"outerHotelRefId": null,
"pmsAdapterOrderStatus": "R",
"bookerPersonMobile": "",
"bookerPriceType": "COMPANY",
"createTime": "2023-11-29 09:42:05",
"bookerPersonId": "",
"travelMoney": "",
"payStatus": "PAY"
},
"echoToken": "6ed2ec7a-ee57-47c9-93f7-636cd6021712"
}

根据订单查询积分间夜赠送情况

接口地址:/order/getOrderScoreNightInfo

请求方式:POST

请求参数说明:
参数名参数类型备注是否必填示例值
cardIdString公司卡号VCENTCRM1016433543
cardPassWordString公司卡密码A7A5C7DF-A1B2-469B-8361-A1AF85289571
orderIdString订单号R2000014065860371001
hotelIdString酒店Id2000014

请求示例:

{
"cardId": "VCENTCRM0002224829",
"cardPassWord": "123321a",
"orderId": "R2000015071060289001",
"hotelId": "2000015"
}
返回参数说明:
参数名参数类型备注
codecode状态码 200 成功! 500 应用程序繁忙,请稍后再试!
messageString响应消息
contentHotelOrderScoreNightDTO入驻码信息

HotelOrderScoreNightDTO:

参数名参数类型备注
orderIdString订单号
hotelIdDecimal酒店Id
orderScoreStatusString积分状态
0 不是会员
1 未下挂或未认证
2 渠道不赠送
3 等待处理
4 处理完成
5 酒店不处理赠送
6 非本人本卡
7 取消订单
8 未获取到房费不赠送
9 下查询不到会员不赠送
10 订单noshow不赠送
11 非托卡不增送
12 账户异常无法赠送积分
realCheckInDateDate入住日期
realCheckOutDateDate离店日期
realRoomPriceDouble实际房费
realCheckInNightDouble实际入住间夜数
totalScoreInteger总赠送积分
totalNightDouble总累积间夜数

返回示例:

{
"code": "200",
"message": "成功!",
"content": {
"orderScoreStatus": "4",
"orderId": "R2000015071060289001",
"hotelId": "2000015",
"realCheckInDate": "2023-10-01",
"realCheckOutDate": "2023-10-12",
"realRoomPrice": 345,
"realCheckInNight": 11,
"totalScore": 10000,
"totalNight": 11
}
}