Перейти к основному содержимому

Отправление жалобы

Запрос на создание жалобы отправляется в случае технических или иного рода проблем, касающихся платежей.

Swagger - подробное API жалоб.

Механика работы

  1. Происходит внештатная ситуация.
  2. Мерчант отправляет запрос на создание жалобы.

API

Для отправки жалобы на создание: POST запрос https://{firstpay_url}/api/complaints/v1/init.

Интерфейс тела запроса на создание жалобы

{
"publicKey": "string",
"hash": "string",
"merchantPaymentId": "string",
"merchantUserId": "string" || null,
"paymentMethodId": "string" || null,
"attachmentId": "string" || null,
"paymentId": "string" || null,
"amount": "number" || null,
"clientFieldsValues": [
{
"key": "string",
"value": "string"
}
] | null,
"comment": "string" || null,
"postBackUrl": "string" || null
}

Таблица с описанием всех полей тела запроса

ПолеТипОбязательныйОписание
publicKeyStringДаПубличный ключ, который выдавался при регистрации мерчанта на платформе FirstPay (Ключ передается в файле, нужно передать все его содержимое).
hashStringДаЗакодированная строка тела запроса. О том как ее сформировать - см. в разделе "Авторизация".
merchantPaymentIdStringДаОпциональное поле. Требуется указать id платежа в своей системе.
merchantUserIdStringНетОпциональное поле. Можно указать id пользователя в своей системе.
paymentMethodIdStringНетОпциональное поле. ID платежного метода.
attachmentIdStringНетОпциональное поле. Можно загрузить изображение с аккаунтом - см. в разделе "Загрузка медиа". В ответе придёт поле id, его как раз и можно будет указать при создании жалобы.
paymentIdStringНетОпциональное поле. ID платежа в системе FirstPay.
amountNumberНетОпциональное поле. Сумма платежа.
clientFieldsValuesArrayНетОпциональное поле. Список заполненных полей пользователем. Все эти поля приходят в платежном методе.
keyStringДаИдентификатор/id поля.
valueStringДаЗначение, заполненное пользователем.
commentStrungНетОпциональное поле. Дополнительный комментарий.
postBackUrlStrungНетОпциональное поле. При указании postBackUrl FirstPay после работы над жалобой отправит запрос на переданный url. Если параметр не передан, то запрос отправлен не будет.

Таблица возвращаемых ответов:

codeТело ответаОписание
200Тело ответаПри успешном запросе возвращаются данные по созданной жалобе.
400{"error": "some text here..."}Ошибка возникает, если не удалось распарсить тело запроса и query параметры. (скорее всего они были переданы с ошибкой).
401{"error": "NO_LOGIN"}Ошибка возникает, если не передали в теле запроса поле publicKey.
401{"error": "NO_TOKEN"}Ошибка возникает, если не передали в теле запроса поле hash.
401{"error": "NO_KEY"}Ошибка возникает, если передан неправильный publicKey.
401{"error": "UNAUTHORIZED"}Ошибка возникает, если произошла ошибка при валидации publicKey и hash.
403{"error": "ACCESS_DENIED"}Ошибка возникает, если мерчант в запросе указал метод платежа, к которому не имеет доступа.
404{"error": "NOT_FOUND"}Ошибка возникает при запросе платежного метода по id, если такого метода нет в системе.
500{"error": "some text here..."}Ошибка возникает, когда сервер не смог обработать запрос и произошла какая-то не штатная ситуация.

Интерфейс тела ответа создания жалобы:

{
"id": "string",
"merchantId": "string",
"merchantPaymentId": "string",
"merchantUserId": "string" || null,
"paymentMethodId": "string" || null,
"currencyCode": "string" || null,
"paymentId": "string" || null,
"status": "string",
"amount": "number" || null,
"comment": "number" || null,
"createdAt": "string",
"updatedAt": "string"
}

Таблица с описанием всех полей:

ПолеТипОписание
idStringID жалобы в системе FistPay.
merchantIdStringID мерчанта в системе FistPay.
merchantPaymentIdStringID платежа в системе мерчанта.
merchantUserIdStringОпциональное поле. ID пользователя в системе мерчанта.
paymentMethodIdStringОпциональное поле. ID платежного метода.
currencyCodeStringОпциональное поле. Код валюты.
paymentIdStringОпциональное поле. ID платежа в системе FirstPay.
statusStringСтатус жалобы в системе FirstPay.
amountNumberОпциональное поле. Сумма платежа.
commentStringОпциональное поле. Дополнительный комментарий.
createdAtStringДата и время создания жалобы.
updatedAtStringДата и время изменения жалобы.