积分银行 API
让客户使用获得的会员积分预订旅行
您可以选择白标模板网站是否连接您的会员计划,用于赚取或兑换(或者赚取和兑换)会员奖励。您的会员计划定义了哪些客户的消费有资格获得会员奖励(无论在您的计划中采取何种形式:积分、美元或其他),包括模板网站上的会员积分。您还可以让他们在您的模板网站上兑换累积的积分,以预订旅行。
您的客户可以选择两种方式来兑换他们获得的会员积分:直接通过您的模板网站,或通过电话与 Expedia 客服联系。有了积分银行 API,您的客户就能:
- 兑换获得的会员奖励
- 回退旅行订单(也称为取消或作废)
- 如取消旅行计划,可获得全额或部分会员积分退还
- 查看会员积分帐户余额
如需了解更多信息,请参见通用数据和响应页面。
积分银行 API 有多个端点可处理会员奖励的兑换、撤回和退还。它还可以调用帐户余额端点。为准确起见,必须在交易时查询此 API。每个端点在下面的选项卡中都有详细介绍,但所有端点和帐户余额端点使用相同的标题字段。
标题变量
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
partnerId | 由 Expedia 提供的企业唯一标识符 | 您的品牌 | 字符串,最多 20 个字符 | 是 |
Authorization | Expedia 从您的授权服务器收到的访问令牌,由您的团队进行验证 | 标准 JSON web 令牌 (JWT) | 字符串,标准 JWT 长度 | 否 |
Authorization2 | 由 Expedia 发送的 JSON web 令牌 (JWT);签名和申请将在您的终端进行验证 | 标准 JWT | 字符串,标准 JWT 长度 | 否 |
有关有效负载的详细信息,请查看我们的请求和响应示例页面。
兑换
这种一步到位的提交流程可让客户使用 POST /redeem
通过积分银行兑换他们的会员积分奖励。
请求
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
requestId | 交易请求的唯一标识符 | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
membershipId | 通过 SSO 收到的唯一客户标识符 | a6fgju7he1bf | 字符串,最多 40 个字符 | 是 |
loyaltyAccountNumber | 客户的会员帐号(也称为 programAccountNumber );只有会员操作需要提交除 membershipId 之外的标识符才要填写此字段 | 234986576 | 字符串,最多 40 个字符 | 否 |
programId | 客户所属会员计划的标识符或与会员计划相关的等级名称 | 银卡 金卡 白金卡 | 字符串,最多 20 个字符 | 否 |
sourceConfirmationId | Expedia 一方的确认标识符(也称为 orderId );它在兑换、退还和作废请求中发送,应作为响应有效负载的一部分和每日积分对账文件的一部分发回 | 9223371998507503799 | 字符串,最多 50 个字符 | 是 |
totalproductCost | 预订总费用(不超过小数点后 2 位);等于以积分支付的等值现金金额 + 以现金或银行卡支付的金额 | 230.09 | 字符串,最多 10 个字符 | 是 |
PaymentDetails | 会员奖励和现金或银行卡详细付款信息;有关嵌套字段,请参见付款详情表 | 是 |
响应
字段 | 说明 | 示例值 |
---|---|---|
status | 交易状态(值:已批准或已拒绝) | 已拒绝 |
requestId | 交易请求的唯一标识符(来自请求有效负载) | a5783c58-c5ce-4ff9-b83c-58c5cedff9 |
transactionDateTime | 合作伙伴系统记录的交易日期和时间 | 2023-04-20T12:01:23.203057Z |
sourceConfirmationId | 来自 Expedia 一方的订单标识符(也称为 orderId);在兑换、撤回和作废请求中发送,应包含在响应有效负载和每日积分对账文件中 | 9223371998507503799 |
redemptionDetails | 确认已兑换的会员积分奖励;有关嵌套项目,请参见兑换详情表 | |
DeclineReason | 交易被拒绝的原因;有关嵌套项目,请参见通用数据拒绝原因表 | |
reasonMessage | 为更好地记录日志,可随附拒绝响应提供的自定义消息;有关嵌套项目,请参见通用数据拒绝原因表 |
付款详情
字段 | 说明 | 是否必填? |
---|---|---|
redemptionDetails | 会员积分兑换详情;有关嵌套项目,请参见兑换详情表 | 是 |
amountPaidInCash | 客户用现金或银行卡支付的预订金额;有关嵌套项目,请参见通用数据金额表 | 是 |
兑换详情
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
amountPaidInLoyaltyCurrency | 为预订支付的积分总数、里程总数(或其他任何会员奖励总金额);有关嵌套字段,请参见通用数据金额表 | 是 | ||
redemptionConfirmationId | 兑换操作的标识符;将在来自 Expedia 的退还或作废请求中发送,并应作为兑换交易的“合作伙伴确认 ID”填入每日积分对账报告中 | expedia-a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 50 个字符 | 是 |
loyaltyRedemptionCode | 某些实施所需的兑换码,通常在请求中填入;如果需要,它是产品的一次性密码或预定义兑换码 | SKU | 字符串,最多 20 个字符 | 否 |
撤回
要在积分银行处理撤回(即撤销会员积分交易,也称为取消或作废),需要使用 POST /rollback
端点。
当兑换操作成功,但 Expedia 因供应不足等原因(例如,当客户试图预订时,但酒店已订满)而必须撤销时,就会触发此 API。由于这是对兑换的撤回,因此需要对账后才能重新获得会员积分。
注意:兑换或撤回交易都不应出现在每日积分对账报告中。
请求
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
requestId | 交易请求的唯一标识符 | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
membershipId | 来自会员计划的客户唯一标识符 | a6fgju7he1bf | 字符串,最多 40 个字符 | 是 |
sourceConfirmationId | 来自 Expedia 一方的订单标识符(也称为 orderId );在兑换、退还和作废请求中发送,应包含在响应有效负载和每日积分对账文件中 | 9223371998507503799 | 字符串,最多 50 个字符 | 是 |
CancellationDetails | 撤回交易的详细信息;有关嵌套项目,请参见取消详情表 |
响应
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
status | 显示取消是否成功的撤回交易状态(值:已批准或已拒绝) | 已批准 | 字符串 | 是 |
requestId | 交易请求的唯一标识符(来自请求有效负载) | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
transactionDateTime | 您的系统记录的交易日期和时间 | 2023-04-20T12:01:23.203057Z | 字符串,最多 40 个字符 | 是 |
sourceConfirmationId | 来自 Expedia 一方的订单标识符(也称为 orderId );在兑换、退还和作废请求中发送,应包含在响应有效负载和每日积分对账文件中 | 9223371998507503799 | 字符串,最多 50 个字符 | 是 |
CancellationDetails | 撤回交易的详细信息;(如 status 值为已批准,则为必填项);有关嵌套项目,请参见取消详情表 | |||
Balance | 客户帐户中可用的积分数、里程数或其他任何会员奖励金额;有关嵌套项目,请参见通用数据金额表 | |||
DeclineReason | 交易被拒绝的原因;有关嵌套项目,请参见通用数据拒绝原因表 | |||
reasonMessage | 可随附拒绝响应提供的自定义消息;有关嵌套项目,请参见通用数据拒绝原因表 |
取消详情
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
redemptionConfirmationId | 兑换的确认标识符;在兑换响应中发送;如果撤回,则不应在每日积分对账报告中填写 | a5783c58-c5ce-4ff9-b83c-58c5cedff991 | 字符串,最多 50 个字符 | 是 |
cancellationConfirmationId | 撤回操作的确认标识符(如果 status 值为已批准,则为必填项);不应在每日积分对账报告中填写 | a5783c58-c5ce-4ff9-b83c-58c5cedff993 | 字符串,最多 50 个字符 | 否 |
退还
此 API 用于通过 POST /refund 处理积分银行的会员积分退还。当客户使用获得的会员积分预订后需要取消计划时,就会触发此 API。由于这是对客户获得的会员积分的退还,因此在客户帐户的退还积分到账之前需要对账。
请求
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
requestId | 退还请求的唯一标识符 | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
membershipId | 唯一客户标识符 | a6fgju7he1bf | 字符串,最多 40 个字符 | 是 |
sourceConfirmationId | 来自 Expedia 一方的订单标识符(也称为 orderId );在兑换、退还和作废请求中发送,应包含在响应有效负载和每日积分对账文件中 | 9223371998507503799 | 字符串,最多 50 个字符 | 是 |
RefundDetails | 退还交易的详细信息;有关嵌套项目,请参见退还详情表 |
响应
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
status | 退还状态(值:已批准或已拒绝) | 已批准 | 字符串 | 是 |
requestId | 退还请求唯一标识符(来自请求有效负载) | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
transactionDateTime | 您的系统记录的交易日期和时间 | 2023-04-20T12:01:23.203057Z | 字符串,最多 40 个字符 | 是 |
sourceConfirmationId | 来自 Expedia 一方的订单标识符(也称为 orderId );在兑换、退还和作废请求中发送,应包含在响应有效负载和每日积分对账文件中 | 9223371998507503799 | 字符串,最多 50 个字符 | 是 |
RefundDetails | 退还请求的详细信息;有关嵌套项目,请参见退还详情表 | |||
Balance | 客户帐户中可用的积分数、里程数或其他任何会员奖励金额;有关嵌套项目,请参见通用数据金额表 | |||
DeclineReason | 交易被拒绝的原因;有关嵌套项目,请参见通用数据拒绝原因表 | |||
reasonMessage | 可随附拒绝响应提供的自定义消息;请参见通用数据拒绝原因表 |
退还详情
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
loyaltyRefundAmount | 退还的积分总数、里程总数或其他任何会员奖励总金额;有关嵌套字段,请参见通用数据金额表 | |||
redemptionConfirmationId | 兑换操作的标识符;在兑换响应中发送 | a5783c58-c5ce-4ff9-b83c-58c5cedff918 | 字符串,最多 50 个字符 | 是 |
refundConfirmationId | 退还操作的标识符;将在来自 Expedia 的退还或作废请求中发送,并应作为退还交易的“合作伙伴确认 ID”填入每日积分对账文件中 | a324554f03-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 50 个字符 | 否 |
帐户余额
要获取客户会员积分帐户余额,您需要使用 POST /balance
端点。
请求
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
requestId | 交易请求的唯一标识符 | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
membershipId | 来自会员计划的客户唯一标识符 | a6fgju7he1bf | 字符串,最多 40 个字符 | 是 |
loyaltyAccountNumber | 客户的会员帐号(也称为 programAccountNumber );只有会员操作需要提交除 membershipId 之外的标识符才要填写此字段 | 234986576 | 字符串,最多 40 个字符 | 否 |
programId | 客户所属会员计划的标识符或与会员计划相关的等级名称 | 白金卡 | 字符串,最多 20 个字符 | 否 |
响应(成功)
字段 | 说明 | 示例值 | 字段类型和长度 | 是否必填? |
---|---|---|---|---|
requestId | 交易请求的唯一标识符 | a5783c58-c5ce-4ff9-b83c-58c5cedff988 | 字符串,最多 40 个字符 | 是 |
Balance | 客户帐户中可用的积分数、里程数或其他任何会员奖励金额;有关嵌套项目,请参见通用数据金额表 |