在线演示

Expedia Rapid API对接

Expedia API对接:Rapid API、预订流程与上线

在线旅行社、旅行社或旅游初创企业对接Expedia Group所需的全部信息:哪种Expedia API适合您的业务、Rapid预订流程和签名如何运作、上线审核检查什么、费用多少,以及PHPTRAVELS如何借助已内置的酒店流程帮您上线。

  • Rapid Lodging API
  • API key与SHA-512签名
  • 沙盒与测试预订
  • 上线审核与正式上线

Expedia Group API

哪种Expedia API适合您的业务

Expedia Group为分销商、联盟会员、酒店和旅行代理分别运营独立的API项目。先回答一个问题再做选择:旅客在哪里付款?

  • 需求端

    Rapid API

    我们的重点
    适用对象
    以自有品牌销售旅游产品的在线旅行社、旅行社、旅游应用和会员忠诚度计划。
    提供内容
    实时Expedia库存及完整预订链路:搜索比价、价格复核、预订、修改和取消。
    旅客预订位置
    在您的网站或应用内,使用您自己的结账流程。
    与PHPTRAVELS结合
    酒店流程已内置在住宿模块中,您只需配置、映射并完成认证。
  • 联盟端

    Travel Redirect API

    适用对象
    通过推荐赚取佣金的内容网站、旅游博客和比价类页面。
    提供内容
    可在您的页面上展示的住宿和机票列表,并链接到您选择的Expedia品牌。
    旅客预订位置
    跳转后在Expedia、Hotels.com或Vrbo上完成。
    与PHPTRAVELS结合
    可在PHPTRAVELS网站上作为列表和链接使用,预订不在您的网站上发生。
  • 供应端

    供应与连接API

    适用对象
    酒店、物业管理系统和渠道管理器。
    提供内容
    向Expedia推送房价、房态和限制条件,并拉取其产生的预订。
    旅客预订位置
    在Expedia上完成,由酒店接收预订。
    与PHPTRAVELS结合
    适用于通过外联网或渠道管理器在Expedia上销售的酒店。
  • 旅行代理

    Expedia TAAP

    适用对象
    为客户预订并赚取佣金的旅行代理。
    提供内容
    Expedia的代理门户,提供代理价格和佣金跟踪。
    旅客预订位置
    在TAAP门户中由代理预订。
    与PHPTRAVELS结合
    代理可在您的后台记录TAAP预订;API途径是Rapid。

由于申请量过大,Expedia已暂停受理新的Travel Redirect API申请。

Rapid API产品

  • Rapid Lodging APIPHPTRAVELS已内置
  • Rapid Car API定制集成
  • Rapid Flight API定制集成
  • Rapid Activities API定制集成

酒店旅游联盟计划Expedia ExtranetExpedia TAAP API对接定制API集成

Rapid预订流程

Expedia酒店预订如何逐个调用完成

Rapid Lodging预订遵循固定的调用链。选择一个步骤,查看对应调用、PHPTRAVELS如何处理,以及认证时需要注意的事项。

Rapid调用

GET /v3/properties/content
PHPTRAVELS的处理
将酒店名称、地址、图片、设施、房型和政策导入酒店页面,并按计划定期刷新。
注意事项
完整目录使用酒店内容文件,更新使用内容API;切勿从搜索响应中抓取内容。

Rapid调用

GET /v3/properties/availability
PHPTRAVELS的处理
按日期、入住人数和酒店ID搜索,然后展示每个房型的价格、税费和取消政策。
注意事项
结账前显示含税费的总价,并在每个请求中发送旅客的IP和会话请求头。

Rapid调用

GET {price_check link}
PHPTRAVELS的处理
在付款前调用所选价格的价格复核链接,仅在价格一致时继续。
注意事项
价格变动或已售罄时必须中止结账并提供新的选择,绝不能按旧价格扣款。

Rapid调用

POST /v3/itineraries
PHPTRAVELS的处理
使用客人信息和付款创建行程,保存Expedia行程ID并发送确认单。
注意事项
可保留的价格支持两步模式:先免费保留客房,再继续完成预订。

Rapid调用

GET /v3/itineraries/{itinerary_id}
PHPTRAVELS的处理
回读行程,在后台核对日期、房型、价格、确认号和状态。
注意事项
超时后先查询,仅在行程不存在时重试,确保客人不会被重复预订。

Rapid调用

DELETE /v3/itineraries/{id}/rooms/{room_id}
PHPTRAVELS的处理
按照价格政策,从后台和客户账户中办理修改和取消。
注意事项
罚金依据价格的取消政策计算;确认前须向旅客展示。

Rapid调用

POST https://your-site/webhooks/expedia
PHPTRAVELS的处理
在您安装环境中的URL接收行程变更的webhook事件,并更新预订。
注意事项
快速响应webhook,并以Expedia的记录作为状态的唯一依据。

调用路径依据Rapid v3文档;请始终以最新的Expedia Group开发者中心为准。

API key与签名

Expedia Rapid API认证如何运作

每个Rapid请求都带有授权请求头,其中包含您的API key和签名:签名是API key、共享密钥和当前UNIX时间戳(秒)的SHA-512哈希值。

