コンテンツへスキップ

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

レポートの一覧

リクエスト

指定した期間の財務レポートのリストを取得します。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

クエリ
datetime_fromstring(datetime)必須

期間の開始は YYYY-MM-DD (年月日)形式で表示されます。次のパラメータの少なくとも1つが渡された場合は必須ではありません:

  • transfer_id
  • report_id

例: datetime_from=2023-02-08
datetime_tostring(datetime)必須

期間の終了は YYYY-MM-DD (年月日)形式で表示されます。次のパラメータの少なくとも1つが渡された場合は必須ではありません:

  • transfer_id
  • report_id
datetime_fromdatetime_toの差は92日を超えることはできません。

例: datetime_to=2023-03-08
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports?datetime_from=2023-02-08&datetime_to=2023-03-08'

レスポンス

OK。

ボディapplication/json
レスポンス
application/json
[ { "agreement_document_id": "Organization Inc_RUB", "currency": "RUB", "is_direct_payout": false, "is_draft_by_agreement": true, "month": "January", "report_id": 57613, "year": 2019 }, { "agreement_document_id": "Organization Inc_EUR", "currency": "USD", "is_direct_payout": false, "is_draft_by_agreement": true, "month": "January", "report_id": 57619, "year": 2019 } ]

取引履歴を取得する

リクエスト

指定した期間のトランザクションの成功とキャンセルに関する詳細情報のリストを返します。 これに応じて、手数料、税金、注文、ユーザーに関するデータなど、支払いに関する情報を取得します。 JSONまたはCSV形式でリストを取得できます。このAPIコールを使用して、財務照合を実行できます。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

formatstring必須

データ形式。

列挙型"json""csv""xls"
クエリ
datetime_fromstring(datetime)必須

期間の開始は YYYY-MM-DD (年月日)形式で表示されます。次のパラメータの少なくとも1つが渡された場合は必須ではありません:

  • transfer_id
  • report_id

例: datetime_from=2023-02-08
datetime_tostring(datetime)必須

期間の終了は YYYY-MM-DD (年月日)形式で表示されます。次のパラメータの少なくとも1つが渡された場合は必須ではありません:

  • transfer_id
  • report_id
datetime_fromdatetime_toの差は92日を超えることはできません。

例: datetime_to=2023-03-08
in_transfer_currencyinteger必須

すべての財務データをペイアウト通貨に変換します(デフォルトではペイイン通貨が使用されます)。次のパラメータの少なくとも1つが渡された場合は必須ではありません:

  • transfer_id
  • report_id

show_totalboolean

トランザクションの合計金額をレポートに含めるかどうか。CSV形式でのみエクスポートできます。デフォルトではtrue

merchant_of_recordsstring or null

マーチャントレコード。xsollamerchantまたは指定しないことも可能です。merchantである場合は、パートナーのゲートウェイを介して行われたトランザクションを返します。xsollaである場合は、パートナーのゲートウェイを経由していないトランザクションを返します。指定されていない場合は、すべてのトランザクションを返します。

列挙型 値説明
merchant

パートナーのゲートウェイを経由して行われたトランザクションを返します。

xsolla

パートナーのゲートウェイを経由せずに行われたトランザクションを返します。

project_idinteger

プロジェクトID。

show_dry_runboolean

テストトランザクションを含めるかどうかを示します。

transfer_idinteger

配当ID。

report_idinteger

財務レポートID。

offsetinteger

リスト生成元のエレメントの番号です(カウントは0から始まります)。

limitinteger

ページに表示されるトランザクションの数の制限。このパラメータが渡された場合、datetime_fromおよびdatetime_toパラメータを渡す必要はありません。

statusstring

トランザクションステータス。

列挙型"done""canceled""error""refunded"
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports/transactions/registry.{format}?datetime_from=2023-02-08&datetime_to=2023-03-08&in_transfer_currency=0&show_total=true&merchant_of_records=xsolla&project_id=0&show_dry_run=true&transfer_id=0&report_id=0&offset=0&limit=0&status=done'

レスポンス

取引リストは正常に返送されました。

ボディapplication/jsonArray [
payment_detailsobject

支払詳細。

purchaseobject

購入内容。

transactionobject

取引データ。

userobject

ユーザー詳細。

user_balanceobject

ユーザ残高。

]
レスポンス
application/json
[ { "payment_details": {}, "purchase": {}, "transaction": {}, "user": {}, "user_balance": {} } ]

トランザクションを検索する

リクエスト

特定の検索パラメータに基づくトランザクションのリストを返します。これに応じて、ゲーム内で行われたすべての支払いに関するデータが取得されます。トランザクション期間 だけでなく、他のパラメータも指定できます。特定のユーザーまたは特定の支払いステータスによって行われたトランザクションを検索します。JSONまたはCSV形式でリス トを取得することができます。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

formatstring必須

データ形式。

列挙型"json""csv""xls"
クエリ
datetime_fromstring(datetime)

期間開始日。

datetime_tostring(datetime)

期間終了日。

project_idinteger

プロジェクトID。

transaction_idinteger

トランザクションID。

typestring

検索結果に表示される取引のタイプ:

列挙型 値説明
all

全ての取引。

canceled

テスト取引を除く、キャンセルされた取引。

test

取引をテストします。

transferred

テスト取引を除く、成功した取引。

phonestring

ユーザーの電話番号(国際形式)。

user_idstring

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

user_namestring

ユーザー名。

user_customstring

ユーザー識別のためのカスタムパラメータ。

emailstring<= 100 characters

ユーザーのEメール。

external_idstring

ゲーム内のトランザクションID。各ユーザーの支払いに対して一意でなければならなりません。

order_idinteger

注文ID。それを使用して、注文する APIメソッドを呼び出すことができます。

