飛行機の搭乗券に印刷されたバーコードには、どんな情報が入っているか?

飛行機に乗る際に発行されるチケット、つまり搭乗券。

この搭乗券には大抵、バーコードが記載されている。

そして、そのバーコードには色んな情報、例えば氏名やマイル口座番号、行き先や出発日などの情報も含まれるらしい。

詳しくはWebをチェック↓

飛行機の搭乗券に印刷されたバーコードを読み取ると個人情報など意外にも多くの情報が書かれていた – GIGAZINE

さて。

ちょっと気になったので、実際に自分の搭乗券のバーコードを読み取って、どんな情報が入っているか確認してみた。

そのメモにて。

搭乗券のバーコード(PDF417/QRコード)

ANAの国際線の搭乗券は、便名や座席番号の他に、下記のようなバーコードが記載されている。



https://www.ana.co.jp/amc/reference/tameru/flightmile/int/retro.html

※これはあくまでサンプル画像です

このバーコードのフォーマットは、「PDF417」

世界的によく使われている2次元バーコードの一種。

PDF417|アイニックス株式会社


国内線チケット(ANA)の方はどうだろうか?



https://www.ana.co.jp/domestic/promotions/airport_renewal/checkin/

※これはあくまでサンプル画像です

こっちのバーコードは、「QRコード」

日本のデンソーが作った2次元バーコードの仕様である。

QRコード – Wikipedia


「PDF417」であれ、「QRコード」であれ、この中には情報が入っているんだな。

そして最近では、スマホアプリのバーコードリーダーで簡単に内容を読み取ることができる。

アプリは「PDF417」とかで検索すれば色々見つかる。

自分が今回使ったのは、「Scandit」というアプリ。

iPhone – Scandit Barcode Scanner

Android – Scandit Barcode Scanner Demo

こうしたアプリで実際にバーコードを読み取ってみると、以下のようなアルファベットと数字の羅列がでてきた。

M 1 TANAKA/TARO E XXXXXX HND SIN NH 0843 214 Y 010K 0031 1 XX >5 XX X 7214 B XX NH NH XXXXXXXXXX Y * X X XX XXXXXXXXXX

※サンプル文字列です

この時点で、名前などが見て取れるんだが、他の文字列にはどんな情報が入っているのか?

データフォーマットが分からないと、意味が分からないが・・・。


BCBPのデータフォーマット

こうした「搭乗券のバーコード」のデータ・フォーマットは、BCBP(BAR CODED BOARDING PASS)として規定されていた。

バーコード・ボーディングパス=BCBP。

仕様書は、IATAからpdfでゲット可能。

BAR CODED BOARDING PASS(BCBP) IMPLEMENTATION GUIDE

上記のpdfでフォーマットについての記載があるのは「4.2.2. Encoding one flight leg」の項。


注意点として、BCBPのフォーマットにはバージョンがある。

上記の仕様書は、ver5のもの。

BCBPの文字列の中にある「>」の後に続く文字がバージョン番号を示している。

M 1 TANAKA/TARO E XXXXXX HND SIN NH 0843 214 Y 010K 0031 1 XX >5 XX X 7214 B XX NH NH XXXXXXXXXX Y * X X XX XXXXXXXXXX

※サンプル文字列です

ANAのチケットのバージョン番号をみたら「>5」(ver5)とあったので、↑の仕様書でそのまま中身を把握できそう。

ということで、最近使った自分のチケット(ANA国際線/国内線)から、データの詳細を見てみる。


実際の搭乗券から読み取ってみたデータ

以下は、自分が今年になってから乗った国際線(PDF417)/国内線(QRコード)の搭乗券から読み取ったデータ。

(両方ともver5であった)

便名や名前などは、適当に文字を修正している。

そのほか「X」は、適当な修正候補がないので、とりあえず伏せ字とした箇所。

「-」は、「半角空白文字」が入っていたか、値が入ってなかった箇所。