五分钟时间窗口
时间戳必须与Expedia服务器时间相差不超过五分钟,且参与哈希的时间戳必须与请求头中的一致。
密钥只保存在服务器端
共享密钥相当于密码。PHPTRAVELS将其保存在服务器配置中,绝不放在浏览器或应用中。
测试接口
沙盒调用发送至test.ean.com,不会产生真实预订或银行卡扣款;测试请求头可模拟已售罄或价格变动等结果。
为什么显示EAN
EAN即Expedia Affiliate Network,是该项目的旧名称,至今仍保留在请求头方案和接口地址中。
为Rapid请求签名(PHP)
 1// keys come from the server config, never from the browser 2$key    = getenv('EXPEDIA_API_KEY'); 3$secret = getenv('EXPEDIA_SHARED_SECRET'); 4$ts     = time(); // UNIX seconds, within 5 minutes of Expedia 5 6$signature = hash('sha512', $key . $secret . $ts); 7 8$headers = [ 9  "Authorization: EAN APIKey=$key,Signature=$signature,timestamp=$ts",10  'Accept: application/json',11  'Accept-Encoding: gzip',12  'Customer-Ip: ' . $travellerIp,13];1415// sandbox: https://test.ean.com  ·  live: https://api.ean.com
SHA-512±5 mintest.ean.com → api.ean.com

实施指南

Expedia API对接分步指南

从合作伙伴申请到第一笔正式预订,每一步都标明由谁负责。

  1. 01

    申请成为Expedia Group合作伙伴

    通过Expedia Group合作伙伴解决方案提交您的公司、域名和商业模式。商务条款将根据您的地区和业务量与Expedia商定。

    您Expedia
  2. 02

    获取API key和共享密钥

    审核通过后,您将获得Rapid凭据以及开发者中心的文档访问权限。

    Expedia
  3. 03

    配置Expedia连接器

    在PHPTRAVELS后台填写凭据,导入内容,设置加价和币种,并将房型和政策映射到酒店页面。

    PHPTRAVELS您
  4. 04

    执行测试预订

    在测试接口上预订,模拟客房售罄、价格变动、超时和错误代码,直到每种情况都得到处理。

    PHPTRAVELS您
  5. 05

    通过上线审核

    Expedia会依据其上线要求审核您的网站,并在投产前要求提供PCI合规证明(AOC)。

    Expedia您
  6. 06

    切换到正式环境并开始销售

    在后台填写正式环境凭据,开始正式预订,并保持供应商日志开启以便处理客服问题。

    您PHPTRAVELS

周期与替代方案

销售Expedia库存的四种方式

基于Rapid从零开发可获得完全控制权,但需要数月的开发工作。现成的预订引擎、联盟跳转和代理门户则各有不同的取舍。

方式上线周期在您的网站结账由谁维护最适合
基于Rapid自主开发上线周期数月:搜索、结账、后台和认证全部从零开发在您的网站结账是由谁维护您的开发人员,每次Expedia API变更都需跟进最适合拥有自己开发团队的大型在线旅行社
现成预订引擎(PHPTRAVELS)PHPTRAVELS上线周期数周:酒店流程已就绪,时间主要用于配置和Expedia审核在您的网站结账是由谁维护由引擎更新维护,完整源代码归您所有最适合希望快速拥有自有品牌和结账流程的旅行社和初创企业
联盟跳转上线周期数天,前提是Expedia接受申请在您的网站结账否由谁维护预订链路由Expedia运营最适合赚取推荐佣金的内容网站和博客
代理门户(TAAP)上线周期无需开发:代理在Expedia门户中预订在您的网站结账否由谁维护Expedia最适合为客户逐单预订行程的代理

上线要求

上线前Expedia会检查什么

审核关注的是网站的实际表现,而不只是调用是否成功。勾选您的系统已实现的项目;PHPTRAVELS的标准酒店流程已涵盖每一项。

已就绪0/8项

费用

Expedia API对接需要多少费用?

Expedia不公布API访问的价目表;您根据与Expedia商定的条款从预订中获得收益。您自己的成本是软件、托管和合规。

  • Expedia接入

    与Expedia商定:根据您的合同、地区和业务量,从预订中获得佣金或差价。

  • 预订引擎

    PHPTRAVELS为一次性授权,起,包含完整源代码,无需按预订支付月费。

  • 托管

    使用您自己的服务器或我们的托管服务;Expedia连接器在您的安装环境中运行。

  • 支付与PCI

    需要支付网关以及针对银行卡数据的PCI合规,Expedia会在上线时要求您提供证明。

常见问题

Expedia API对接常见问题

旅行社在申请前常问问题的简要解答。

联系销售

Expedia不对Rapid API访问收取公开费用。您需要获得批准的合作伙伴资格,并根据与Expedia商定的条款通过佣金或差价获得收益。您的成本是预订软件、托管和PCI合规。

通过Expedia Group合作伙伴解决方案申请成为合作伙伴。获批后,您将收到Rapid的API key和共享密钥,并可在上线审核前使用沙盒进行开发和测试。

Rapid是Expedia Group的REST和JSON API,用于以您自己的品牌销售旅游产品。它涵盖住宿、租车、机票和活动,提供搜索、价格复核、预订和管理调用。

EAN即Expedia Affiliate Network,是Expedia合作伙伴项目的旧名称。Rapid是当前的API;EAN这个名称仍保留在授权请求头和接口地址中。

如果旅客应在您自己的网站或应用上预订,请使用Rapid。如果您的代理在Expedia门户中为客户预订行程并赚取佣金,请使用TAAP。

有。发送到测试接口的请求不会产生真实预订或银行卡扣款,测试请求头还可模拟客房售罄或价格变动等结果。

从零开发需要数月。使用PHPTRAVELS,酒店流程已经就绪,时间主要用于配置、内容映射以及由Expedia安排的上线审核。

Expedia酒店流程已内置在住宿模块中。Rapid的租车、机票和活动可以作为定制集成,基于租车、机票和旅游模块添加。