Xsolla-logo

ДиспутWebhook POST

При открытии нового диспута или изменении статуса диспута Xsolla отправляет вебхук с типом dispute на URL-адрес вебхука. Чтобы получать вебхук, обратитесь к персональному менеджеру проекта или напишите на csm@xsolla.com.

Request
Request Body schema: application/json
notification_type
required
string

Тип оповещения.

action
required
string

Тип действия.

Enum: Description
adding

Открытие нового диспута.

updating

Изменение статуса диспута.

required
object

Объект с информацией о транзакции.

id
required
integer

ID транзакции.

date_create
required
string

Дата платежа.

required
object

Объект с информацией о сумме транзакции.

amount
required
number <float>

Сумма платежа.

currency
required
string

Валюта. Используется трехбуквенное обозначение валюты согласно стандарту ISO 4217.

payment_method
required
string

Способ оплаты.

Enum: Description
credit_debit_card

Кредитная или дебитовая карта

paypal

PayPal

country_code
required
string

Страна пользователя. Используется двухбуквенное обозначение страны согласно стандарту ISO 3166-1 alpha-2.

external_id
string

Внешний ID транзакции. Изучите подробную информацию в Частых вопросах.

required
object

Объект с информацией о кастомных настройках проекта.

project_id
required
integer

ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта.

merchant_id
required
integer

ID продавца.

required
object

Объект с информацией о пользователе.

id
required
string

ID пользователя.

email
string

Email пользователя.

required
object

Объект с информацией о диспуте.

incoming_date
required
string

Дата открытия диспута согласно стандарту RFC 3339.

reason
required
string

Причина открытия диспута. Описания групп причин приведены в документации.

Enum: "non_receipt" "not_as_described" "duplicate_processing" "paid_by_other_means" "incorrect_amount" "credit_not_processed" "general" "fraud" "cancelled_recurring" "cancelled_merchandise" "late_presentment" "no_authorization" "problem_with_remittance" "other"
type
required
string

Тип диспута.

Enum: Description
1st_time_chargeback

Первичный чарджбэк.

2nd_time_chargeback

Повторный чарджбэк (pre-arbitration).

arbitration

Решение спора между банком-эмитентом и продавцом, когда первичный и повторный чарджбэк были отклонены.

chargeback

Первичный чарджбэк.

chargeback_reversal

Чарджбэк отозван.

claim

Спор между покупателем и продавцом в PayPal.

dispute

Владелец карты запрашивает детали платежа через банк.

inquiry

Владелец карты запрашивает детали платежа через банк.

other

Используется в случае, когда ни один из существующих типов не подходит.

reimbursement

Сделан возврат средств.

reimbursement_reversal

Чарджбэк отозван.

representment

Команда управления чарджбэками отправляет доказательства платежной системе.

representment_reversal

Чарджбэк отозван.

retrieval

Владелец карты запрашивает детали платежа через банк.

status
required
string

Статус диспута.

Enum: Description
accepted

Принят

lost

Проигран

new

Новый

no_actions_required

В процессе

won

Выигран

Responses
204

Верните, чтобы сообщить об успешной обработке вехбука.

400

Верните в случае ошибки в предоставленной информации (например, обязательный параметр не передан, или авторизация не прошла).

500

Верните, чтобы сообщить о временных ошибках на ваших серверах.

Request samples
curl -v 'https://your.hostname/your/uri' \
-X POST \
-H 'Authorization: Signature 32c64a80d2527dc08906ae1891bac4489509b9f6' \
-d '{
  "notification_type": "dispute",
  "action": "adding",
  "transaction": {
    "id": 123456789,
    "date_create": "2023-08-24T10:21:00+04:00",
    "total": {
      "amount": 1,
      "currency": "EUR"
    },
    "payment_method": "credit_debit_card"
  },
  "settings": {
    "project_id": 18404,
    "merchant_id": 2340
  },
  "user": {
    "id": "1234567",
    "email": "email@example.com",
    "country_code": "US"
  },
  "dispute": {
    "incoming_date": "2024-01-25T01:02:03+04:00",
    "reason": "not_as_described",
    "type": "retrieval",
    "status": "new"
  }
}'
Response samples
application/json
{
  • "error": {
    }
}