サーバー側の統合
このタイプの統合は、認証、ゲーム内ストア、プレイヤーのインベントリなどのゲームロジックをすでに自社サーバーに実装しており、エクソラ決済ステーションを利用したいと考えているパートナーに適しています。決済ステーションアクセストークンを取得し、ウェブフックの取り扱いを設定する必要があります。
サーバー統合時には、以下のような決済処理ロジックが実装されています:
- クライアントは、アプリケーションサーバーにリクエストを送信して、決済インターフェースを開きます。
- アプリケーションサーバーは、エクソラサーバーに決済通貨と金額に関する情報を送信します。
- エクソラサーバーは、購入詳細と決済ステーションのパラメータを含むトークンを返します。
- アプリケーションサーバは、受信したトークンをクライアントに送信します。
- クライアントは、SDKを使用してブラウザで決済ステーションを開きます。
- 購入代金を支払った後、決済状況が記載されたウェブフックがアプリケーションサーバーに送信されます。
統合フロー
Game Commerceアセットを使用してエクソラ製品をサーバーに統合するには:
- アセットをインストールします。
- あなたのパブリッシャーアカウントでプロジェクトを設定します。
- サーバーにゲーム内ストアと商品カタログを設定します。
- Unityプロジェクトを設定します。
- トークンを取得します。
- 決済UIを開きます。
- ウェブフック処理を設定します。
統合が完了したら、決済プロセスをテストできます。
アセットをインストールする
- Unityのダウンロード。
- あなたの好みに合わせて、個人用またはプロフェッショナル用のUnityライセンスをお選びください。
- Unityのプロジェクトを新規に作成します。
- アセットのダウンロード。
- パッケージを解凍してください。
- Unityのエディタで
Assets > Import Package > Custom Package クリックし、アセットを選択します。 - ゲームビルドの作成にMonoコンパイラーが使用されていることを確認してください(スタンドアロンビルドの場合のみ)。これを行うには:
- クリック
Edit > Project Settings メインメニューに表示します。 - そこに行ってみて
Other Settings > Configuration セクションをご覧ください。 - 確認することは
Mono 選択Scripting Backend フィールド。
- クリック
アセットをインストールした後、
デモシーンでは、パブリッシャーアカウントのプロジェクトがプリセットされ、ゲーム内ストアが完全に設定されています。
Key | Value |
---|---|
ログインID | 026201e3-7e40-11ea-a85b-42010aa80004 |
プロジェクトID | 77640 |
デモシーンは2つの方法で使用することができます:
- 例えば
- ログインシステム、インベントリ、ゲーム内ストアの初期バージョンとして、迅速な結果を得て、必要に応じて機能を拡張することができます
デモシーンやそのパーツをアプリケーションで使用するには、ビルド設定で追加します:
Assets > Xsolla > DemoCommon > Scene に移動して、Xsollus シーンを起動します。File > Build settings を開き、Add Open Scenes をクリックします。
アドミンページでプロジェクトを作成する
- パブリッシャーアカウントにサインアップします。
- プロジェクトを構成します:
- ゲームデータを自動的に入力するには、任意のプラットフォームでゲームへのリンクを入力します。その結果、ゲームの画像、名前、説明がプロジェクト設定に追加されます。
- ゲームデータを手動で入力するには、リンクがありませんで、手動でセットアップしますをクリックし、以下のことを指定してください:
- プロジェクト言語(既定では英語が設定されています)
- 指定されたすべての言語のプロジェクト名
- ゲームウェブサイト(任意)
- プロジェクトを作成するをクリックします。
統合には以下のパラメータが必要です:
- プロジェクト設定>ウェブフックでのマーチャントID。
- 会社設定 > APIキーセクションでのAPIキー。
- プロジェクトIDは、プロジェクト名の横にあるパブリッシャーアカウントで確認できます。
- プロジェクト設定 > ウェブフックセクションでの秘密鍵。
Unityプロジェクトをセットアップする
- Unityプロジェクトを開きます。
- メインメニューの
Window > Xsolla > Edit Settings をクリックします。をクリックします。 - サンドボックスモードを有効にするには、
Inspector パネルのEnable sandbox? ボックスをチェックします。
- アプリケーションのログインシステム、ゲーム内ストア、その他のページのインターフェイスをデザインします。Unity説明に従って、独自のソリューションを作成することができます。
- SDKメソッドを使って、アプリケーションロジックに応じたイベント処理を設定します。
トークンを取得する
トークンを取得するには、
- 購入したユーザーのID
- 支払い額
- 決済通貨
- 購入明細(任意)
- 決済ステーションパラメータ(任意)
以下のいずれかの方法で購入情報を渡すことができます:
item
パラメータを介してアイテムのリストとしてdescription
パラメータを介して購入の説明として
決済ステーションンのパラメータ(例:ローカライゼーション言語、インターフェースのプロパティ、テーマ)は、settings
オブジェクトに渡されます。サンドボックスモードを有効/無効にするには、トークンを受信するリクエストのsandbox
パラメータの値を変更し、SDKの設定を変更する必要があります。決済ステーションのインターフェースの残りの設定を変更するには、トークンの要求のパラメータを変更する必要があります。
custom_parameters
パラメータを使用して追加情報を渡すことができます。この情報は、設定されたウェブフックにも渡されます。決済UIを開く
決済UIを開くには、前のステップで取得したトークンをOpenPurchaseUi
SDKメソッドに渡します。
ウェブフックの設定
- パブリッシャーアカウントに移動します。
- プロジェクト設定>ウェブフックに移動し、ウェブフックURLを指定し、秘密鍵を生成してプロジェクトウェブフックにサインします。
- チェックアウトタブに移動し、接続をクリックします。
- ウェブフックハンドラをテストします。
- メッセージ本文のないHTTPコード204
- 指定されたユーザーが見つからなかった場合、または無効な署名が渡された場合の問題を記述するHTTPコード400
- サイドメニューの決済ステーション をクリックして、設定に移動します。
- チェックアウトトグル をオンに設定します。
- 保存をクリックします。
支払処理をテストする
アセットの設定が完了した後、決済プロセスをテストします。デフォルトでは、どのユーザーに対しても、すべてのはサンドボックスモードで行われます。テスト用の銀行カードを使って、決済の成功をシミュレーションします。
実際の決済を行って支払処理をテストするには:
- エクソラと契約を結んでいることを確認してください。
- Unityプロジェクトで、
Inspector パネルのEnable sandbox? チェックボックスからチェックを外します。 - トークンのリクエストで、
sandbox
パラメータをfalse
に設定します。
誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。