コンテンツへスキップ

Pay Station API (2.0)

概要

  • バージョン: 2.0.0
  • サーバー:
    • https://api.xsolla.com/api

ペイステションは、ゲームストアでのゲーム内課金に便利なUIをユーザーに提供することで、パートナー様の商品を収益化することができます。決済UIを開くための設定は、 以下の説明書を参照してください。

Pay Station APIは以下のコールグループを提供します:

  • トークン — 決済UIを介したさらなる支払い処理のために、任意のユーザーパラメータを使用してトークンを生成するAPIコールが含まれています。
  • トークン化 決済UIを開いたりユーザーの関与を必要とせずに、支払いを安全に処理するためのAPIコールが含まれています。
  • レポート — ユーザーのトランザクションに関するデータを返し、レポートを生成し、通貨別の決済内訳を取得するためのAPIコールが含まれています。
  • 返金 — 全額および一部返金をリクエストするためのAPIコールが含まれています。
  • テスト — チャージバック処理をテストするためのAPIコールが含まれています。

決済UIの設定に関する詳細情報は、支払ソリューション連携ガイドを参照してください。

メモ

ポストマンコレクションXsolla Base APIセクションを参照して、連携に使われるAPIコールをテストすることもできます。

OpenAPI記述をダウンロード
言語
サーバー
https://api.xsolla.com/merchant/v2/
Mock server
https://xsolla.redocly.app/_mock/ja/api/pay-station/
操作
操作

保存された決済アカウントの一覧

リクエスト

特定のユーザーの保存された決済アカウントを一覧表示します。

メモ

サンドボックスモードでは、このAPIコールは、3-Dセキュア機能を持たないテストカードでのみ機能します。

セキュリティ
basicAuth
パス
project_idinteger必須

プロジェクトID。

user_idstring必須

プレイヤー側に保存されているゲーム内の一意のユーザーID。必ず既存のユーザーIDを渡してください。エラーが発生した場合は、よくある質問への回答を参照してください。

クエリ
modestring

支払い処理をテストするには、sandboxに設定します。実際の決済用を行うためにパラメータを削除します。

curl -i -X GET \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payment_accounts?mode=string'

レスポンス

OK。

ボディapplication/json
レスポンス
application/json
[ { "id": 4612345, "name": "PP_saved_account", "payment_system": {}, "type": "paypal" } ]

保存された決済アカウントの削除

リクエスト

保存済みの決済アカウントを削除します。

メモ

サンドボックスモードでは、このAPIコールは、3-Dセキュア機能を持たないテストカードでのみ機能します。

メモ

このAPIメソッドはサンドボックスモードで呼び出すことができます。そのためには、リクエストの中でテスト用の決済アカウントデータを渡します。サンドボックスモードのアクセス方法とテストシナリオの詳細については、説明を参照してください。

セキュリティ
basicAuth
パス
project_idinteger必須

プロジェクトID。

user_idstring必須

プレイヤー側に保存されているゲーム内の一意のユーザーID。必ず既存のユーザーIDを渡してください。エラーが発生した場合は、よくある質問への回答を参照してください。

typestring必須

決済アカウントの種類。

列挙型 値説明
alipayplus_boost

Boost。

alipayplus_cn

Alipay(アリペイ)。

alipayplus_dana

DANA。

alipayplus_gcash

GCash。

alipayplus_hk

Alipay (Hong Kong)(アリペイ香港)。

alipayplus_kplus

K PLUS。

alipayplus_maya

Maya。

alipayplus_rabbitlinepay

Rabbit LINE Pay(ラビットラインペイ)。

alipayplus_tng

Touch 'n Go。

alipayplus_truemoney

TrueMoney ウォレット。

account_idinteger必須

エクソーラデータベースに保存されたアカウントのID。

curl -i -X DELETE \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payment_accounts/{type}/{account_id}'

レスポンス

No Content.

保存されたアカウントで課金する

リクエスト

保存された決済アカウントを介してユーザーに請求する。

メモ

サンドボックスモードでは、このAPIコールは、3-Dセキュア機能を持たないテストカードでのみ機能します。

通知

APIコールが正しく機能するように、タイムアウトを2分に設定します。

セキュリティ
basicAuth
パス
project_idinteger必須

プロジェクトID。

user_idstring必須

プレイヤー側に保存されているゲーム内の一意のユーザーID。必ず既存のユーザーIDを渡してください。エラーが発生した場合は、よくある質問への回答を参照してください。

typestring必須

決済アカウントの種類。

列挙型 値説明
alipayplus_boost

Boost。

alipayplus_cn

Alipay(アリペイ)。

alipayplus_dana

DANA。

alipayplus_gcash

GCash。

alipayplus_hk

Alipay (Hong Kong)(アリペイ香港)。

alipayplus_kplus

K PLUS。

alipayplus_maya

Maya。

alipayplus_rabbitlinepay

Rabbit LINE Pay(ラビットラインペイ)。

alipayplus_tng

Touch 'n Go。

alipayplus_truemoney

TrueMoney ウォレット。

account_idinteger必須

エクソーラデータベースに保存されたアカウントのID。

ボディapplication/json必須
custom_parametersobject(custom_parameters)

このオブジェクトには、不正対策フィルターを設定するためのパラメータが含まれています。パラメータのリストを以下に示します。カスタムパラメータを追加するには、カスタマーサクセスマネージャーにご連絡いただくか、csm@xsolla.comまで電子メールをお送りください。

