一方、三大メガバンクの1つ三菱UFJ銀行はどのように更新系APIについて取り組んだのだろうか。ジャパンネット銀行との類似点が多くありつつ、独自の取り組みや課題が見られるので、その点に注目してほしい。
三菱UFJ銀行が2017年3月6日に業界に先駆けて更新系APIの公開を発表した背景には、三菱UFJ銀行が2015年から実施しているFinTechに関するコンテスト「FinTech Challenge」があったという。
「『FinTech Challenge 2015』では、コンテスト用のサンプルAPIを公開したが、その時点で振込業務をAPI連携で自動化するアイデアが出てきていた。そして、2016年の『FinTech Challenge 2016』で、銀行APIを利用したコンテストを行ったところ、振込業務のAPI連携のニーズがさらに高まっていることを実感し、更新系APIの公開が必要不可欠であると確信した」と話すのは、三菱UFJフィナンシャル・グループ デジタル企画部 プリンシパルアナリストの藤井達人氏だ。
三菱UFJ銀行はまず、法人向けインターネットバンキング「BizSTATION」の新サービスとして、2017年4月に、参照系と更新系のAPIサービスを追加。参照系では、「残高照会」「入出金明細照会」「振込入金明細照会」に対応。更新系については、「振込申請」のサービスを提供している。
三菱UFJフィナンシャル・グループ デジタル企画部 事業開発グループ 調査役の柳澤隆氏は、ビジネスの観点からその重要性を訴える。
「参照系のサービスは、家計簿ソフトベンダーなどが既にスクレイピングで実現していたものであり、APIを連携させてもユーザーにとってはあまり変化がない。一方で、更新系は、お金を動かす振込業務がアプリからできるようになり、ユーザーの利便性を大幅に高めることができる。また、更新系APIの公開を通じて、振込サービスの利用者が増加し、振込手数料の収入拡大につながるなど、ビジネス面でのメリットにも期待できると考えた」
改正銀行法の影響については、柳澤氏は「三菱UFJ銀行は、2015年からAPI公開のプロジェクトを進めており、法律が後から追いついてきたと感じている。今回の改正では、決済代行業者が登録制になるため、信頼のおけるパートナーとAPI連携が可能になるという点についてはうれしく思っている」と、ジャパンネット銀行と同様な意向を示した。
改正銀行法の成立を受け、三菱UFJ銀行は2018年2月19日に「電子決済等代行業者との連携及び協働に係る方針」を公表した。APIを連携させる決済代行業者に求める基準について、柳澤氏は次のように補足する。
「全国銀行協会による利用者保護に対応していることが1つの基準になる。特に、セキュリティ面を含めたシステム運用体制や利用者へのサポート体制がしっかり整っているかどうかを重視する」(柳澤氏)
三菱UFJ銀行が公開している更新系APIの仕様は、セキュリティにはOAuthを使用、APIの連携方式はREST APIに対応。また、BizSTATIONのハードウェアトークンをそのまま利用することで、API連携サービスにおいても、従来と同等のセキュリティレベルを担保している。一方で、BizSTATIONの利用端末からOAuth認証をした後は、90日間はデバイスフリーで事業者が提供するアプリを利用できるようになり、ユーザーの利便性向上も実現している。
今後の展開としては、「BizSTATION」向けに、総合振込申請や給与振込申請のサービスを提供する予定だ。
「今後も随時コンテストやミートアップを実施する他、オープンイノベーション施設も活用し、FinTech企業などとのディスカッションを通じて、より使いやすいAPIを開発、提供する。改正銀行法の施行を受けて、各銀行が更新系APIの公開を進めているが、ビジネス展開のアプローチはそれぞれ異なってくると考えている。API公開を通じた課金サービスによるマネタイズを見込む銀行が多い中で、当社では、これまでの『銀行店舗』『ATM』『ネットバンキング』に次ぐ第4のサービス基盤として銀行APIを位置付け、FinTech企業と連携しながら新たなビジネスを創出したい」(藤井氏)
事業部側がAPIの公開によるAPIエコノミーの形成を進める一方で、三菱UFJ銀行をはじめとする三菱UFJフィナンシャル・グループのIT戦略を支える三菱UFJインフォメーションテクノロジーにとっては、外部へのAPI公開は未知の領域であり、全く社内にノウハウがない中で、まさに手探りでのスタートだったという。
三菱UFJ銀行では、システム連携の仕組みとしてSOA基盤を利用しており、通信プロトコルはSOAP、データ形式はXMLを採用していた。この古いWebサービスのインタフェースを、そのままAPIとして公開しても、外部企業に使ってもらうのは難しいという声が社内から挙がった。
「そこで、銀行APIの開発に当たり、要件定義の段階でクローズドβを提供するプログラムを実施するなど、技術検討を進めていった」と振り返るのは、三菱UFJインフォメーションテクノロジー チャネル基盤部 マネージャー(調査役)の佐々木敦氏だ。
クローズドβ版のテストは、銀行APIの利用が見込まれるFinTechスタートアップを中心に実施。また、外部アドバイザーとして、パートナー企業にもクローズドβテストに参加してもらい、公開版APIの要件定義を検討していった。この段階で、権限認可の標準プロトコルとして「OAuth」を使用し、APIの連携方式には「REST API」を採用することを決定したという。
「通常のシステム開発では、新しい要素技術を使う場合、横軸に要素技術、縦軸にセキュリティ要件などを並べて、2次元でPros and Cons(プロ・コン)を行う必要があり、開発開始の検討に半年以上の時間を要する開発案件もある。今回のAPI開発では、クローズドβテストを通じた、短期間での技術の検証と要件定義を進めることができたため、スピード感をもって開発に着手することができた。従来のシステム開発とは異なるプロセスで要件定義フェーズの大幅短縮を実現した」(佐々木氏)
次の開発フェーズについても、従来はシステムの仕様も含めてベンダーに一括で開発を外注していたが、今回は新たに銀行API専門の開発チームを設置。これに合わせて、外注先の開発ベンダーも、インターネットバンキングの開発を手掛けたベンダーではなく、API開発のノウハウを持った新規ベンダーに変更している。
三菱UFJインフォメーションテクノロジー 法人チャネル部 マネージャー(調査役)の新藤澄人氏は、銀行APIの開発プロセスについて次のように説明する。
「新たな開発チームは、意思決定権を持つマネジメントの直下に組成し、週次でミーティングを行い、短いサイクルでAPIの仕様を決定。この仕様をベースにβプログラムを作成し、外部の開発ベンダーに設計・開発を依頼する体制をとった。開発ベンダー側は、インターネットバンキングのモデル分析を行い、βプログラムをAPI化できるかどうかを判断。難しい場合は、クローズドβテストの参加企業に確認し、APIとして必要不可欠であれば、代替策を検討していった」
例えば、2つの情報を取得する仕様のAPIをβプログラムで作成し、開発を依頼したが、実際にはどうしても1つの情報しか取得できないといった場合には、それを補う新たなAPIを検討。これによって、βプログラムの仕様を満たせると判断した段階で、正式にベンダーに開発を依頼するという流れだ。
佐々木氏は、今回取り組んだAPI開発の手法を「アジャイルとウオーターフォールのいいとこどり開発」と表現する。つまり、要件定義と基本設計までは、コンテストやクローズドβテストによってアジャイル的に開発を進め、仕様が固まった後は、ウオーターフォール型で外注による設計・開発を行うのだ。
「APIは公開するだけではなく、開発者に使ってもらわなければ意味がない。それだけに、要件定義のフェーズをアジャイル型にして、開発者の意見や要望をできるだけ取り入れるようにした。この開発手法が、当社にとっての銀行API開発の最適解であり、最短ルートであったと確信している」(佐々木氏)
また、同社がスピーディーかつスムーズに銀行APIを開発、公開できた背景として、ジャパンネット銀行同様、既存のインターネットバンキングのシステム基盤をベースにAPI接続を行った点も見逃せない。
勘定系システムとAPI接続すれば、さらに詳細な機能や情報を銀行APIで提供できるようになるが、開発期間が非常に長くなってしまうという課題があった。
「特に、当社のような超大規模で安定性を重視した勘定系システムに手を加えるには、多大なコストとリスクも伴ってくる。そのため、今回は開発スピードを優先し、インターネットバンキング基盤とのAPI接続を選択した。現在公開している参照系APIの『入手金明細照会』サービスでは、前月分までの明細情報を閲覧できるが、これはインターネットバンキングの情報をAPIで公開しているからだ」(新藤氏)
具体的な仕組みとしては、インターネットバンキングのWebアプリケーションサーバに銀行API専用の接続口をREST APIで作り、そこからAPIゲートウェイ経由で外部に情報を公開している。REST APIから金融情報を呼び出す部分については、既存のインターネットバンキングの内部APIを活用し、勘定系システムの情報をREST APIへとつないでいる。
「もともとインターネットバンキングでは、勘定系システムと連携させる内部APIを用意しており、APIのロジックと画面作成の機能を分離することで、用途に応じて再利用しやすい仕組みになっていた。例えば、PCのブラウザ画面では、サーバ側が画面を作って照会情報とともに返している。これに対してスマホアプリでは、照会情報だけを内部APIでやりとりし、画面はアプリ側で作る。この内部APIの仕組みをそのまま活用しながら、照会情報を外に出す接続口をREST APIで作るだけでよかったことも、開発期間の大幅な短縮につながった」(新藤氏)
加えて、APIゲートウェイには、海外の省庁でも採用されるレベルの製品を設置。管理ツールについては、トラフィック管理だけではなく、スパイク防御、DDoS攻撃対策などのセキュリティ管理のパッケージ製品も組み合わせ、万全なAPI基盤を構築した。その理由は「短期間での開発を行うために、APIゲートウェイや管理ツールにはベンダー製品を利用した」(藤井氏)という。
一方で、インターネットバンキングをベースにした銀行APIは、今後のビジネス展開では大きな課題も抱えている。
「インターネットバンキングと同じ情報を提供しているだけでは、エンドユーザーから、『思っていたほど利便性が上がらない』『新しいサービスだが面白くない』『付加価値が見込めない』など、マイナスイメージを持たれてしまう可能性もある。今はまだ銀行APIを公開したばかりだが、将来のビジネス展開を見据えて、エンドユーザーやパートナー企業の意見も参考にしながら、大胆なサービスの拡充を図っていきたい」(佐々木氏)
公開した銀行APIを活用する開発者を支援する取り組みとしては、2017年9月25日に開発者向けAPIポータルサイト「三菱UFJ銀行API開発者ポータル」を開設。このポータルサイトは、開発者が同社とのAPI連携を検討する際に利用してもらうサイトで、銀行APIの仕様確認や、簡単なテストができる環境を提供している。
「APIポータルサイトは、開発者向けのテスト接続用サイトとして用意したもの。『BizSTATION』『三菱UFJダイレクト』で提供している残高照会、入出金明細照会、振込入金明細照会、振込申請の各種APIサービスをアプリに組み込み、仮想環境の中で試用することができる。今後、本番接続申請の窓口を設置し、銀行APIを活用したビジネスアイデアを持つ企業を募り、ビジネス化を支援するスキームを作っていきたい」(柳澤氏)
また、今後も銀行APIのバージョンアップを継続して行っていく計画で、特にセキュリティレベルが低下しないよう、セキュリティ関連の新技術には迅速に追従する考えだ。
「バージョン管理については、常に新旧2つのバージョンを提供し、インタフェースの互換性を確保する。バージョンアップを行う際には、旧バージョンを使用している決済代行事業者に事前に通知するなど、突然提供を打ち切ることがないようバージョン管理のスキームを作っていく」(佐々木氏)
このように、同じ銀行でありながら、ネット銀行とメガバンクでは開発において体制も進め方も大きく異なっている。その違いは、企業規模や歴史が大きく関わってきているのは容易に想像できるが、共通するのはAPI開発の基点がインターネットバンキングシステムであり、内部APIがシステム連携において重要な役割を果たしている点だ。
ビジネス環境の変化に追従するスピーディーな開発には内部APIが鍵を握っており、ビジネスの拡大には外部APIが大きく影響する。今回紹介した2行において、事業部門とエンジニアが行った取り組みは、もちろん他行も進めており、銀行が日本のDXのお手本となっている現状には、APIというキーワードが大きく関わっている。
今後、銀行以外の企業がDXを進めていく上で、求められる要素の1つとして“API”に向き合う時が迫っている。エンジニアにはAPIを設計、開発、公開、運用するスキルが、企業にはAPIを基点としたサービス開発を行うための体制やツールの確保が求められるのではないだろうか。
市場環境変化のスピードと人々の価値観の変容が、今、企業にDX(デジタルトランスフォーメーション)の実践を強く促している。では、これからの時代を生き残れる企業の具体像とはどのようなものなのか?
“今のビジネス”を支える「仕組み」や、「仕組み」を実現できるスキルとはどのようなものなのか?――本特集では今持つべき「ビジネス/システム」の仕組みと、エンジニアが持つべきスキル・役割を明確化。デジタル時代を勝ち残る、企業と人の在り方を事例を通じて深掘りする。
Copyright © ITmedia, Inc. All Rights Reserved.