В этом разделе описаны структура и общие ошибки системы Escrow Box.
Общая структура ошибок
Все обработанные ошибки сервиса Escrow Box возвращаються со статус кодом 400 в формате JSON одинаковой структуры.
Пример полной структури:
{ "error": { "code": "SOME_CODE", "message": "Some description of the error", "fields": { "someField": "SOME_CODE" } } }
Описание полей ошибок:
Поле | Обязательное | Описание |
---|---|---|
error | Да | Объект ошибки, вмещает подробности об ошибке |
error.code | Да | Текстовый код ошибки |
error.message | Нет | Краткое текстовое описание ошибки |
error.fields | Нет | Объект который показывает к какому(-им) из полей запроса относиться ошибка, обьект дублирует структуру таких полей и в значение записывает текстовый код ошибки |
Ошибки
code | message | Описание | Пример |
---|---|---|---|
NOT_ALLOWED | Authorization credentials are required | Не передан HTTP header Authorization, либо передан, но не правильной структуры или не правильно зашифрован | { "error": { "code": "NOT_ALLOWED", "message": "Authorization credentials are required" } } |
NOT_ALLOWED | Wrong authorization credentials have been passed to headers | Передаваемые авторизационные данные(логин и пароль) неверны | { "error": { "code": "NOT_ALLOWED", "message": "Wrong authorization credentials have been passed to headers" } } |
NOT_ALLOWED | Client is not ACTIVE | Аккаунт отключен администраторами | { "error": { "code": "NOT_ALLOWED", "message": "Client is not ACTIVE" } } |
FORMAT_ERROR | - | Ошибка валидации полей запроса, в объекте error.fields повторяеться структура проблемных полей, с которыми возникла ошибка при валидации, а в значение этих полей указываеться более подробная ошибка валидации, если такова имееться. Варианты этих ошибок: FORMAT_ERROR, WRONG_FORMAT, WRONG_PHONE, WRONG_DATE, REQUIRED, WRONG_DATE, NOT_NUMBER, NOT_STRING, WRONG_EMAIL и др. | { "error": { "fields": { "sellerFirstName": "WRONG_FORMAT" }, "code": "FORMAT_ERROR" } } |
DUPLICATE_ID | Cart is already created | Корзина с таким externalId уже существует | { "error": { "code": "DUPLICATE_ID", "message": "Cart is already created" } } |
DUPLICATE_ID | Deal is already created | Сделка с таким externalId уже существует | { "error": { "code": "DUPLICATE_ID", "message": "Deal is already created" } } |
WRONG_ID | Can not find ad | Объявление с таким ID не найден | { "error": { "fields": { "params": { "adId": "WRONG_ID" } }, "code": "WRONG_ID", "message": "Can not find ad" } } |
WRONG_ID | Can not find cart | Корзина с таким ID не найдена | { "error": { "fields": { "params": { "cartId": "WRONG_ID" } }, "code": "WRONG_ID", "message": "Can not find cart" } } |
WRONG_ID | Can not find deal | Сделка с таким ID не найдена | { "error": { "fields": { "params": { "dealId": "WRONG_ID" } }, "code": "WRONG_ID", "message": "Can not find deal" } } |
WRONG_ID | Wrong clientId | Клиент с ткаим ID не найден | { "error": { "fields": { "params": { "clientId": "WRONG_ID" } }, "code": "WRONG_ID", "message": "Wrong clientId" } } |
WRONG_ID | There is no payment with such paymentId | Платеж с таким ID не найден | { "error": { "code": "WRONG_ID", "message": "There is no payment with such paymentId" } } |
NOT_ALLOWED |
| Платежная система {{payerType}} не разрешена этому пользователю {{payerType}} - тип платежной системы | { "error": { "code": "NOT_ALLOWED", "message": "It is not allowed to use payment module P2P" } } |
NOT_ALLOWED | Payment system {{payerType}} is not consistent with selected ad's payment module | Платежная система {{payerType}} не разрешена для этого объявления {{payerType}} - тип платежной системы | { "error": { "code": "NOT_ALLOWED", "message": "Payment system P2P is not consistent with selected ad's payment module" } } |
NOT_ALLOWED | It is not allowed to use handler {{handlerType}} | Обработчик {{handlerType}} не разрешен этому пользователю {{handlerType}} - тип обработчика | { "error": { "code": "NOT_ALLOWED", "message": "It is not allowed to use handler NovaPoshta" } } |
NOT_ALLOWED | Handler {{handlerType}} is not consistent with ad's handler | Обработчик {{handlerType}} не разрешен для этого объявления {{handlerType}} - тип обработчика | { "error": { "code": "NOT_ALLOWED", "message": "Handler NovaPoshta is not consistent with ad's handler" } } |
NOT_ALLOWED | It is not allowed to pay {{dealStatus}} deal | Нельзя оплачивать сделку в статусе {{dealStatus}} {{dealStatus}} - статус сделки | { "error": { "code": "NOT_ALLOWED", "message": "It is not allowed to pay DELIVERED deal" } } |
NOT_ALLOWED | It is not allowed to reject {{dealStatus}} deal | Нельзя отменять сделку в статусе {{dealStatus}} {{dealStatus}} - статус сделки | { "error": { "code": "NOT_ALLOWED", "message": "It is not allowed to reject DELIVERED deal" } } |
NOT_ALLOWED | Ad is not confirmed | Объявление не подтверждено | { "error": { "code": "NOT_ALLOWED", "message": "Ad is not confirmed" } } |
NOT_ALLOWED | Payment is do not waiting for confirmation | Платеж не ожидает подтверждения | { "error": { "code": "NOT_ALLOWED", "message": "Payment is do not waiting for confirmation" } } |
NOT_ALLOWED | Ad is already deactivated | Объявление уже удалено | { "error": { "code": "NOT_ALLOWED", "message": "Ad is already deactivated" } } |
CONFIRM_IS_NOT_ALLOWED | It is not allowed to confirm deal with status {{dealStatus}} | Нельзя подтвердить сделку в статусе {{dealStatus}} {{dealStatus}} - статус сделки | { "error": { "code": "CONFIRM_IS_NOT_ALLOWED", "message": "It is not allowed to confirm deal with status DELIVERED" } } |
FORBIDDEN_PARAM | You can not update {{key}} in {{adStatus}} ad | Нельзя обновить поле {{key}} когда объявление в статусе {{adStatus}} {{key}} - поле {{adStatus}} - статус объявления | { "error": { "fields": { "params": { "sellerPhone": "FORBIDDEN_PARAM" } }, "code": "FORBIDDEN_PARAM", "message": "You can not update sellerPhone in CONFIRMED ad" } } |
FORBIDDEN_PARAM | You can not update {{key}} in {{adStatus}} deal | Нельзя обновить поле {{key}} когда сделка в статусе {{adStatus}} {{key}} - поле {{adStatus}} - статус объявления | { "error": { "fields": { "params": { "productPrice": "FORBIDDEN_PARAM" } }, "code": "FORBIDDEN_PARAM", "message": "You can not update productPrice in DELIVERED deal" } } |
NOT_ENOUGH_DATA | There is no data about handler | Не достаточно данных по обработчикам для подтверждения объявления | { "error": { "code": "NOT_ENOUGH_DATA", "message": "There is no data about handler" } } |
NOT_ENOUGH_DATA | There is no data about payment | Не достаточно данных по платежным системам для подтверждения объявления | { "error": { "code": "NOT_ENOUGH_DATA", "message": "There is no data about payment" } } |
INCOMPLETE_AD | No required data: {{fields}} | Не достаточно полей для подтверждения объявления, {{fields}} - поля которые должны быть заполнены {{fields}} - поля, через запятую | { "error": { "code": "INCOMPLETE_AD", "message": "No required data: sellerPhone, sellerEmail" } } |
INCOMPLETE_DEAL | No required data: {{fields}} | Не достаточно полей для оплаты или подтверждения сделки, {{fields}} - поля которые должны быть заполнены {{fields}} - поля, через запятую | { "error": { "code": "INCOMPLETE_DEAL", "message": "No required data: productPrice, productWeight" } } |
DEAL_LOCKED | Deal is locked for {{lockedForStatus}} status | Сделка заблокирована для перехода в статус {{lockedForStatus}} {{lockedForStatus}} - статус сделки, для которой она заблокирована | { "error": { "code": "DEAL_LOCKED", "message": "Deal is locked for PAID status" } } |
UNKNOWN_ERROR |
| Необработанная/неизвестная ошибка Если вам в ответ на какой то из запросов к EscrowBox вернулась подобная ошибка, просим обратиться в нашу техподдержку с подробными логами(примерное время выполнения запроса, от какого ID клиента, URL на который был отправлен запрос, HTTP методо, тело запроса, если имееться, и сам ответ). | { "error": { "code": "UNKNOWN_ERROR", "message": "Internal server error" } } |