例: order_id=1234
offsetinteger

リスト生成元のエレメントの番号です(カウントは0から始まります)。

limitinteger

ページにあるエレメント数の制限。

statusstring(status.enum)

トランザクションステータス。

列挙型 値説明
awaitingRefund

この取引は返金の決定待ちです。ユーザーが返金をリクエストした後、エクソーラカスタマーサポートはリクエストを手動で処理し、返金に関する決定を行います。

canceled

次の2つのシナリオがありれます:

  • 取引は決済システム側でキャンセルされました。例えば、ユーザーアカウントの資金が不足しているとします。
  • 支払いはユーザーに払い戻されました。
created

ユーザーがトランザクションを開始しましたが、まだ処理されていません。

done

トランザクションは正常に処理されました。

error

トランザクションの処理中にエラーが発生しました。このような支払いは、エクソーラカスタマーサポートにお問い合わせいただくことで返金できます。

partiallyRefunded

ユーザーは一部返金を受けました。

processing

トランザクションは処理中です。

refunded

ユーザーのXsolla残高に返金されました。

review

トランザクション処理は不正防止システムによって停止されており、現在追加の検証中です。

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports/transactions/search.{format}?datetime_from=string&datetime_to=string&project_id=0&transaction_id=0&type=all&phone=string&user_id=string&user_name=string&user_custom=string&email=string&external_id=string&order_id=1234&offset=0&limit=0&status=created'

レスポンス

OK。

ボディapplication/json
レスポンス
application/json
[ { "payment_details": {}, "payment_system": {}, "purchase": {}, "transaction": {}, "user": {} } ]

トランザクションを検索する(高速検索)

リクエスト

数秒以内に特定の検索パラメータに基づくトランザクションのリストを取得します。これは、JSON、CSV、またはXLS形式のデータを返すトランザクションを探す APIコールの代替となるものです。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

クエリ
transaction_idinteger

トランザクションID。これまたはexternal_idのいずれかを指定する必要がありますが、両方を指定することはできません。

external_idstring

ゲームでのトランザクションID。これは支払いごとに異なります。これまたはtransaction_idのいずれかを指定する必要がありますが、両方を指定することはできません。

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports/transactions/simple_search?transaction_id=0&external_id=string'

レスポンス

取引リストは正常に返送されました。

ボディapplication/jsonArray [
payment_detailsobject

支払詳細。

transactionobject

トランザクションの詳細。

userobject

ユーザーの詳細(オブジェクト)。

]
レスポンス
application/json
[ { "payment_details": {}, "transaction": {}, "user": {} } ]

支払いの内訳を通貨で取得する

リクエスト

ペイアウトの内訳を通貨で取得します。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

クエリ
datetime_fromstring(datetime)

期間開始日。

datetime_tostring(datetime)

期間終了日。

legal_entity_idinteger

開発者の法人のID。

statusstring

トランザクションステータス。

列挙型"done""canceled""error""refunded"
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports/transactions/summary/transfer?datetime_from=string&datetime_to=string&legal_entity_id=0&status=done'

レスポンス

OK。

ボディapplication/json
レスポンス
application/json
[ { "DirectTaxesOfPayments": 0.46, "IsoCurrency": "RUB", "PaymentsAmount": 223679.84, "SumCommissionAgent": 11329.58, "SumCommissionUserTaxes": 153.67, "SumItems": 571325.13, "SumNominalSum": 214792.98, "SumOutProject": 551096.13, "SumPayoutSum": 193316.71, "TaxesOfPayments": 171.56 }, { "DirectTaxesOfPayments": 0.14, "IsoCurrency": "USD", "PaymentsAmount": 482.58, "SumCommissionAgent": 77.51, "SumCommissionUserTaxes": 0.07, "SumItems": 243777.62, "SumNominalSum": 493.09, "SumOutProject": 241787.62, "SumPayoutSum": 462.62, "TaxesOfPayments": 0.14 }, { "DirectTaxesOfPayments": 0.07, "IsoCurrency": "EUR", "PaymentsAmount": 608.2, "SumCommissionAgent": 55.71, "SumCommissionUserTaxes": 90.94, "SumItems": 156238.62, "SumNominalSum": 607.26, "SumOutProject": 156158.62, "SumPayoutSum": 460.8, "TaxesOfPayments": 90.94 } ]

トランザクションの取得

リクエスト

IDでトランザクションの全情報を取得します。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

transaction_idinteger必須

トランザクションID。

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports/transactions/{transaction_id}/details'

レスポンス

トランザクション情報が正常に返されました。

ボディapplication/jsonArray [
customer_detailsobject
finance_detailsobject
payment_detailsobject
subscription_detailsobject
transaction_detailsobject
]
レスポンス
application/json
[ { "customer_details": {}, "finance_details": {}, "payment_details": {}, "subscription_details": {}, "transaction_details": {} } ]

リクエスト

一定期間のすべてのペイアウトを一覧表示します。

通知

APIコールにproject_idパスパラメータが含まれていないため、会社の全プロジェクトで有効なAPIキーを使用して認可を設定する必要があります。

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

マーチャントID。

クエリ
datetime_fromstring(datetime)

期間開始日。

datetime_tostring(datetime)

期間終了日。

legal_entity_idinteger

開発者の法人のID。

statusstring

支払い状況。

列挙型 値説明
hold

リクエストの続行を待っています。

paid

支払い完了。

ready

支払い中。

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/pay-station/merchants/{merchant_id}/reports/transfers?datetime_from=string&datetime_to=string&legal_entity_id=0&status=hold'

レスポンス

OK。

ボディapplication/json
レスポンス
application/json
[ { "canceled": 0, "payout": {}, "rate": 1, "transfer": {} } ]
操作
操作