Errors
В случае возникновения ошибки возвращается объект json, где по ключу
error указан ее код code, сообщение message с ее типом и
дополнительные данные data с уточнением причины ее возникновения.
Например:
{
"error": {
"code": -32034,
"message": "EStateUnauth",
"data": {
"field": "token",
"value": "1JMLaZieUat...teNG_Tph5RXcd"
}
},
"jsonrpc": "2.0",
"id": "100234sdf500"
}
Коды возвращаемых ошибок согласно спецификации JSON-RPC
| код | сообщение | описание |
|---|---|---|
| -32600 | Invalid Request | переданный JSON не является валидным объектом запроса |
| -32601 | Method not found | переданный метод не существует или недоступен |
| -32602 | InvalidInputParams | не передан обязательный или передан лишний входной параметр |
| -32603 | Internal error | внутренняя ошибка JSON-RPC |
| -32700 | Parse error | сервером получен невалидный JSON. Ошибка распознавания JSON текста на сервере |
Сервис использует коды ошибок в диапазоне от -32000 до -32099
Коды ошибок, возвращаемых сервисом
| код | сообщение | описание |
|---|---|---|
| -32001 | EParam | базовая ошибка входящих параметров запроса |
| -32002 | EAuth | базовая ошибка авторизации пользователя |
| -32003 | EParamInvalid | один из входных параметров метода передан в неправильном формате или имеет недопустимое значение |
| -32004 | EParamType | один из входных параметров метода имеет неверный тип |
| -32005 | EParamMethod | в запросе указано неправильное имя метода |
| -32006 | EParamModel | в запросе указано неправильное имя модели |
| -32010 | EParamSignInvalid | неверная подпись запроса |
| -32011 | EParamTokenInvalid | невалидный токен запроса или объекта |
| -32012 | EParamHeadersInvalid | отсутствует один из обязательных заголовков (хедеров), переданный заголовок содержит пустое значение или пустую строку |
| -32013 | EParamRequestWindow | превышено время получения запроса |
| -32014 | EParamCurrencyInvalid | валюта отсутствует в системе |
| -32015 | EParamMerchantInvalid | мерчант неактивен или не найден мерчант с переданным ключом |
| -32016 | EParamFieldInvalid | неверное заполнение поля параметра один из входных параметров метода передан в неправильном формате или имеет недопустимое значение |
| -32017 | EParamPassLength | невалидная длина пароля |
| -32018 | EParamPassPattern | невалидный шаблон пароля |
| -32020 | EParamPeriodInvalid | передан неверный формат времени |
| -32021 | EParamPeriodTooShort | задан слишком малый временной период |
| -32022 | EParamPeriodTooLong | задан слишком большой временной период |
| -32023 | EParamMerchantIPInvalid | запрос отправлен с IP-адреса, отсутствующего в списке разрешенных для данного мерчанта |
| -32031 | EStateMerchantInactive | указанный мерчант неактивен |
| -32032 | EStateForbidden | действие запрещено |
| -32033 | EStateCurrencyInactive | валюта с переданным именем не активна (отключена) |
| -32034 | EStateUnauth | отсутствуют права на выполнение операции |
| -32035 | EStateUnavailable | выполнение операции невозможно из-за влияния внешних факторов |
| -32036 | EStateOutPayUnavailable | выплаты во всей системе Any.Money или для данного мерчанта заблокированы |
| -32037 | EStateSessionLimit | превышен лимит попыток авторизации |
| -32038 | EStateReqIPLimit | превышен лимит запросов на единицу времени для IP-адреса |
| -32039 | EStateReqLimit | превышен лимит запросов на единицу времени для сессии |
| -32043 | Req403 | запрос из неизвестного домена или неверный роутер |
| -32055 | EStateCurrencyUnavail | валюта с переданным именем недоступна |
| -32056 | EStateInsufficientFunds | недостаточно средств для выполнения запрошенного действия |
| -32060 | EParamWrongCaptcha | превышено количество неудачных попыток авторизации в час |
| -32068 | EParamIBANCountryUnsupported | страна IBAN счёта не поддерживается |
| -32071 | EParamAmountInvalid | передано неверное значение количества суммы денежных средств |
| -32072 | EParamAmountOffLimits | переданное количество денежных средств не соответствует лимитам, установленным для данной транзакции |
| -32073 | EParamAmountTooBig | переданное количество денежных средств больше лимита, установленного для данной транзакции |
| -32074 | EParamAmountTooSmall | переданное количество денежных средств меньше лимита, установленного для данной транзакции |
| -32076 | EParamCodeInvalid | передано ошибочное значение кода |
| -32079 | EParamLoginType | ошибка переданного типа логина |
| -32080 | EParamPaywayRequired | название платежной системы является обязательным полем и отсутствует в запросе |
| -32081 | EParamPaywayInvalid | передано несуществующее название платежной системы |
| -32082 | EParamAmountFormatInvalid | неверный формат переданной суммы денежных средств |
| -32083 | EStatePaywayInactive | переданная платежная система неактивна |
| -32084 | EStatePaywayUnavail | передано название недоступной данному мерчанту платежной системы (данная система заблокирована административно) |
| -32085 | EStateExchangeUnavail | данное направление обмена недоступно |
| -32086 | EAuth2FARequired | необходимо подтверждение с помощью двухфакторной авторизации |
| -32087 | EAuth2Wrong | неверный тип двухфакторной авторизации |
| -32088 | EAuth2Fail | превышен лимит ошибок проверки двухфакторной авторизации для данного IP-адреса |
| -32089 | EAuth2Drop | не пройдена двухфакторная авторизация |
| -32090 | EParamNotFound | не найден объект с переданными параметрами |
| -32091 | EParamUnique | уже существует объект с таким названием/идентификатором |
| -32095 | EStatePwcurrencyUnavail | данная валюта платежной системы недоступна |
| -32096 | EStatePwcurrencyInactive | данная валюта платежной системы неактивна |
| -32097 | EAuth2ActionsWrong | невозможно деактивировать все настройки двухфакторной аутентификации или активировать настройки двухфакторной аутентификации без установленого типа |
| -32098 | EStateExpired | время для оплаты истекло. Вы можете сделать возврат средств |
| -32099 | EStateCardPayinUnavail | метод недоступен. Свяжитесь с нашей службой поддержки |