リダイレクト フローを開始する

概要

リダイレクト開始フローの目的は、支払いを完了するために十分な情報を提供して、決済インテグレータにユーザーをリダイレクトすることです。次に、インテグレータはユーザーを発行者のウェブ インターフェースにリダイレクトし、Google から提供された情報を転送します。その後、お客様はカード発行会社の指示に沿って支払いを完了できます。これにより、Complete Redirect のフローがトリガーされます。

フローの仕組み

お支払い方法(FOP)に使用するカード発行会社を選択するには、2 つの方法があります。

  1. ユーザーが Google のユーザー インターフェース(UI)で発行元を選択します。
  2. ユーザーは Google の UI でインテグレータを選択し、インテグレータの UI で発行元を選択します。

ユーザーが Google の UI で発行者を選択する

この場合、ユーザーは Google の UI でお支払い方法を選択する際にカード発行会社を選択します。そのため、RedirectRequestformOfPayment オブジェクトの issuerId フィールドには、カード発行会社を表す Google が生成した一意の識別子が含まれます。なお、決済インテグレータとカード発行会社が同じ法人である場合、Google は決済インテグレータ用の issuerId を生成します。リダイレクト リクエストでは HTTPS GET メソッドを使用し、パラメータが URL にエンコードされます。

リダイレクト フローの開始(カード発行会社が選択)

次のシーケンス図は、ユーザーが Google の UI で発行元を選択したときの、ユーザーのブラウザ、Google、インテグレータ、発行元間のやり取りを示しています。

発行元を選択してリダイレクト フローを開始

上の図のオブジェクトは次のとおりです。

  • ユーザー: 支払いを行うユーザーです。
  • Google UI: ユーザーが支払いを開始する、Google のウェブまたはアプリのインターフェース。
  • Google サーバー: リダイレクト リクエストを作成する Google のバックエンド サーバー。
  • 決済インテグレータ: ユーザーとリダイレクト リクエストをカード発行会社に転送するインテグレータ。
  • 発行元: ユーザーがアカウントを持っている発行元。

リダイレクト開始のフローでは、ユーザーが Google プロパティ(Google UI)にアクセスしていて、お支払い方法を選択していることはすでに想定しています。すべてはここから始まります。

  1. ユーザーは、支払いに使用するカード発行会社を選択します。これによってリダイレクト開始フローがトリガーされます。
  2. Google UI が Google サーバー(バックエンド)を呼び出して、新しいリダイレクト リクエストを作成します。
  3. Google サーバーがリダイレクト リクエストを作成します。
  4. リダイレクト リクエストが Google UI に送信されます。
  5. Google UI で、ユーザーはインテグレータのサーバーにリダイレクトされます。
  6. インテグレータは Google のリダイレクト リクエストを処理し、発行元固有のリダイレクト リクエストを生成します。
  7. インテグレータは、発行元のウェブ インターフェースにユーザーをリダイレクトします。
  8. ユーザーは発行元のウェブ インターフェースで認証を行います。
  9. お客様は画面上の手順に沿って支払いを完了します。

ユーザーが Google の UI でインテグレータを選択する

この場合、ユーザーは Google の UI でインテグレータを選択します。有効な FOP と見なされるのはカード発行会社のみであるため、RedirectRequestformOfPayment フィールドが noneChosen に設定されます。インテグレータは、Google が承認した発行元の 1 つをユーザーが選択できる UI を提供する必要があります。リダイレクト リクエストでは HTTPS GET メソッドを使用し、パラメータが URL にエンコードされます。

リダイレクト フローを開始(インテグレータが選択)

次のシーケンス図は、ユーザーが Google の UI でインテグレータを選択したときの、ユーザーのブラウザ、Google、インテグレータ、発行元間のやり取りを示しています。

インテグレータを選択してリダイレクト フローを開始

上の図のオブジェクトは次のとおりです。

  • ユーザー: 支払いを行うユーザーです。
  • Google UI: ユーザーが支払いを開始する、Google のウェブまたはアプリのインターフェース。
  • Google サーバー: リダイレクト リクエストを作成する Google のバックエンド サーバー。
  • 決済インテグレータ: ユーザーが発行者を選択するインテグレータ。
  • 発行元: ユーザーがアカウントを持っている発行元。

リダイレクト開始のフローでは、ユーザーが Google プロパティ(Google UI)にアクセスしていて、お支払い方法を選択していることはすでに想定しています。すべてはここから始まります。

  1. ユーザーは(特定のカード発行会社ではなく)インテグレータを選択して支払いを行います。これによってリダイレクト開始フローがトリガーされます。
  2. Google UI が Google サーバー(バックエンド)を呼び出して、新しいリダイレクト リクエストを作成します。
  3. Google サーバーがリダイレクト リクエストを作成します。
  4. リダイレクト リクエストが Google UI に送信されます。
  5. Google UI で、ユーザーはインテグレータのウェブ インターフェースにリダイレクトされます。
  6. インテグレータが Google のリダイレクト リクエストを処理します。
  7. インテグレータは利用可能な発行者をユーザーに表示します。
  8. ユーザーは、支払いに使用するカード発行会社を選択します。
  9. インテグレータは、発行元固有のリダイレクト リクエストを生成します。
  10. インテグレータは、発行元のウェブ インターフェースにユーザーをリダイレクトします。
  11. ユーザーは発行元のウェブ インターフェースで認証を行います。
  12. お客様は画面上の手順に沿って支払いを完了します。

ベスト プラクティスとその他の考慮事項

安全対策

リダイレクト リクエスト URL には、暗号化されていない callbackUrl フィールドと暗号化された redirectRequest フィールドが含まれます。これらの両方のフィールドには、現在のトランザクションの requestId が含まれます。ベンダーは、callbackUrl と暗号化されたペイロードの両方で requestId が同一であることを確認し、これらが関連していることを検証する必要があります。