項目 文字数 実際のチケット 意味
Format Code 1 M [s]ingle leg か [m]ultiple legsか
Number of Legs Encoded 1 1 記載されるレグ数
Passenger Name 20 TANAKA/TARO 氏名
Electronic Ticket Indicator 1 E [E]チケットを意味する
Operating carrier PNR Code 7 XXXXXX PNRコード(予約番号)
From City Airport Code 3 HND 出発地の空港コード
To City Airport Code 3 SIN 目的地の空港コード
Operating carrier Designator 3 NH 運行会社(NH=ANA)
Flight Number 5 0843 便名
Date of Flight (Julian Date) 3 214 出発日(ユリウス通日)
Compartment Code 1 Y 座席クラス
Seat Number 4 010K 座席番号
Check-in Sequence Number 5 0031 チェックイン番号(連番)
Passenger Status 1 1 乗客ステータス(定義不明)
Field Size of variable size field
(Conditional + Airline item 4)
2 XX 以降のデータサイズ
Beginning of version number 1 > バージョン番号開始文字
Version Number 1 5 BCBPバージョン
Field Size of following
structured message – unique
2 XX 以降のデータサイズ
Passenger Description 1 X 乗客についての備考番号?
Source of check-in 1 チェックイン場所
Source of Boarding Pass
Issuance
1 搭乗券の発行場所
Date of Issue of Boarding Pass
(Julian Date)
4 7214 搭乗券の発行日(ユリウス通日)
Document Type 1 B [B]ording Pass?
Airline Designator of
boarding pass issuer
3 XX 搭乗券の発行会社?
Baggage Tag Licence
Plate Number (s)
13 バゲージタグの番号
1st Non-Consecutive
Baggage Tag Licensce Plate Number
13 1つ目の荷物の番号
2nd Non-Consecutive
Baggage Tag Licensce Plate Number
13 2つ目の荷物の番号
Field Size of following
structured message – repeated
2 以降のデータサイズ
Airline Numeric Code 3 航空会社番号
Document Form/
Serial Number
10 文書のシリアル番号
Selectee indicator 1 なんかインジケータ
International Documentation
Verification
1 なんか証明的な
Marketing carrier
designator
3 NH 販売元
Frequent Flyer Airline Designator 3 NH FFP会社
Frequent Flyer Number 16 XXXXXXXXXX マイル口座番号
ID/AD Indicator 1 なんかインジケータ
Free Baggage Allow ance 3 無料荷物の数
Fast Track 1 Y Fast Trackが使えるか?
For individual airline use Var X 以降、セキュリティーデータ
Beginning of Security Data 1 X
Type of Security Data 1 X
Length of Security Data 2 XX
Security Data 100 XXXXXXXXXX

※「文字数」の定義通り、半角空白で埋めてあったりする

ユリウス通日は1/1からの通算日。例えば「7214」の場合、201[7]年の「214」日目という意味。3桁の場合は「年」なしで通算日のみ。

※データサイズを示す項などの数字は16進数で、例えば「D6」=「214」

※途中でデータシーケンスについていけず、放棄した箇所もあり

航空会社によって、使っている項目と使ってない項目があるっぽい。

ブッキングクラスとか書いてあるのかな?と思ったんだが、そうでもないようだった。

バゲージタグの番号が空白だったのは、なんでかな。

オンラインチェックインとかすると、荷物預ける前なので空白になるとかあるんだろうか。

ちょっと気になるのは、「Passenger Status」(乗客ステータス)かな。

どういう意味があるのか、ちょっと分からなかった。

「Fast Track」あたりも定義不明。

「Y」だと、ダメってことなのか?

どうなんだろう。

ちょっと国際線・国内線の1チケットずつしか確認してないので、定義が分かんないところがちょこちょこあった。


そんな感じ。

この記事を書いた人 Wrote this article

tonogata
TOP