ユーザーに購入権限を付与する

トランザクションステータスに関するエクソラからの情報を使用して、アプリケーション内でユーザーへの購入権限付与を実装します。次の方法で情報を取得できます:

APIを使用して情報を要求する

ユーザーが購入した仮想アイテム、仮想通貨、またはバンドルに関する情報は、エクソラ側のプレイヤーのインベントリから入手できます。ウェブショップでの購入と、購入を許可する際に他の方法による購入の両方を考慮するには、アプリケーション側とエクソラ側でプレイヤーのインベントリに関する情報を同期します。

インベントリを管理するためのAPIコールには、次のグループが含まれます:

Note
サーバー側の方法では、基本HTTP認証が使用されます。

Note
クライアント側のコールでは、サーバー OAuth 2.0認証が使用されます。

基本HTTP認証

リクエストにはAuthorization: Basic <your_authorization_basic_key>ヘッダーが必要で、<your_authorization_basic_key>Base64規格に従ってエンコードされたmerchant_id:api_keyです。パラメータ値はパブリッシャーアカウントにあります:

  • merchant_idの場合、プロジェクト設定> ウェブフック > マーチャントIDセクションに移動します。
  • api_keyの場合、会社設定 > APIキーセクションに移動します。

サーバー OAuth 2.0認証

リクエストにはAuthorization: Bearer <user_JWT>ヘッダーを含める必要があります。<user_JWT>はユーザーJWTです。

ユーザーJWTを取得するには、以下の手順で行います:

  1. サーバーOAuth 2.0クライアントを作成するには:
    1. パブリッシャーアカウントであなたのプロジェクトを開きます。ログイン > あなたのログインプロジェクトに移動して構成をクリックします。
    2. セキュリティブロックで、OAuth 2.0をクリックします。
    3. OAuth 2.0を追加するをクリックして以下のことを指定します:
      • クライアント名。
      • OAuth 2.0のリダイレクトURI(必須)。
      • 認証タイプ — サーバー。
      • プロジェクトID。
    4. 接続をクリックします。さらに統合するには、生成されたクライアントIDと秘密鍵が必要になります。

  1. サーバーJWTを取得します。これを行うには、JWTを生成するAPIメソッドを呼び出して、以下のパラメータを渡します:
    • grant_type — JWTタイプ。client_credentialsの値を指定します。
    • client_secret — サーバー OAuth 2.0クライアント秘密鍵です。
    • client_id — サーバー OAuth 2.0クライアントID。

Note
サーバーJWTの有効期間は59分です。

  1. ユーザーJWTを取得します。これを行うには、Auth by custom ID APIメソッドを呼び出します。リクエストにはX-Server-Authorization: <server_JWT>ヘッダーを含める必要があります。<server_JWT>ステップ2で取得したサーバーJWTです。

ウェブフックを使用して情報を受け取る

  1. ウェブフックを受信するためのパラメータを構成します:
    1. パブリッシャーアカウントでプロジェクトを開きます。
    2. サイドメニューのプロジェクト設定をクリックします。
    3. ウェブフックセクションに移動します。
    4. ウェブフックトグルをオンに設定します。
    5. ウェブフックURLフィールドで、ウェブフックを受信するURLを指定します。
    6. プロジェクトウェブフックにサインするための秘密鍵がデフォルトで生成されます。新しい秘密鍵を生成する場合は、更新アイコンをクリックします。
    7. 設定を保存するをクリックします。

  1. 以下のタイプのウェブフック処理をアプリケーションに実装します:

ウェブフックが受信されたことを確認するには、サーバーは次のように応答する必要があります:

  • メッセージ本文なしでHTTPコード204。
  • 指定されたユーザーが見つからないか、無効な署名が渡された場合、問題を記述したHTTPコード400が表示されます。

パブリッシャーアカウントプロジェクト設定 > ウェブフック > ストアセクションのユーザー検証決済ウェブフックをテストできます。

実数値がない場合は、任意の値を入力できます。

サンドボックスモードまたはライブモードで購入する際にウェブフックをテストすることもできます。返金をテストする機能はライブモードでのみ利用できます。

進捗状況
ご意見ありがとうございました!
最終更新日: 2022年5月6日

誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。

問題を報告する
当社は常にコンテンツを見直しています。お客様のご意見は改善に役立ちます。
フォローアップ用のメールをご提供してください
ご意見ありがとうございました!