custom_parameters.​active_datestring

ISO 8601形式の最終閲覧日。

custom_parameters.​additional_verificationboolean

プレイヤーがアカウント承認手続きを使用するかどうかを示します。

custom_parameters.​character_customizedboolean

プレイヤーがキャラクターをカスタマイズしたかどうかを示します。

custom_parameters.​chat_activityboolean

プレイヤーがチャット機能を使用するかどうかを示します。

custom_parameters.​completed_tasksinteger

完了したタスクや目標の数。

custom_parameters.​forum_activityboolean

プレイヤーがフォーラム機能を使用するかどうかを示す。

custom_parameters.​items_usedboolean

プレイヤーが購入したゲームアイテムを使用するかどうかを示します。

custom_parameters.​karma_pointsinteger

プレイヤーのカルマ値。

custom_parameters.​last_change_password_datestring

ISO 8601に沿ったパスワード最終更新日。

custom_parameters.​non_premium_currencynumber(float)

非プレミアム通貨の金額。

custom_parameters.​notifications_enabledboolean

プレイヤーが通知を有効化したかどうかを示します。

custom_parameters.​profile_completedboolean

プレイヤーがプロフィールに追加情報を入力したかどうかを示します。

custom_parameters.​profile_image_addedboolean

プレイヤーがプロフィール画像をアップロードしたかどうかを示します。

custom_parameters.​pvp_activityboolean

PvP(プレイヤー対プレイヤー)のバトルに参加するかどうか。

custom_parameters.​registration_datestring

ISO 8601形式のアカウント作成日。

custom_parameters.​session_timestring

ISO 8601に沿った平均セッション時間。

custom_parameters.​social_networks_addedboolean

プレイヤーがソーシャルメディアプロファイルを接続しているかを示します。

custom_parameters.​total_bansinteger

チャットやフォーラムでプレイヤーが禁止された回数。

custom_parameters.​total_charactersinteger

ゲーム内のキャラクターの数。

custom_parameters.​total_clansinteger

プレイヤーがメンバーになっているクランの数。

custom_parameters.​total_friendsinteger

友達の数。

custom_parameters.​total_game_eventsinteger

プレイヤーが参加したゲーム内イベントの数。

custom_parameters.​total_giftsinteger

プレイヤーが送受信したゲーム内の贈り物の数。

custom_parameters.​total_hoursinteger

合計ゲーム時間数。

custom_parameters.​total_inventory_valuenumber(float)

インベントリ総額(ゲーム内通貨)。

custom_parameters.​total_sumnumber(float)

総支払額。

custom_parameters.​tutorial_completedboolean

プレイヤーがゲームのチュートリアルを完了したかどうかを示します。

custom_parameters.​unlocked_achievementsinteger

達成した実績の数。

custom_parameters.​user_levelinteger

プレイヤーのレベル、評判、またはランク。

custom_parameters.​win_rateinteger

勝率。

purchaseobject

購入の詳細を含むオブジェクト。

purchase.​checkoutobject

チェックアウトの詳細(オブジェクト)。

purchase.​checkout.​amountnumber(float)

購入金額。

purchase.​checkout.​currencystring

購入通貨。ISO 4217に準拠した3文字の通貨コード。

purchase.​descriptionobject
purchase.​description.​valuestring<= 4000 characters
purchase.​virtual_currencyobject

仮想通貨の詳細を含むオブジェクト。

purchase.​virtual_currency.​quantitynumber(float)

仮想通貨での購入金額。

settingsobject

購入設定(オブジェクト)。

settings.​currencystring(currency)

標準の決済通貨。ISO 42173文字通貨コード。

settings.​external_idstring(external_id)

ゲーム内のトランザクションID。ユーザーの支払いごとに一意である必要があります。 詳細については、説明文書を参照してください。

settings.​mock_codeinteger(mock_code)

サンドボックスモードでPayPalによる支払い処理をテストする際に再現したいエラーコードです。パラメータに "mode":"sandbox" を渡した場合のみ、正しく動作します。

列挙型1002101510391046105710891201120318011803
settings.​modestring

決済処理をテストするには、sandboxに設定します。実際の決済用にパラメータを削除します。

userobject

ユーザー詳細。

user.​ipstring必須

ユーザーのIPアドレス。

user.​legalobject(legal)

法人情報を含むオブジェクトです。

user.​legal.​addressstring

最後まで記載した法的住所です。

user.​legal.​countrystring

設立国。ISO 3166-1 alpha-2に従って大文字2文字の国コードを使用します。

user.​legal.​namestring

法人のフルネームです。

user.​legal.​vat_idstring

納税者個別のID。

user.​namestring

ユーザー名。

curl -i -X POST \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payments/{type}/{account_id}' \
  -H 'Content-Type: application/json' \
  -d '{
    "purchase": {
      "description": {
        "value": "currency purchase"
      },
      "virtual_currency": {
        "quantity": 100
      }
    },
    "settings": {
      "currency": "USD",
      "external_id": "ext123",
      "mode": "sandbox"
    },
    "user": {
      "ip": "111.11.11.11",
      "legal": {
        "address": "17 Crown Street London SW2 0JW United Kingdom",
        "country": "GB",
        "name": "My Awesome Company",
        "vat_id": "GB111111111"
      },
      "name": "John Smith"
    }
  }'

レスポンス

作成済み。

ボディapplication/json
transaction_idinteger
レスポンス
application/json
{ "transaction_id": 123458390 }
操作
操作
操作