定期券を考慮した運賃の取得方法
公共交通機関を用いたルート算出のレスポンスから、定期券指定区間を除いた運賃を取得する方法についてご紹介いたします。
前提
- 定期券を考慮するには、定期券区間をパラメータとして入力してください。
- パラメータに設定する路線ID(link)は、定期券区間が成立する路線単位で指定してください。
- 例:京成線 京成高砂駅~京成立石駅 間で定期券区間を設定する場合、以下の2区間を定期券区間として指定する必要があります。
- 区間1 京成本線 京成高砂〜青砥
- 区間2 京成押上線 青砥〜京成立石
- 例:京成線 京成高砂駅~京成立石駅 間で定期券区間を設定する場合、以下の2区間を定期券区間として指定する必要があります。
- 定期券区間を指定した場合は「定期券区間をより多く通っている経路」から出力されます。
- 必ずしも定期区間を通る経路が出るわけではありません。
- 経由地を指定した場合「定期券を使用した場合の値段についての情報(faresオブジェクト)」は出力されますが、定期券区間を考慮したルートは出力されません。
- 運賃区分については、「/fare_table」APIで詳細情報を取得できます。
定期券区間の指定する
定期区間を以下のように指定します。
パラメータ構成例
・出発駅:北千住、到着駅:渋谷、定期区間:北千住~表参道
/route_transit?start=00008355&goal=00003544&start_time=2020-08-01T08:00:00&commuter_pass=[{"start":"00008355","goal":"00007820","link":"00000113","direction":"up"}]
JSON表現はURLエンコードをした上でリクエストしてください。
レスポンスからの定期券考慮運賃の読み取り方
定期券区間をパラメータとして指定し、対象区間を通るルート結果が得られた場合、レスポンスに「定期券考慮運賃」が出力されます。
■定期券を考慮した運賃計算結果を読み取る場合、現金運賃とIC運賃で扱いが変わります。
1.現金運賃+磁気定期券
定期券区間を考慮した場合の現金運賃額は、キップを購入するタイミングで変わるため、どの金額を正とするかは、当社APIを利用するシステムでの用途に応じて検討してください。
① 乗車駅で降車駅までのキップを通しで購入する場合
「items>summary>move>fare」配下に出力される運賃が経路全体の運賃となります。
② キップと定期券を併用して降車駅で精算する場合
「items>fares>transport>fare」配下に出力される定期区間外の金額をすべて合算した運賃が、経路全体の運賃となります(①の運賃よりも高くなることがあります)。
2.IC運賃(IC定期券を利用)
- 「items>summary>move>fare」配下に出力される運賃と、fares配下に出力される定期区間外の金額をすべて合算した運賃を比較し、安価な方の金額が適用されます。
- 「items>summary>move>fare」配下に出力される運賃の方が安い場合、こちらの金額が「定期券区間考慮運賃」となります。
経路例: 北千住 ⇒ 渋谷(東京メトロ千代田線と半蔵門線を利用)
- 経路の概要
- 定期券区間は「東京メトロ千代田線 北千住~表参道」間とする。
- 北千住~表参道間は定期券区間「内」となり、運賃は「0円」となる。
- 表参道~渋谷間は定期券区間「外」となり、普通運賃(170円)/IC運賃(168円)となる。
- 運賃の読み取り方
- 運賃計算例をご確認ください
補足
- 運賃計算結果の見方は、運賃計算結果の見方についてでも説明していますので、ご確認ください。