読者です 読者をやめる 読者になる 読者になる

O-Lab +Ossan Laboratory+

Ossanの研究所です。

奈良交通で本来使用できないICカードで精算がされてしまった事象の話。

駄文

奈良交通との相互利用がまだ開始されてない交通系ICカード
乗降時に精算できてしまった、という事象のお話。

srad.jp

システムの不具合により、ある日の一部のバスで本来はサポートしていない
Suica」「PASMO」「manica」で運賃清算されたことが判明したという。


で、相互利用ができないカードで精算してしまった?
どういう意味?お金はどうなるの?という話が、
スラドにも出てますが、基本的に精算した利用者は何も影響はなく、
影響があるのは、奈良交通と相互利用が行われていない
ICカード事業体側との間で利用料金をどうするのか、という話だけです。


交通系ICカードに以前関わっていたのですが、
その当時と仕組みが大して変わってない、という前提で、
以下、ざっくりと解説します。

ICカード内にチャージされている金額は「お金」ではない。

まず初めに、この点を理解する必要があります。


ICカード内にある金額、例えば「1000円チャージ済」状態は、
ICカード内に1000円があるわけではありません。
1000円分の何か(商品、サービス)と交換できる権利がある、
という情報が入っている、というだけでしかありません。


では、チャージした際の1000円はどこにあるのでしょうか?
それはICカードにチャージした時にお金を渡した事業体にあります。


ですので、仮に1000円チャージされた、
本来は奈良交通で相互利用できないはずのICカード
利用者が仮に運賃200円を精算したとして、
利用者はICカード内に残り800円の利用権限がある、
という状態になっている事は何も問題がありません。

問題は、奈良交通がスムーズに請求できない、という点のみ。

本来は相互利用できないICカードを使って奈良交通で精算した場合、
奈良交通には先ほどの例だと「利用者より200円分の権利行使があった」
という記録が残っただけです。


問題は、この「利用者より200円分の権利行使があった」という記録を元に、
200円を奈良交通が別事業体へ請求可能なのか?という点だけになります。
相互利用可能状態ならば、仮にSuicaで精算されたのであれば、
Suicaを運用する事業体へ「利用者より200円分の権利行使があった」記録を元に、
「200円の現金をちょうだい」と、奈良交通が請求するわけですが、
相互利用の契約がない状態で請求が可能なのか?という事ですね。

ICカードを利用しても、即時決済されない。

さて、ICカードの利用者がよく勘違いしているのが、
「200円を使った」場合に即時に事業体間で精算が行われる、
という点です。


実際には即時には行われません。
一旦、券売機や改札機など、各機器でチャージや精算の情報を保持して、
一定時間ごとのバッチ処理で金額情報がやりとりされます。


ですので、ネガティブな情報(紛失されたカードの利用停止情報など)も、
この形で一定時間ごとに各事業体間でやりとりされ、
各駅にあるサーバ間でやりとりされ、各機器にまで降りていきます。


これらの仕組みは「社局サーバ」という単語で検索してみてください。
以下のような情報が公開されています。

PASMOは何ができるのか――交通ICカードPASMOを徹底検証する。
http://www.mintetsu.or.jp/association/mintetsu/pdf/26_p08_15.pdf


興味がある方は調べてみてはいかがでしょうか。


追記。

スラドに以下のようなコメントが。

http://srad.jp/comments.pl?sid=668577&cid=2891640


> 他社地域のカードを使えるようにするには、
> あらゆる駅での乗り降りで正しく運賃が計算できる必要がある


乗換改札なしに乗り入れをするならその通りでしょうけど、バスの場合は車への乗降レベルで料金計算が完結してるんだから、そんな追加コストは発生しないでしょう。


すでにCI-CA/PiTaPa/ICOCAの料金収受システムは導入しているので、Felicaに対する引き落とし元データ領域として他の電子マネーに対応すればいいだけ。


残念ながら、間違いです。
改札機の乗降データや券売機での利用情報をパターン別に作成し、
ICカードに状態を記録して、他の事業体へ郵送して精算テストを実施してもらいます。
テスト実施のための追加コストは発生します。


私が某私鉄でテスト実施した際は、100枚単位でICカードを作成してテストを実施しました。
他の私鉄からも送られてきます。それを自社のシステムで精算処理、また送り返します。
日付もいじくり倒してテストします。
日をまたいで精算した場合の処理、年末年始の深夜運転時の精算処理、
パターンは最小限度に絞ってもかなりのものになります。


そもそもノーテストで運用開始される事など、絶対的にありえません。
不具合が発生すれば新聞やテレビで報道されるレベルの問題になります。
交通系のシステムはそんなに甘いものではありません。