Xsolla-logo

支払いWebhook POST

ユーザーが支払いを完了すると、エクソーラはpaymentタイプのウェブフックで決済詳細をウェブフックURLに送信します。

もし5xxコードの応答が受信された場合、エクソーラは受信が確認されるまで、時間間隔を増やしてウェブフックを再送信します。最大の再試行回数は12回です。

ウェブフックで詳細情報を受信する権限を与えることができます。これを行うには、アドミンページでのプロジェクト設定 > ウェブフック > 高度な設定セクションで以下のトグルをオンに設定します。

トグル 説明
保存された決済アカウントに関する情報を表示する 保存された決済方法に関する情報は、payment_accountカスタムオブジェクト。
保存された決済方法による取引に関する情報を表示する

情報は、パラメータの以下のカスタムパラメータに渡されます:

  • saved_payment_method:
    • 0 — 保存された決済方法は使用されませんでした
    • 1 — 決済方法は現在の支払い時に保存されました
    • 2 — 保存された決済方法は使用されませんでした
  • payment_type:
    • 1 — 一回払い
    • 2 — 定期支払い
注文オブジェクトをウェブフックに追加する 注文に関する情報は、決済ウェブフックのorderオブジェクトに渡されます。
機密データは含まず、必要なユーザーパラメータのみを送信する

ウェブフックでは、ユーザーに関する次の情報のみが渡されます:

  • ID
カードのBINとサフィックスを表示する

銀行カード番号に関する次の情報がウェブフックで渡されます。

  • card_binパラメータの最初の6桁
  • card_suffixパラメータの最後の4桁
カードブランドを表示する 決済に使用したカードのブランド。例えば、MastercardやVisaなど。
Request
Request Body schema: application/json
notification_type
required
string

通知タイプ。

required
object

トランザクションの詳細(オブジェクト)。

agreement
integer

契約ID

dry_run
integer

テストトランザクション。パラメータは、テストトランザクションの場合は1つの値を持ち、もしくはトランザクションが実際の場合は送信されません。

external_id
string

取引external ID。詳細についてよくある質問を参照してください。

id
integer

トランザクションID。

payment_date
string

支払日。

payment_method
integer

決済方法のID。

payment_method_name
string

決済方法の名前。

payment_method_order_id
string

決済システムの決済ID。

required
object

支払明細(オブジェクト)。

object

国境を越えた取引により特定の国に課せられる源泉徴収税(オブジェクト)。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

percent
number <float>

直接源泉徴収税率(%)。

object

直接源泉徴収税。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

percent
number <float>

直接源泉徴収税率。

object

ユーザー(オブジェクト)によって支払われた金額。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

決済システム料金。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

決済システムから振り込まれた金額。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

配当の詳細(オブジェクト)。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

payout_currency_rate
string

決済と配当間の為替レート。

object

本国送金費用のデータ付きオブジェクト。サードパーティがエクソラに課します。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

売上税(オブジェクト;米国とカナダのみ)。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

percent
number <float>

消費税率。

object

アフィリエイトネットワークやインフルエンサー経由での購入から差し引かれた顧客獲得料の総額(オブジェクト)。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

percent
number <float>

顧客獲得料率(%)。

object

VATの詳細(オブジェクト;EUのみ)。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

percent
number <float>

消費税率。

object

エクソラの残高から振り込まれた金額。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

エクソラ料金(オブジェクト)。

amount
number <float>

金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

custom_parameters
object

カスタムパラメータ。

object

購入内容(オブジェクト)。

required
object

購入(オブジェクト)の合計価格。

amount
number <float>

支払額合計。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

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

amount
number <float>

購入金額。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

object

クーポンの詳細(オブジェクト;サブスクリプションの作成時にクーポンが使用された場合)。

campaign_code
string

キャンペーンコード。

coupon_code
string

クーポンコードです。

object

贈り物の詳細(オブジェクト)。

giver_id
string

贈り主のID。

hide_giver_from_receiver
string

贈り主の情報を受取り側に公開するかどうか。

message
string

贈り主からのメッセージ。

receiver_email
string

贈り物を受け取る人のメールアドレス。

receiver_id
string

贈り物の受取人のID。

object

注文に関する情報を含むオブジェクト。この情報を受け取るには、プロジェクト設定 > ウェブフック > 高度な設定セクションでのアドミンページ注文オブジェクトをウェブフックに追加するトグルをオンに設定します。

id
integer

注文ID。

object

アイテムに関する情報を含むオブジェクト。

object

アイテム価格に関する情報を含むオブジェクト。

amount
number <float>

選択した通貨でのアイテムの合計価格。

