決済トークンの取得方法
決済UIを開くには、トークンを取得する必要があります。トークンとは、ゲームとユーザーに関する暗号化されたデータを含む文字列です。トークンを取得してユーザーを識別し、購入を許可するように実装する必要があります。
決済トークンを取得するには:
ユーザー認証トークンを取得する
トークンの有効期限は、最後にエクソーラAPIを呼び出してから24時間後です。有効期限が切れた後に新しいトークンを受け取るロジックを実装してください。ユーザーがアプリケーションに再ログインする必要がないように、バックグラウンドで新しいトークンを取得することをお勧めします。
アプリケーションのバックエンドで、ユーザー認証トークンの取得を実装します。これを行うには、基本的なHTTP認証を含むHTTP POSTリクエストを使用し、リクエスト本文で必要なパラメータを渡します。
基本HTTP認証
エクソーラAPIは基本アクセス認証を採用しています。APIに対する全リクエストは、Authorization: Basic <your_authorization_basic_key>
ヘッダーを含む必要があります。<your_authorization_basic_key>
はマーチャントID:APIキーのペアで、Base64の基準に従ってエンコードしています。アドミンページに移動して、次のパラメータを見つけます:
- マーチャントIDは以下の場所で表示されます:
- 会社設定 > 会社セクション。
- アドミンページページのブラウザーアドレスバーのURL。URLは以下の形式があります:
https://publisher.xsolla.com/<merchant ID>/<Publisher Account section>
。
- APIキーは、作成時に一度だけアドミンページに表示され、お客様側で保存する必要があります。次のセクションで新しいキーを作成できます:
- 会社設定 > APIキー
- プロジェクト設定 > APIキー
APIキーの操作については、APIリファレンスを参照してください。
キーに関する推奨事項:
- 生成されたAPIキーは、お客様側で保存してください。APIキーは、アドミンページで作成時に一度だけ表示することができます。
- APIキーは秘密にしておいてください。APIキーは、お客様の個人アカウントとアドミンページのプロジェクトへのアクセスを提供します。
- APIキーはサーバーに保存する必要があり、決してバイナリやフロントエンドに保存してはいけません。
必要なAPIコールにproject_id
パスパラメータが含まれていない場合は、会社のすべてのプロジェクトで有効なAPIキーを使用して認証を設定します。
リクエスト本文
リクエスト本文に、以下の必須パラメータを渡します:
パラメータ | 種類 | 説明文 |
---|---|---|
user.id | string | お使いのシステムの一意のユーザーID。 |
user.email | string | 購入時の領収書を送信するためのユーザーメールアドレスです。このパラメータを渡さなかった場合、決済画面にメールアドレス入力のための必須フィールドが表示されます。 |
settings.project_id | integer | ゲーマーのXsolla ID。この情報は、アドミンページのプロジェクトセクションで確認することができます。 |
ユーザーエクスペリエンスを向上させるために、以下のパラメータを渡すこともできます:
パラメータ | 種類 | 説明文 |
---|---|---|
user.name | string | レシートに表示されるユーザースクリーンネーム。 |
settings.currency | string | 優先決済通貨。 |
settings.language | string | インターフェース言語。 |
curl -i -X POST \
-u 2340:ZHgbSDVP6LtAJVWu \
https://api.xsolla.com/merchant/v2/merchants/<merchant_id>/token \
-H 'Content-Type: application/json' \
-d '{
"settings": {
"currency": "USD",
"language": "en",
"project_id": <project_id>
}
},
"user": {
"email": {
"value": "<user_email>"
},
"id": {
"value": "<user_id>"
},
"name": {
"value": "<user_name>"
}
}
}'
応答で受け取ったユーザー認証トークンの例
{
"token": "1230OWrp0KF6uqvmN8jWuzLyoXMzxTyK_lc_en"
}
決済トークンを取得する
決済トークンを取得するには、注文を作成します。 注文とは、ユーザーがストアで購入したいアイテムです。注文が決済されると、ユーザーはアイテムを受け取ります。決済フローをテストするには、指定されたアイテムで注文を作成するAPIコールを使用して注文を作成します:
- APIドキュメンテーションウェブサイトでテストを実行する場合は、
Try it をクリックしてリクエストを作成するためのインターフェイスを開きます。 Security ブロックのBearer Token フィールドに、認証手続きの通過時に取得したトークンを入力します。Body ブロックには、注文の詳細(数量や品目数量など)を渡します。サンドボックスモードにアクセスするには、"sandbox": true
を渡します。Parameters ブロックで、以下を渡します:project_id
— アドミンページで確認できるプロジェクトID。item_sku
— アイテムSKU。
token
— 決済トークン
誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。