PayPal API導入・活用ガイド
第5回 PayPalのモバイルソリューション
PayPalではスマートフォン向けの決済ソリューションを提供しています。現在iPhone,iPad,Android,Windows Phone 7に対応しています。
PayPalのスマートフォン用の製品には2つあります。ブラウザ内で決済するモバイルエクスプレスチェックアウト (MEC) と,アプリ内から決済できるモバイルエクスプレスチェックアウトライブラリ (MECL) です。
ブラウザ内で動作するモバイルエクスプレスチェックアウト(MEC)
MECを導入することで,スマートフォンブラウザに最適化されたレイアウトでPayPal決済を行うことができます。MECは定期課金やリファレンストランザクションにも対応しています。また都度決済であれば,PayPalアカウントを持っていないユーザでもPayPal決済時にアカウント作成を行って決済を進めることも可能です。
MECの決済フロー
MECの決済フローは以下のようになっています。
MECの実装
PCブラウザで行うエクプレスチェックアウトのAPI実装を行っていれば,自動的にスマートフォンブラウザを判別して最適化したインターフェースを表示します。スマートフォンブラウザ用の実装が済んでいれば,追加で実装を行う必要はありません。定期課金やリファレンストランザクションも同様に実装可能です。
エクスプレスチェックアウトの実装の詳細は第2回の記事を参考にしてください。
スマートフォンアプリからの実装を実現するモバイルエクスプレスチェックアウトライブラリ(MECL)
MECLを導入すると,スマートフォンのアプリからの決済も可能になります。MECLはアプリ内ブラウザ内でPayPal決済を行う仕組みになっています。
MECLの決済フロー
MECLの決済フローは以下のようになっています。
MECLの実装
MECLの実装は以下のステップで行います。
PayPalボタンの入った画面を表示させる直前にDevice tokenをライブラリから取得します。
PayPalボタンをライブラリから取得し,モバイルアプリ内に置きます。
PayPalボタンが購入者によってクリックされた場合の関数を用意します。
- A)Webサーバ内の関数を呼んで,決済情報を渡します。
- B)WebサーバでSetExpressCheckout APIを呼んでPayPalサーバに対して決済の詳細を送ります。
- C)SetExpressCheckoutのレスポンスにあるtokenをモバイルアプリに渡します。
- D)アプリ内ブラウザを開いて,モバイルコマンドを使って,以下のURLのフォーマットでpaypal.comに遷移します。
https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkoutmobile&drt=valueFromMobileExpressCheckoutLibrary&token=valueFromSetExpressCheckoutResponse
アプリ内ブラウザからreturn URLとcancel URLにリダイレクトが正しく行われているのを確認します。
return URLにリダイレクト後,関数の中でGetExpressCheckoutDetailsとDoExpressCheckoutPaymentを呼んで決済を完了します。
次回の記事では1対1ではなく,複数のPayPalアカウント間での決済を可能にするAdaptive Paymentsの紹介と実装の詳細をお伝えします。
スマートフォン実装のためのリソース
スマートフォン実装に関しては次のサイトが参考になります。
- x.com内MEC紹介ページ
- http://bit.ly/nIvFIr(英語)
- x.com内MECL 紹介ページ
- http://bit.ly/pf5hIg(英語)
- Mobile Express Checkout Library Developer Guide and Reference - iOS Edition
- http://bit.ly/oXxoFh(PDF英語)
- Mobile Express Checkout Library Developer Guide and Reference - Android Edition
- http://bit.ly/ptRrlU(PDF英語)

