Описание ошибок
Обновлено 30 сентября 2026
MerchantErrors
/**
* Класс с возможными ошибками для партнера
*
* - [RequiredDataNotSent]
* - [SPayApiError]
* - [TimeoutException]
* - [NoInternetConnection]
* - [PayWithBonusesError]
* - [PayWithBindingError]
* - [UnexpectedError]
* - [IsReadyCheckHasNotBeenCalled]
* - [InnerSdkComponentsError]
*
*/
@Parcelize
sealed class MerchantError(
open val description: String? = null
) : Parcelable {
/**
* Ошибка, если не переданы необходимые данные.
*
* Возможные значения:
* - [ApiKey]
* - [BankInvoiceId]
* - [PhoneNumber]
* - [MerchantLogin]
* - [AppPackage]
*/
@Parcelize
sealed class RequiredDataNotSent(override val description: String? = null) :
MerchantError(description) {
/**
* Некорректный apiKey
*/
data class ApiKey(
override val description: String
) : RequiredDataNotSent(description)
/**
* Некорректный bankInvoiceId
*/
data class BankInvoiceId(
override val description: String
) : RequiredDataNotSent(description)
/**
* Некорректный номер телефона
*/
data class PhoneNumber(
override val description: String
) : RequiredDataNotSent(description)
/**
* Некорректный merchantLogin
*/
data class MerchantLogin(
override val description: String
) : RequiredDataNotSent(description)
/**
* Некорректный appPackage
*/
data class AppPackage(
override val description: String
) : RequiredDataNotSent(description)
}
/**
* Ошибка при взаимодействии с SPayApi
*/
data class SPayApiError(override val description: String) : MerchantError(description)
/**
* Ошибка, возникающая если время ожидания ответа от сервера превысило заданный лимит ожидания
*/
data class TimeoutException(override val description: String) : MerchantError(description)
/**
* Ошибка при отсутствии подключния к интернету
*/
data class NoInternetConnection(override val description: String = "Отсутствует подключение к интернету") :
MerchantError(description)
/**
* Ошибка при оплате бонусами Спасибо
*/
data class PayWithBonusesError(override val description: String) : MerchantError(description)
/**
* Ошибка при оплате по связке
*/
data class PayWithBindingError(override val description: String) : MerchantError(description)
/**
* Непредвиденная ошибка при работе SPaySDK
*/
data class UnexpectedError(override val description: String) : MerchantError(description)
/**
* Ошибка при проверке готовности к проведению оплаты
*/
data class IsReadyCheckHasNotBeenCalled(override val description: String = "Перед проведением оплаты необходимо вызвать метод isReadyForSPaySdk()") :
MerchantError(description)
/**
* Ошибка внутренних компонентов SPaySdk
*/
data class InnerSdkComponentsError(override val description: String = "Ошибка внутренних компонентов SPaySdk") :
MerchantError(description)
}
Список возможных ошибок, возвращаемых при обработке запроса
| Возвращаемые ошибки |
|---|
| Не удалось выполнить идентификацию клиента |
| Системная или внутренняя ошибка |
| Некорректный формат запроса/ответа |
| Сессия не активна |
| Доступ запрещен |
| Ошибка валидации данных запроса |
| Неверный параметр операции |
| Заказ не найден |
| Превышено допустимое количество попыток оплаты |
| Истек срок действия платежного токена |
| Невозможно оплатить заказ - заблокирован другим дейст вием |
| Неверный статус заказа |
| Ошибка при проведении платежа |
| Заказ в обработке |
| Системная ошибка |