currency
string

アイテム価格の通貨。

quantity
integer

アイテム数量。

sku
string

アイテムSKU。

Array of objects

このトランザクションに適用されるプロモーション。

Array
id
integer

プロモーションID。

technical_name
string

プロモーションの名称。

object

サブスクリプションの詳細(オブジェクト)。

amount
number <float>

現金通貨での価格。

currency
string

通貨。ISO 4217に基づく3文字の通貨コード。

date_create
string

サブスクリプション作成日。日付時刻表記は、ISO 8601形式。

date_next_charge
string

次の請求日。日付時刻表記は、ISO 8601形式。

plan_id
string

プランID(プランがAPIを使用して作成された場合は外部)。

product_id
string

製品ID(アクセストークンで送信された場合)。

subscription_id
integer

エクソラデータベースのサブスクリプションID。

tags
Array of strings

プランのタグ。

object

カスタムプロジェクト設定(オブジェクト)。

merchant_id
integer

マーチャントID。

project_id
integer

プロジェクトID。このパラメータは、ドメインページのプロジェクト名の横にあります。

object

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

id
required
string

ユーザーID。

country
string

ユーザーの国。2文字の国コード(大文字)は、ISO 3166-1 alpha-2に従って使用されます。

email
string

ユーザーのEメール。

ip
string

ユーザーIP。

name
string

ユーザー名。

phone
string

ユーザーの電話。

zip
string

Zipまたは郵便番号。

Responses
204

処理の成功を示すために戻ります。

400

提供された情報にエラーがある場合に返されます(例: 必須パラメータの欠落、認証の失敗など)。この場合、ユーザーのお金は引き落とされますが、購入は失敗します。返金を行うには、エクソーラカスタマーサポートsupport@xsolla.comにお問い合わせください。

500

リターンはサーバーに一時的なエラーが発生したことを示します。

Request samples
curl -v 'https://your.hostname/your/uri' \
-X POST \
-d '{
    "notification_type": "payment",
    "settings": {
      "project_id": 18404,
      "merchant_id": 2340
    },
    "purchase": {
        "subscription": {
            "plan_id": "b5dac9c8",
            "subscription_id": "10",
            "product_id": "Demo Product",
            "date_create": "2014-09-22T19:25:25+04:00",
            "date_next_charge": "2014-10-22T19:25:25+04:00",
            "currency": "USD",
            "amount": 9.99
        },
        "checkout": {
            "currency": "USD",
            "amount": 50
        },
        "total": {
            "currency": "USD",
            "amount": 200
        },
        "promotions": [{
            "technical_name": "Demo Promotion",
            "id": 853
        }],
        "coupon": {
            "coupon_code": "ICvj45S4FUOyy",
            "campaign_code": "1507"
        },
        "order": {
          "id": 1234
          "lineitems": [
          {
            "sku": "test_1",
            "quantity": 1,
            "price": {
              "currency": "EUR",
              "amount": 6.5
              }
          }
          ]
          }
    },
    "user": {
        "ip": "127.0.0.1",
        "phone": "18777976552",
        "email": "email@example.com",
        "id": "1234567",
        "name": "John Smith",
        "country": "US"
    },
    "transaction": {
        "id": 1,
        "external_id": 1,
        "payment_date": "2014-09-24T20:38:16+04:00",
        "payment_method": 1,
        "payment_method_name": "PayPal",
        "payment_method_order_id": 1234567890123456789,
        "dry_run": 1,
        "agreement": 1
    },
    "payment_details": {
        "payment": {
            "currency": "USD",
            "amount": 230
        },
        "vat": {
            "currency": "USD",
            "amount": 0,
            "percent": 20
        },
        "sales_tax": {
            "currency": "USD",
            "amount": 0,
            "percent": 0
        },
        "direct_wht": {
            "currency": "USD",
            "amount": 0,
            "percent": 0
        },
        "payout_currency_rate": "1",
        "payout": {
            "currency": "USD",
            "amount": 200
        },
        "country_wht": {
            "currency": "USD",
            "amount": 2,
            "percent": 10
        },
        "user_acquisition_fee": {
            "currency": "USD",
            "amount": 2,
            "percent": 1
        },
        "xsolla_fee": {
            "currency": "USD",
            "amount": 10
        },
        "payment_method_fee": {
            "currency": "USD",
            "amount": 20
        },
        "repatriation_commission": {
            "currency": "USD",
            "amount": 10
        }
    },
    "custom_parameters": {
        "parameter1": "value1",
        "parameter2": "value2"
    }
}'
Response samples
application/json
{
  • "error": {
    }
}