支払いがキャンセルされると、エクソーラはキャンセルされた取引の詳細を、refundタイプのウェブフックとしてウェブフックURLに送信します。
ウェブフックの再試行メカニズムは、誰が返金を開始したかによって異なります:
5xxステータスコード
が返された場合、ウェブフックは間隔を空けながら再送されます。最大再試行回数は、最初の試行から48時間以内に12回です。返金プロセスに関する詳細な情報は、こちらの説明.をご参照ください。
注意
以下の条件がすべて満たされている場合でも、支払いはユーザーに返金されます:
4xxステータスコードが返された、またはすべての再試行後に応答がなかった、あるいは5xxステータスコードが返された場合。パブリッシャーアカウン トでウェブフックURLを保存すると、ウェブフックで追加情報を受信するように設定することもできます。
注意
2025年1月22日以前にパブリッシャーアカウントに登録した場合は、プロジェクトで設定 > ウェブフック > テスト > 決済ソリューション > 詳細設定セクションでトグルを見つけます。
| トグル | 説明 |
|---|---|
| 保存された決済方法による取引に関する情報を表示する | 情報は、ウェブフックの以下のカスタムパラメータに渡されます:
|
返金コード:
| コード | 理由 | 説明 |
|---|---|---|
| 1 | Cancellation by the user request / the game request | パブリッシャーアカウントからキャンセルが開始されました。 |
| 2 | Chargeback | トランザクションのチャージバックが要求されました。 |
| 3 | Integration error | エクソラとゲームの統合に関する問題 推奨事項:ブロックリストにユーザーを追加しません。 |
| 4 | Potential fraud | 不正の疑いがあります。 推奨事項: ユーザーをブロックリストに追加してください。 |
| 5 | Test payment | テストトランザクション後にキャンセル処理が実行されます。 推奨事項:ブロックリストにユーザーを追加しません。 |
| 6 | User invoice expired | 請求書の期限が切れました(後払いモデルで使用)。 |
| 7 | Fraud notification from PS | 決済システムで支払いが拒否されました。決済システムで不正の可能性が検出されました。 推奨事項:ユーザーをブロックリストに追加してください。 |
| 8 | Cancellation by the PS request | 決済システムによってキャンセルが要求されました。 推奨事項:ブロックリストにユーザーを追加しません。 |
| 9 | Cancellation by the user request | ユーザは何らかの理由でゲームや購入に満足していませんでした。 推奨事項:ブロックリストにユーザーを追加しません。 |
| 10 | Cancellation by the game request | ゲームによってキャンセルが要求されました。 推奨事項:ブロックリストにユーザーを追加しません。 |
| 11 | Account holder called to report fraud | アカウント所有者がトランザクションを行わなかったと述べています。 |
| 12 | Friendly fraud | フレンドリー詐欺が報告されました。 |
| 13 | Duplicate | 同じインボイスのトランザクションが重複しています。 |
| notification_type required | string 通知タイプ。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
required | object トランザクションの詳細(オブジェクト)。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
required | object 支払明細(オブジェクト)。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| custom_parameters | object カスタムパラメータ。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object 購入内容(オブジェクト)。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object 返金の詳細(オブジェクト)。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object カスタムプロジェクト設定(オブジェクト)。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object ユーザーの詳細(オブジェクト)。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
処理の成功を示すために戻ります。
提供された情報(たとえば、必要なパラメーターの欠落、認可の失敗など。)にエラーが発生した場合に戻ります。
リターンはサーバーに一時的なエラーが発生したことを示します。
curl -v 'https://your.hostname/your/uri' \ -X POST \ -d '{ "notification_type": "refund", "settings": { "project_id": 18404, "merchant_id": 2340 }, "purchase": { "subscription": { "plan_id": "b5dac9c8", "subscription_id": "10", "date_create": "2014-09-22T19:25:25+04:00", "currency": "USD", "amount": 9.99 }, "checkout": { "currency": "USD", "amount": 50 }, "total":{ "currency": "USD", "amount": 200 } }, "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, "dry_run": 1, "agreement": 1 }, "refund_details": { "code": 4, "reason": "Potential fraud" }, "payment_details": { "sales_tax": { "currency": "USD", "amount": 0 }, "direct_wht": { "currency": "USD", "amount": 0.70 }, "xsolla_fee": { "currency": "USD", "amount": "10" }, "payout": { "currency": "USD", "amount": "200" }, "payment_method_fee": { "currency": "USD", "amount": "20" }, "payment": { "currency": "USD", "amount": "230" }, "repatriation_commission": { "currency": "USD", "amount": 10 } } } }'
{- "error": {
- "code": "INCORRECT_AMOUNT",
- "message": "Incorrect amount"
}
}