- インテグレーションガイドライン
- サポートされている機能(支払方法)
- Masterpass
Masterpass
Masterpass は、支払者が支払情報、発送先/請求先の住所情報を保存および管理し、支払者が取引に使用する Web サイトおよびモバイルアプリと安全に共有できるようにするサービスです。ウォレットプロバイダが支払者の情報の安全を確保して保護するため、支払者の精算操作の改善に役立ち、PCI コンプライアンス費用の削減にも役立ちます。
前提条件
QNB ALAHLIで Masterpass を使用するには、決済代行会社が利用者の加盟店プロファイルを Masterpass にボーディングしておく必要があります。ボーディングが完了したら、利用者に対して精算識別子が発行されます。この精算識別子は、決済代行会社が Masterpass 用に利用者を設定するために使用されます。
Masterpass 標準の精算
Masterpass 標準の精算では、支払者が加盟店の Web ページから移動することなく Masterpass デジタルウォレットを利用できます。インタラクションは チェックアウトページの上に表示される ライトボックスに提示されます。
以下の図は、ショッピングサイトと Masterpass に対する精算フローの例を示しています。
- 支払者は加盟店のショッピングサイトを参照し、1 つまたは複数の製品を選択して、チェックアウトページで [BUY WITH Masterpass] をクリックします。
- ショッピングサイトの上部に表示される Masterpass Lightbox で、支払者は以下を実行します。
- Masterpass ウォレットにログインします。
- 支払い用のカードを選択します。
- 発送先住所を選択するか、新しい住所を追加します。
- ボタンをクリックして選択内容を確認し、Masterpass Lightbox を閉じます。
- ショッピングサイトで支払者が購入を確定すると、注文の内容/レシートが表示されます。
Masterpass 標準の精算インタラクションのリクエスト
既存の <<checkout>> インテグレーションが存在する場合、それが正常に有効になると Masterpass は自動的に利用可能になります。
支払画面上で Masterpass Lightbox とのインタラクションを完全に制御する必要がある場合は、このオプションを選択してライトボックスを自身で起動できます。
<script src="https://masterpass.com/lightbox/Switch/integration/MasterPass.client.js"></script> <script type="text/javascript"> // INITIALIZE and INVOKE THE MASTERPASS LIGHTBOX MasterPass.client.checkout({ "version":"v6", "successCallback": onSuccessfulCheckout, "cancelCallback": onCancel, "failureCallback": onFailure, // USE PARAMETERS FROM THE OPEN WALLET RESPONSE "requestToken": "<wallet.masterpass.requestToken>", "merchantCheckoutId": "<wallet.masterpass.merchantCheckoutId>", "allowedCardTypes": "<wallet.masterpass.allowedCardTypes>" }); // RETRIEVE PARAMETERS FROM THE LIGHTBOX INTERACTION function onSuccessfulCheckout(data) { document.getElementById('oauthToken').value=data.oauth_token; document.getElementById('oauthVerifier').value=data.oauth_verifier; document.getElementById('checkoutUrl').value=data.checkout_resource_url; } function onCancel() { // do something to tell you the cardholder cancelled } function onFailure() { // do something to tell you things have gone wrong } </script>
Create Session
操作を実行して、セッション ID を取得します。Create Session
レスポンスで返されたセッション ID をOpen Wallet
操作で使用して、Masterpass Lightbox を起動するために必要なデータを取得します。Open Wallet
操作で以下の情報を提供する必要があります。
order.walletProvider
:この値はMASTERPASS_ONLINE
に設定します。order.amount
:注文の金額。order.currency
:注文の支払通貨。wallet.masterpass.originUrl
:Masterpass Lightbox を表示するページの URL。
- 支払画面で
MasterPass.client.js
JavaScript クライアントライブラリを参照します。 -
支払者が [BUY WITH Masterpass] をクリックしたときに、
Open Wallet
レスポンスで返された以下のパラメータを使用して Masterpass Lightbox を起動します。wallet.masterpass.requestToken
wallet.masterpass.merchantCheckoutId
wallet.masterpass.allowedCardTypes
Masterpass Lightbox とのインタラクションでの応答を管理するためのコールバック URL またはコールバックメソッドを提供する必要があります。コールバックの処理の詳細については、Masterpass の文書を参照してください。
-
コールバック URL または success コールバックメソッドから以下のパラメータ(Masterpass Lightbox とのインタラクションが成功した場合にのみ返される)を取得し、それらを Web サーバに渡します。
oauth_token
oauth_verifier
checkout_resource_url
Update Session From Wallet
操作を実行して、支払人の支払詳細および発送先詳細を Masterpass から取得します。この操作では以下のパラメータを提供する必要があります。
- セッション ID:
Create Session
操作で返される、支払セッションの識別子。 order.walletProvider
:この値はMASTERPASS_ONLINE
に設定します。wallet.masterpass.oauthToken
:コールバックから取得したoauth_token
。wallet.masterpass.oauthVerifier
:コールバックから取得したoauth_verifier
。wallet.masterpass.checkoutUrl
:コールバックから取得したcheckout_resource_url
。
成功した場合、返されたセッションには、Masterpass インタラクションからの支払人の支払詳細が含まれます。
Masterpass の支払者のインタラクションに 3D セキュア認証が含まれている場合は、3DS 認証結果がセッションに追加され、Update Session From Wallet
レスポンスで返されます。「Advanced Checkout」を参照してください。- セッション ID:
- 返されたセッションを使用して、注文確認ページを提示するか、または支払いをQNB ALAHLIに送信します。「セッションを使用した操作の実行」を参照してください。
ショッピングサイトの Masterpass ブランディング要件
利用者が自身の Web サイトで Masterpass をオプションとして支払者に提示する際は、Masterpass からのユーザーインターフェイスブランディング要件に従う必要があります。チェックアウトページにユーザーインターフェイス要素を表示する方法のガイドラインについては、「Masterpass ブランディング」を参照してください。
Masterpass のペアリング
Masterpass のペアリングは、ショッピングサイト/アプリケーションで支払者の Masterpass ウォレットの口座を利用者の加盟店口座にリンクするプロセスです。詳細については、「Masterpass のペアリング」を参照してください。
Advanced Checkout
Masterpass で Advanced Checkout 支払者認証サービスを設定している場合は、Masterpass の MPI によって 3D セキュア(3DS)認証が容易になります。
3DS 認証の結果がセッションに追加され、Update Session From Wallet
のレスポンスで返されます。支払いをQNB ALAHLIに送信する前に、インテグレーションでセッションの 3DS 認証結果を検証することをお勧めします。
インテグレーションのテスト
加盟店 ID に「TEST」という接頭辞が付いている場合、リクエストは Masterpass サンドボックスにルーティングされます。
テスト目的の場合は、MasterPass.client.js
ライブラリへの照会が https://sandbox.masterpass.com/lightbox/Switch/integration/MasterPass.client.js
に設定されている必要があります。
3DS インタラクションを含む Masterpass インテグレーションのエンドツーエンドテストを実行するには、Masterpass サンドボックス内の支払者のウォレットに以下のテストカードを追加します。有効期限または CSC を指定できます。
テストカード | カード番号 | 3DS 登録済み |
---|---|---|
Mastercard |
5506900140100305 | Y |
5506900140100107 | Y | |
5506900140100503 | N | |
Visa |
4440000009900010 | Y |
4440000042200014 | Y | |
4440000042200022 | N | |
American Express |
340000099900036 | Y |
340000099900028 | Y | |
340000099900044 | Y | |
340000099900051 | N | |
Diners Club |
30599900026332 | Y |
30599900026340 | N | |
Discover | 6011100099900534 | - |
6011100099900013 | - |
よくある質問
支払者の Masterpass ウォレットが加盟店のビジネスとペアリングされていない場合、QNB ALAHLI は、サポートされているカードのタイプを加盟店設定から取得し、それらのカードのみが Masterpass で選択できるようにします。
支払者の Masterpass ウォレットが加盟店のビジネスとペアリングされている場合は、カードのタイプが支払者の Masterpass ウォレットから取得されます。