机票业务
民航业是一个相对比较封闭的行业,专业性又非常强。机票在线预订也算得上是最早的电子商务形态,比互联网的应用可能早了20~30年。在这几十年的发展过程中,民航业以及机票分销经历了多次行业变革、地缘政治变化、市场经济调整、技术变革、企业管理变革等各种因素的影响,形成了现在的机票分销业务形态。
民航信息化
一个旅客出行前会有一个行程规划,然后到OTA(Online Travel Agent)网站去查询航班以及票价信息,然后选择合适的航班预订,下单,等待出票。在这个过程中,旅客跟航司之间需要有很多信息交互,首先是航司会定期发布航班计划(比如2020-06-01 15:30 北京首都 ~18:00 上海虹桥 CA1515),发布票价(票价主要跟舱位有关,拿电商的思路来理解,舱位就是航司的商品)。当旅客或OTA发起订票请求时,航司需要完成订票的处理(占座、扣减库存、出票等)。在这一阶段,对于航司来说,最重要的就是对航班库存的管理,需要建立一套库存控制系统。对于航司、OTA或旅客来说,需要一套在线订票系统来完成机票的销售。
PSS - 旅客服务系统
PSS:Passenger Service System,旅客服务系统,是航空公司IT架构中最核心的部分,它负责管理旅客与航司之间的所有交互,从订票到旅行的全流程都要跟PSS系统打交道;PSS不是一个单一的系统,通常由三大系统组成,分别是:
- CRS(Computer Reservation System):计算机订座系统,也叫代理人订座系统,是给代理商分销使用的订座系统,可查询航班计划、航班可用座位、票价信息、订座记录等,能够完成座位预订和航段销售;
- ICS(Inventory Control System):库存控制系统,也叫航空公司订座系统,是给航空公司工作人员使用的系统,用来发布航班计划、调整航班可用座位数、控制运价、收益管理、航空联盟、销售控制等;
- DCS(Departure Control System):离港控制系统,是给机场工作人员使用的,为旅客办理离港及其它相关服务的系统总称;包括值机手续、登机控制、航班配载平衡、行李处理、登机牌打印、行李牌打印等;
GDS - 全球分销系统
由CRS逐渐演变而来的,功能上和CRS类似,但CRS侧重于库存管理和订座,GDS侧重于分销;GDS的主要功能包括从旅客查询座位到下单支付出票以及售后的退票改签环节。另外,GDS除了分销机票以外,还会覆盖整个旅游领域,包括酒店、租车、火车、轮船等产品的分销。
GDS的主机系统通过连接到航司的CRS系统来获取实时的航班舱位信息(也就是库存),所以这里有一个很重要的区别就是CRS是真正拥有航司库存的系统(库存真正意义上来说是在ICS系统中),而GDS并不拥有库存,只是通过连接协议来获取库存信息。
国内航司除春秋航空、九元航空外,所有的PSS系统都是托管给中航信来建设和维护的,所以国内航司的数据全部在中航信的主机里面,即便是航司直销(旗舰店或航司官网),背后还是航信的PSS系统在处理,这对我们理解后续的机票业务流程很重要。
机票分销
分销模式
早期航空公司都是靠着代理商(国内主要是代理机构、国外主要是旅行社)来进行机票的分销,后来随着OTA平台的兴起,分销交互产生了变化。OTA平台是从OTA的基础上发展起来的,平台是一种撮合交易的模式,用流量变现,向商家收取佣金。拿电商来对比,苏宁易购、京东自营这种类似于OTA,淘宝、拼多多就类似于OTA平台,所以淘宝上也可以开苏宁的店。行业发展早期的时候,携程就是OTA,去哪儿就是OTA平台,但随着行业的变化,像去哪儿、携程、美团,基本都变成了即是OTA,又是平台的角色。即做自己接客的事(自营业务),又做平台模式,撮合商家和消费者。在提直降代的背景下,OTA平台也直接对接航空公司,建立航司旗舰店。至此,机票的线上分销基本就变成了下图这种模式。
业务模式
- 直接对接航空公司的官方接口,以旗舰店的形式售卖航司产品。
- 对接行业里的各级代理商,代理商在平台上投放自己的产品。
- 口直连型代理,这些代理有一定的研发能力或者是采用一些非正规渠道出票(比如网站抓取),可以通过接口的形式给平台提供数据
- 政策投放型代理,平台通过提供一个统一的政策价格计算引擎,方便代理商直接投放销售政策(返点+留钱)
- 自营业务,需要申请一级/二级代理资质。一级可以销售国际机票,二级只能销售国内机票,有了代理资质就有了office号和航协号
核心数据
机票分销行业信息化历史很悠久,系统信息化、标准化程度很高,作为OTA或OTA平台,就是个中间商,不掌握机票核心数据。类比电商系统,除了价格和库存两个要素,主要的区别在于机票中的产品指【航班+舱位】,对乘客来说购买的是飞机上的一个座位。
国内航空数据基本都在中航信的系统里,抓取数据早前是用 eterm 黑屏终端软件,后来又推出了以互联网接口形式的 IBE+ 系统。OTA需要定时抓取+缓存数据,不同渠道的数据成本不一样,都是按调用量收费的。而航拓的放大配置是用来多工发送 eterm 命令,提升抓取效率的。
航班 SK
航班信息主要包括航班时刻和航班状态,简称SK,比如【2020-06-04 07:45~10:00 HU7605 BJS-SHA】。SK决定了旅客出行的时间安排、飞行器信息。国内航班时刻都来自中航信系统,通过黑屏系统指令获取(可以认为是航司的CRS系统);国际的航班时刻来自OAG这家公司,它覆盖了全球900多家航空公司的航班时刻数据,
航班时刻
航班计划的一种表现形式,以制定航班时刻表的形式公布。完整的航班计划包括:
- 航线:由出发地城市机场 + 目的地城市机场组成,行业里叫OD(Origin-Destination)
- 航班:以航班号为标识,由航空公司二字码和数字组成。数字国内4位,如MU7889,国际3位如CA982
- 班次:指航班频率,每周班次的确定会根据航空公司的运量、运力、机型和经济效益等因素来安排。
- 班期:航班的飞行日期。
- 机型:不同的机型有不同的飞行性能(如小时耗油量、航程、升限、最大起飞全重、爬升能力等),对应不同的飞机座位数、不同座舱布局,运营成本也不相同。
民航局每年会召集各航空公司人员开两次会议来商定各家航司的航班时刻,分别是夏秋季,北京上海广州的时刻由民航总局审批,其它由地方管理局审批。航班时刻作为一种稀缺资源,它的分配策略目前世界上存在两种模式:一种是IATA模式(欧洲以及中国采用此模式),按照固定的优先顺序进行行政性分配;一种是美国模式,在行政性分配基础上增加了市场化配置手段,也就是航司之间可以进行航班时刻的交易。
航班状态
航班状态是跟旅客真正飞行过程紧密相关的信息,包括航班实际起飞、实际到达、延误、取消、备降、返航等;
运价 FD
机票的价格,专业术语叫运价。运价是一个统一的叫法,包括基础票价、附加费和税费。运价的核心要素包括运价、规则、航线路径,也就是从xx到xx的某条航线路径上,满足xx规则的情况下,运价是xx。
国际机票的运价,是没有折扣的说法的,但是也分头等舱、公务舱、经济舱三大类,相较于国内机票,复杂度更高,影响因素有35类,运价数据达到亿级别、运价规则有2亿之多。因此需要设计一套复杂的大规模计算引擎来实现运价的计算,这套运价计算系统业内称为shopping系统,就是负责国际机票运价搜索的。
国际主流的GDS,包括国内的中航信,几乎都是从ATPCO这家公司获取国际运价数据。
运价分类
FD:公布运价,也叫基础运价,是航司发布出去,所有渠道、所有代理商都可以看到的运价,包括其它竞争的航司也可以看到这部分运价。
NFD:私有运价,也叫文件运价,是指航司为了提高销量或客座率,把一些折扣比较大的运价以文件形式发给跟航司关系比较紧密的某些渠道或某些代理商,其它渠道或代理商是看不到这部分运价的。
Shopping:其实是用【运价 + AV】计算来的,意思就是找到指定日期下的多个最低价(不同航班组合就有不同的最低价),是一个机票搜索功能;
票价
机票价格不等于运价,票价是在运价的基础之上根据各种优惠、折扣、营销政策(留点+反钱)而计算得到的销售价格,是旅客购买机票实际支付的价格,背后也需要一套复杂的政策计算引擎来完成这项工作。
运价+政策 = 票价
舱位 AV
Availability的前两个字母缩写,座位可用情况,可以类比成商品的库存。AV在eTerm里是个指令,用来查询具体某个航班下各舱位还有多少座位可用。
OTA 平台不掌握实际的库存信息,包括平台上的商家也不掌握,真正的库存信息都在航司,具体的说在航司的ICS系统里,而大多国内航司的ICS系统部署在中航信的主机上,与中航信的GDS系统通过协议共享数据,中航信的GDS又与其它GDS系统共享数据。
因为不同系统间传输协议等级不一样,库存数据就不一定能及时地同步到各个GDS中,不同代理人通过不同GDS看到的库存信息就会不一样。另外,航空公司工作人员会根据航班收益管理系统来预测和判断未来一段时间,哪些舱位(也就是价格)应该释放出来,应该放出多少座位,这也会导致库存的变化。所以如何保证库存及时准确,尽量减少超售或座位空置的情况是整个机票分销环节非常难的一部分。
舱位分类
大部分情况下,飞机上真实的物理座位就三种:经济舱,商务舱,头等舱。它们的座位大小不同,舒适度不同,服务种类也不同。但其实航司的舱位类型比三种多多了,主要原因是在基础的物理舱位上,航空公司包装出来了不同的销售策略,可以理解为机票不是单纯的买座位,买的其实是一种包装出来的产品,一种服务。
F:6,U:C,J:A,C:A,D:A,Q:A,I:A,W:C,P:Q,Y:A,B:A,M:A,E:A,H:A,K:A,L:Q,N:Q,R:Q,S:Q,V:Q,T:Q,G:Q,Z:Q
比如E舱和M舱都是经济舱,但是E舱票价贵,但是可能退票费和改签费要便宜,M舱虽然票价便宜,但是如果未来你要改签或者退票,要收取更贵的退票费和改签费。航司会根据当时的销售情况,动态的调整舱位的开关状态,以此来获得更高的利润。
舱位状态
理论上舱位分:可售卖状态、不可售卖状态,实际上需要更多的状态标识来优化运营。
A 可以提供 9 个以上座位
1-9 可以提供 1-9 个座位,这种情况下系统显示具体的可利用座位数
L 没有可利用座位,但旅客可以候补
Q 永久申请状态,没有可利用座位,但可以申请(HN)
S 因达到限制销售数而没有可利用座位,但可以候补
C 该等级彻底关闭,不允许候补或申请
X 该等级取消, 不允许候补或申请
Z 座位可利用情况不明,这种情况有可能在外航航班上出现
舱位缓存
作为商业产品,GDS通过按流量收费模式获取收益,一般有两种收费规则:
- 面向航空公司收取分销费用,也就是每产生一个预订,就像航空公司收取一定的费用;
- 面向代理人(OTA)收费流量费用,按照数据查询量收取流量费用,这里一般会有查订比,超出查订比的部分额外收费;
所以,对OTA来说,就要考虑查询流量的问题,每天都有大量的机票搜索请求,每一次航线日期的查询都要展示大量的航班库存信息,但是真正预订机票的用户并没那么多,查询/预订的比例很容易超出GDS的限制。所以,OTA一般都会在本地系统增加一个缓存,来达到提升接口性能、降低数据查询成本的目的。如何让数据刷新实现效率最大化(用最小的刷新量实现最大的数据准确性),是库存系统技术上最大的挑战之一。
另外,机票的库存分为两部分,一部分是公共库存,也就是散客票,另一部分是各旅行社或OTA的私有库存,就是团队票,也叫包机/切位,一般是旅游线路的包机。包机是指把整个飞机的所有座位包下来,切位是包下飞机上的部分座位。这部分库存信息,除特定OTA外,平台和其它OTA是看不到的,也就不能售卖。但有时候因旅客行程变更导致座位浪费,出于成本考虑,通常会把空出来的座位在互联网平台上投放出去,尽量弥补损失。
专业术语
- PNR
Passenger Name Record,旅客订座记录,包括旅客的行程日期,航班座位占用的数量及旅客身份证件信息;一个订单可能对应多个 PNR(成人/儿童),一个 PNR 可以是多个乘客的订座信息。只要订座了就会产生PNR,可以不支付。 - SS
黑屏系统的一种指令,用于生编占座,SS之后会生成一个PNR - RT
提取PNR,查看PNR的一个状态,如果PNR状态不对的话,说明是生成的PNR是有问题的 - 票号
旅客在支付成功后,系统出票,会产生一个电子票号,这是真正的乘客乘机凭证,只有票号才能办理乘机手续。每个乘机人对应一个唯一的票号。 - Open票:从购票之日起未使用的机票,有效期为一年;
- 签转:更改航空公司;
- K位:向航司申请低折扣的票;
舱位介绍
包括舱位等级(舱等)和舱位代码(舱位):
- 舱等:指舱位等级,一般包括头等舱、商务(公务)舱、经济舱三种;
- 舱位:指舱位代码,也叫子舱位,是某一个舱等下的细分舱位,在国内机票销售中,不同的舱位代表了不同的折扣(各家航司有差异);
一个字母代表一个价格,字母后面有一个数字代表数量。约定俗成的以Y为票价的全价,后面9折、8折、7折分别有不同的字母代表,而各个航空公司根据各自喜好排列出相应地舱位表,但大部分航司排列都类似,而且两个临近舱位之间的折扣差为一个折扣左右。
舱位状态:
- A:Available,舱位可售,当可售座位数小于10时,直接显示数字,否则显示A;
- Q:永久申请状态,无可用座位,但可申请;
- S:因达到限制销售数而没有可用座位,但可候补;
- L:无可用座位,但可候补;
- C:该等级彻底关闭,不可申请和候补;
九大航权
航权,也称航空自由权(Freedoms of the Air),是世界航空业通过国际民航组织(ICAO)制定的一种国家性质的航空运输权利,因为航空运输只要超出自己的国界就涉及到其他国家的主权,国际航空运输就需要一个在全球行业范围内有一个统一的规定,航权就属于这个规定其中的一部分。在不同的两个国家交换与协商这些权利时,一般采取对等原则,有时候某一国会提出较高的交换条件或收取补偿费以适当保护该国航空企业的权益。
第一航权: 领空飞越权
各个FIR提供区域内飞航情报服务和告警服务。国际航线不可避免地要涉及它国控制的情报区,第一航权即为飞越非本国情报区的权利。
第二航权: 技术经停权
飞往外国途中,因技术需要(如添加燃料、飞机故障或气象原因备降)在协议国降落、经停,但不得作任何业务性工作,如上下客、货、邮。
第三航权: 目的地下客权
飞机可以在协议国境内卸下乘客、邮件或货物(本国装载客货飞协议国)。
第四航权: 目的地上客权
飞机可以在协议国境内载运乘客,邮件或货物返回(协议国装载客货飞本国)。通常来说,第三航权和第四航权是同时具备的。
第五航权: 中间点权或延远权
承运人从本国运输客货到另一国时可以将第三国(也就是始发地国家和目的地国家以外的其他国家)作为中点 (转) 站上下客货,再到达目的地国。或者,承运人将自己国家始发的客货运到协议国家,上客货后,可以运到第三国。该航班的出发地必须为该外国航空公司的所属国家。第五航权是针对两个国家的双边协定而言的,在两国的协定中允许对方行使有关第三国运输的权利。但是在没有第三国同意的情况下,这个权力等于没有。
第六航权: 桥梁权
某国或地区的航空公司在境外两国或地区间载运客货,但途中必须经过登记国(此为第三及第四自由的结合)的权利。
第七航权: 完全第三国运输权
在境外两国或地区间载运客货而不用返回本国。
第八航权: 境内运输权(连续的国内运输)
某国或地区的航空公司在协议国或地区领域内的两个或两个以上机场间载运客货的权利,须以本国为起点或终点。
第九航权: 完全境内运输权(独立的国内运输)
在协议国内的两个或以上机场间的航线,无须涉及承运人注册国。
国际运价计算引擎
国际运价计算引擎,是国际机票业务核心的基础服务。旅客在输入出发地目的地的条件下,系统通过一系列的组合计算,为旅客寻找最便宜的航班报价。早期,该环节的技术服务,由全球分销商(GDS)统一掌握,但随着互联网的发展,传统的GDS报价已经无法满足航空公司及OTA的销售意图,技术能力强大的OTA(携程,去哪儿,飞猪)也在做自己的国际运价计算引擎,来满足各自的业务需要。
技术挑战
国际航班报价搜索是个“NP-complete problem”,难度主要体现在以下四点。
- 数据量大&计算量大 :全球海量的路径(600万+)、航班(700万+)、运价数据(2亿+)、规则(2亿+);以上图PEK-IAH举例:系统侧的计算量理论最大可达5亿次,实际经过预处理和计算过程策略优化后,单程计算量最大为900W次;
- 数据更新频率快:运价、航班变化频繁,库存数据实时变化;
- 规则复杂:国际机票业务规则航司迭代时间久远,共35类规则限制,逻辑复杂;
- 高性能要求:用户响应时间敏感,秒级以内的性能要求。
下图为报价搜索系统的一个流程图例,以北京到休斯顿的一次搜索为例,需要在400毫秒的时间内进行5亿次的运算。