Google Pay
Google Pay を使用した決済の受け付け方法をご紹介します。
Google Pay を使用すると、Google Play、YouTube、Chrome、Android デバイスなど、Google アカウントに保存されているクレジットカードやデビットカードを使用して、アプリやウェブサイトで支払いを行うことができます。Google Pay API を使用して、顧客の Google アカウントに保存されているクレジットカードまたはデビットカードをリクエストします。
Google Pay は Stripe のプロダクトや機能 (継続支払いなど) と完全な互換性があるため、通常は従来の支払いフォームの代わりに使用できます。物品、寄付、サブスクリプションの受け付けに使用します。
Stripe および Google Pay の利用と Google Play の課金システムの利用について
物品およびサービスの販売については、お客様のアプリで Google Pay など Stripe で対応可能な支払い方法を受け付けることができます。これらの支払いは Stripe を介して処理され、お客様は Stripe の決済手数料を支払うだけで済みます。ただし、デジタル商品およびコンテンツのアプリ内購入では. Google Play の課金システム を使用する必要があります。これらの支払いは Google によって処理され、同社の決済手数料が適用されます。
Google Play の課金システムを使用しなければならない購入の詳細については、Google Play の開発者向け利用規約をご覧ください。
Android アプリで Google Pay を使用した決済を受け付ける
Stripe Android SDK の一部である GooglePayLauncher
は、Android アプリで Google Pay の受け付けを開始する際の最速で最も簡単な方法です。
前提条件
Android で Google Pay に対応するには、以下が必要です。
19
以上のminSdkVersion
。28
以上のcompileSdkVersion
。
さらに、ご自身のデバイスでテストをご希望の場合は、Google アカウントに支払い方法を追加する必要があります。
実装方法を設定する
Google Pay を使用するには、まず以下を AndroidManifest.xml の <application>
に追加し、Google Pay API を有効化します。
<application> ... <meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true" /> </application>
このガイドでは、Stripe Android SDK の最新版を使用していることを前提としています。
詳細は、Google Pay の Android 向け Google Pay API を設定する を参照してください。
Google Pay ボタンを追加する
Google のチュートリアルに従って、アプリに Google Pay ボタンを追加します。これにより、適正なアセットを使用できます。
GooglePayLauncher をインスタンス化する
次に、Activity
または Fragment
で GooglePayLauncher のインスタンスを作成します。これは Activity#onCreate()
で行う必要があります。
GooglePayLauncher.
では、GooglePayLauncher
を設定する際の必須プロパティとオプションプロパティの両方が公開されます。設定オプションの詳細については、GooglePayLauncher.
をご覧ください。
GooglePayLauncher
をインスタンス化した後、GooglePayLauncher.
インスタンスが呼び出され、Google Pay が利用可能で使用できるかどうかどうかを示すフラグが示されます。このフラグを使用して UI を更新し、Google Pay が使用可能であることを顧客に示すことができます。
GooglePayLauncher を起動する
Google Pay が利用可能になり、アプリが PaymentIntent
または SetupIntent
の client secret を取得したら、適切な方法を使用して GooglePayLauncher
を起動します。PaymentIntent
を確定する際は、GooglePayLauncher#presentForPaymentIntent(clientSecret)
を使用します。SetupIntent
を確定する際は、GooglePayLauncher#presentForSetupIntent(clientSecret)
を使用します。
結果を処理する
最後に、GooglePayLauncher.
を実装して、GooglePayLauncher
の動作結果を処理します。
結果は、GooglePayLauncher.
、GooglePayLauncher.
、または GooglePayLauncher.
になります。
Google Pay を本番環境に移行する
Google の指示 に従ってアプリの本番環境でのアクセスをリクエストします。メッセージが表示されたら、連携タイプに Gateway (ゲートウェイ) を選択し、審査のためにアプリのスクリーンショットを提供します。
アプリが承認されたら、環境を GooglePayEnvironment.
に設定し、署名済みのアプリのリリースビルドから Google Pay を起動して、本番環境で連携をテストします。この際に本番環境 API キーを使用することを忘れないでください。capture_
= manual
を指定した PaymentIntent
を使用すると、支払いをキャプチャーせずに取引を処理できます。
PaymentMethod を作成する
サーバーで支払いを確認する場合は、GooglePayPaymentMethodLauncher
を使用して、支払いを確認する代わりに PaymentMethod
のみを収集できます。
不審請求の申請
利用者は自身の Google Pay アカウントを使用して支払いを承認する必要があり、これによって不正使用や未承認の支払いを減らすことができます。それでも、支払いの完了後に利用者が不審請求の申請を行う場合があります。不審請求の申請に異議を申し立てる反証資料は、直接提出することができます。不審請求の申請プロセスはカード支払いと同じです。不審請求の申請に対応する方法をご覧ください。
Google Pay 支払いのライアビリティシフト
Google Pay は世界各地でのライアビリティシフトに対応しています。Stripe がオンラインで提供するプロダクトのユーザーと Stripe.js を使用するユーザーには自動的に適用されます。Stripe がオンラインで提供するプロダクト以外に対する Visa 取引の場合、Google Pay & ウォレットコンソールでライアビリティシフトを有効にする必要があります。これを行うには、Google Pay & ウォレットコンソール に移動し、左側のナビゲーションバーで Google Pay API を選択して、ライアビリティシフトによる保護に関する Visa デバイストークンの不正に対するライアビリティ保護 を有効にします。
Google Pay の取引には、3 つのユースケースがあります。
- ユーザーがモバイルデバイスを使用して、Google Pay アプリにカードを追加する場合、このカードは DPAN (デバイスプライマリアカウント番号) として保存され、デフォルトでライアビリティシフトに対応します。
- ユーザーがカードを Chrome や Google のプロパティ (YouTube、Play など) に追加する場合、このカードは Funding Primary Account Number (FPAN) として保存されます。ライアビリティシフトは、3D セキュアの実行時に、Visa を含む主要なネットワークのすべてでグローバルにサポートされます。Stripe Radar ルールをカスタマイズして、3D セキュアの有効化をリクエストできます。
- ユーザーが EC ストアサイトで支払い方法として Google Pay を選択したり、 Google Pay で支払うアプリを選択する場合、カードは登録済みのカードを表す EC ストアトークンとして保存されます。ライアビリティシフトも 3D セキュアも、現時点では EC ストアトークンでサポートされていません。
Sigma ユーザーの場合、charges
テーブルには Google Pay の取引タイプを示す card_
フィールドが格納されます。FPAN 取引は card_
を fpan
に設定します。DPAN および EC ストアトークンの取引は、card_
を dpan_
に設定します。
返金
成功した Google Pay の支払いは、一部返金または全額返金することができます。返金プロセスはカード支払いの場合と同じです。返金の開始または管理の手順については、支払いの返金とキャンセルをご覧ください。