ペイ近況3

※ 2017/08/31 11:18 追記

Payment Request API と Pay with Google のレイヤーを逆に捉えていたため勘違いがありました。

@agektmr さんと @ymotongpoo さんから色々とご指摘いただきました。 ありがとうございました。

Payment Request API

  • W3C で策定されている
  • ブラウザに保存しているクレジットカード番号を JS を使って引っ張ってこれるブラウザの API
  • 各ブラウザに保存しているクレジットカード情報や住所などを取得できる、支払い方法の橋渡しをするブラウザAPI
  • 各ブラウザで決済ダイアログのようなものが表示される
  • Chrome for Android ではすでに使える。Chrome for Desktop は 61 から
    • Edge は実装済み。Firefox, Safari はデスクトップ、モバイル共に未実装だがサポート予定
  • 上のブラウザ全てで実装されたとしても古いOS、ブラウザが残っている限りクライアント側で何らかの fallback が必要
    • 使用の可不可は window.PaymentRequest で判断
    • fallback 用に自前でフォームを用意してもいいが、可不可の判断も JS で行うため PSP 各社が提供している Checkout と呼ばれるライブラリを使うことが、Payment Request API を使った時の UX 的にも似せられるため現実的
    • PSP が提供している Checkout 側で、Payment Request API が使える場合はそちらを優先して処理させることは技術的には問題ないが、Payment Request API では住所や商品名など Checkout 側では想定していないデータも取得が可能
    • Payment Request API のオプションで上記の Checkout では取れないデータを最初から表示させない選択肢もあるみたいだが、取得できるものを全員が制限したいとは限らないため、ECサイトの運営者など、組み込む側が要件に応じて使いこなせると柔軟に対応できる

Payment Handler API

  • Web には Payment Handler API という仕様があり、Payment Request API決済手段サードパーティーが追加できる仕組みがある
  • その仕様に沿って実装すると Payment Request API から決済を行う際に選択肢の一つとして表示される

Pay with Google

  • Google Payment Solutions
  • まだ未公開(たぶん)
  • Google の持っているいくつかの決済手段を提供する
  • Alipay や Samsung Pay、Android Pay などのペイメントアプリと同じレイヤー
  • Payment Request API を通してのみ Web での利用可能が可能。Payment Request API の決済選択肢の1つとして選択できる
    • Web で使用する場合は Service Worker を通してアクセスする

f:id:wozozo:20170831004423p:plain

  • Payment Request API はブラウザに保存されているクレジットカード情報を取り出すだけの機能であるのに対し、Google Payment API はクレジットカード以外での決済も可能
  • Payment Request API と同じくブラウザや payments.google.com に保存されいてるクレジットカード情報や、Android Pay、サードパーティーの決済アプリを決済手段に選択できる
  • OS やブラウザ側がネイティブの UI を表示してくれるため、UI の作成を行う必要がなく、決済方法もクレジットカード以外の選択肢がある → Web で使う場合の UI は全て Payment Request API が担う
  • ただし EC サイト側で各決済手段ごとの merchant になっていないと決済されたお金を受け取れないため、たとえば Alipay アプリと Pay with Google ボタンさえあればどこでも使えるというわけではない…はず…。ので、各 PSP に対して利用申請などを行う必要がある
  • サードパーティー乱立の混沌期がありそうな気がするけど体力のあるところ1,2社以外はそのうち消え去りそう (Payment Request API と Pay with Google (Payment Handler) のレイヤーを逆に捉えていたため勘違いでした)

f:id:wozozo:20170831010425p:plain

Apple

  • macOS, iOS 共に Safari Webkit では Payment Request API を実装中らしい
  • Apple Pay on the Web の実装は Payment Request API と比べると複雑であるため、Payment Request API に対応し、Safari に保存されたクレジットカードと Apple Pay に登録したカードも選択肢として使用できるようになることを願ってる
  • しかし、もし Apple Pay のカードを Payment Request API で使用できるようになってしまうと、現状日本ではブランドを通したクレジットカードとして Visa は使用できないため、Visa が使えない状態がやってくる
  • Safari に保存されているクレジットカード情報は問題なく Payment Request API で取得できると思うが、Apple Pay に登録されているクレジットカードのうち Visa カードは、現状 Visa としては使用不可でありブランドロゴも表示されておらずオンアス決済による iD や Quicpay などの電子マネーでしかないため、Apple - Visa 間の契約が変わらない限りは Apple Pay に登録してある Visa カードを使用できるとは思えないんですがどうなるんでしょう…

間違ってるところがあったらおしえてください

参考