マネーフォワードMEで学ぶ、APIエコシステムに参加できないことによる損失
どうも、エンジニアのgamiです。
最近、マネーフォワードMEのプレミアム会員になりました。
マネーフォワードMEは、自分が持っている銀行口座やクレジットカードの情報を一覧化できるアプリです。認証情報を登録しておくと、各銀行口座の最新残高をまとめて表示してくれたり、クレジットカードの明細を選んで家計簿を付けたりすることができます。
(画像引用元)
今回は、マネーフォワードMEの宣伝がしたいわけではありません。このアプリを使う中で考えさせられた、データ提供とAPIエコシステムについて書きたいと思います。
三菱UFJ VISAカードだけ連携できない事件
まずは、僕とマネーフォワードMEの話を軽くします。
マネーフォワードME自体は、複数口座に散らばっている資産のデータを一元化したくて、数年前から使っていました。もともとは無料プランで使っていましたが、最近は株や投資信託も増えてきたので、ポートフォリオの把握のためにプレミアム会員になりました。
せっかくなので資産構成だけじゃなく支出構成も見たいな―と思って、今まで使っていなかった家計簿機能も使ってみました。自動で連携されるクレジットカード明細をポチポチとカテゴリ分類するだけで、たとえば食費に何%使っているかなどがわかります。めっちゃ便利。
しかし、ここで事件が起きます。僕は、個人用、家族用、事業用の3つの銀行口座とそれに紐付くクレジットカードを持っています。その家族用として使っていた三菱UFJ-VISA スーパーICカードだけ、マネーフォワードとの連携ができなかったのです。
もちろん、三菱UFJ銀行の口座の支出明細を見れば、当月にいくらクレジットカードを使ったのかはわかります。しかし、その内訳はマネーフォワード上ではわからず、「自動連携される明細を分類するだけで家計簿ができる」という価値が享受できないことになってしまいます。
(クレジットカードの利用明細まではわからない)
このときは本気で三菱UFJ銀行の口座解約を検討しました。実際には家賃や公共料金の振替口座を変えるのが面倒で諦めましたが。
この一連のエピソードは、現代のサービスがデータ提供戦略やAPIエコシステムとの付き合い方を考える上で、とても示唆に富んでいるなあと思いました。
どんなデータを提供するか?
そもそもマネーフォワードMEで口座の残高や収支が確認できるのは、銀行側がAPIを介してデータ提供してくれているからです。
さて、銀行のようなサービスが外部にデータを提供するとき、次の2つの観点が重要になります。
これら2つについて、データ提供元の立場に立って考えてみましょう。
まずは、どんなデータを連携するか。
たとえばあなたが銀行の行員だったとします。昨今はデータを価値に変えることの重要性が盛んに叫ばれています。特に、自社サービス内だけでは十分なデータ活用はできません。顧客が求める体験を実現するために、外部サービスにデータを連携できる必要があります。さて、あなただったら銀行内にあるどんなデータを外部提供するでしょうか?
「データ」と一言で言っても、その中身は様々です。実際に価値を生むデータは、全データのほんの一部でしかありません。
どんなデータを提供すべきか考えるには、「顧客が価値を感じるサービスの実現にはどんなデータが必要か?」という問いから考えるのも有効です。たとえばマネーフォワードMEの画面では、銀行口座に関する次のような数値やグラフが表示されます。
これらを表示するためには、銀行側は下記の口座関連データを最低でも提供する必要があります。
「過去の残高」や「月別の収支」は銀行側から連携しなくていいの??と疑問に思った人もいるかもしれません。しかし、これらはマネーフォワード側で計算できます。具体的には、「最新の残高」が変更される度に過去分を保存し続ければ「残高推移」を表示できるし、「過去の収支明細情報」を月別に集計すれば「月別の収入・支出金額の推移」は算出できます。
このように、データは利用する側で保存したり加工したりすることができます。それを考慮すると、一般的にはなるべく細かい粒度でデータ提供をした方が利用の幅が広がります。たとえば口座の収支データであれば、月別の合計金額ではなく個々の明細データを連携した方が価値が高くなります。なぜなら、明細データから合計金額を集計することはできますが、逆はできないからです。
どのような方法で連携するか?
提供するデータの中身が決まったら、それをどのような方法で連携するかを決める必要があります。
データの形式、連携プロトコル、頻度など考えることは色々ありますが、ここではマネーフォワードと三菱UFJ-VISA スーパーICカードの具体的な事例について考えます(私怨)。
データを外部サービス向けに提供する方法は、APIだけではありません。実際、この件に関するマネーフォワードのサポートサイト記事には次のように書かれています。
要は、三菱UFJ VISAカードの会員サイトにログインし、画面上からCSVをダウンロードして、マネーフォワードの画面からアップロードしてくださいね、というわけです。この「画面上のUIからファイルをダウンロードできますよ」というのも、立派なデータ提供の手段です。
一方、他のクレジットカードの明細はこんな面倒な手作業をしなくてもマネーフォワードに自動連携されます。それはAPIを介したデータ提供の口を各クレジットカード会社が提供してくれているからです。
安全で便利なAPIを提供するためには、サーバーを立てて、適切な認証システムを組み込み、それを保守しつづけなければいけません。それは単に「マイページからCSVファイルをダウンロードできるようにする」ことよりも大変です。
しかし、事業者側がその大変さを乗り越えてAPIを公開することで、マネーフォワードなどの外部サービス上での体験まで良くすることができます。
APIエコシステムに参加できないことによる損失
APIを介したシステム連携については以前の記事にも書きました。
このようにサービスがAPIを介して相互に連携し価値を高め合っているような状態のことを、APIエコシステムと呼ぶことがあります。マネーフォワードと金融サービスとの連携は、まさにAPIエコシステムを考える格好の題材と言えます。
ちなみに現在では、改正銀行法により銀行はオープンAPIを実装することが努力義務として課されています。銀行APIが一般的ではなかった頃、マネーフォワードではIDパスワード方式という一定のリスクがあるデータ収集方式を取っていました。このリスク緩和のために、マネーフォワード社自ら銀行API整備のための政府の議論に積極的に参加してきたようです。
(『未来を実装する』3.成功する社会実装 4つの原則 より)
銀行サービスにおいて、APIを提供し外部サービスからでもデータを閲覧できることは、ある種の業界標準となってきています。
事業者が標準的なプラットフォームやエコシステムに乗っからないことによる損失というのは、様々な業界で存在します。クレジットカードが使えない小売店、食べログに載らない飲食店、ゼクシィに載らない結婚式場、などなど。
もちろん、孤高の存在を貫いても、その事業者のサービスに圧倒的な競争優位性があれば問題にはなりません。しかし、顧客体験(CX)を考えると、1つのプラットフォームで様々な事業者のサービスや情報にアクセスできた方が、一般的には体験が良いです。なるべく標準的なプラットフォームやエコシステムに乗っかることで、自社だけでは提供できない体験を実現することができます。
ということで、マネーフォワードと三菱UFJ-VISA スーパーICカードのAPI連携が再開することを切に願います(私欲)。
ここから先は
仕事を楽しくするデジタルリテラシー読本
【初月無料】デジタル時代の歩き方について考えたことを発信します。ソフトウェアの時代とは何か。エンジニアの頭の中はどうなっているのか。NoC…
サポートをいただけると、喜びドリブンで発信量が増えます!初月無料のマガジン『仕事を楽しくするデジタルリテラシー読本』もおすすめです!