ym88659208ym87991671
Вспомогательные структуры данных | Документация для разработчиков

Вспомогательные структуры данных

Обновлено 7 октября 2026

Результат метода pay(...)

PaymentResult


/**
*
* Класс-обертка для предоставления результата оплаты
*
*/
@Parcelize
sealed class PaymentResult : Parcelable {

/**
*
* @object [Success] возвращается в случае, если оплата была произведена успешно
*
* @param userId [String] уникальный uuid пользователя в рамках одного устройства
* @param localSessionId [String] уникальный uuid сессии в рамках операции
*
*/
data class Success(val userId: String, val localSessionId: String) : PaymentResult()

/**
*
* @class [Error] возвращается в случае, если во время выполнения операции оплаты произошла ошибка
*
* @param userId [String] уникальный uuid пользователя в рамках одного устройства
* @param localSessionId [String] уникальный uuid сессии в рамках операции
* @param merchantError - объект класса, описывающий ошибки для предоставления партнеру
* @see MerchantError
*
*/
data class Error(val userId: String, val localSessionId: String, val merchantError: MerchantError? = null) : PaymentResult()

/**
*
* @object [Processing] возвращается в случае, если оплата находится в процессе выполнения
*
* @param userId [String] уникальный uuid пользователя в рамках одного устройства
* @param localSessionId [String] уникальный uuid сессии в рамках операции
*/
data class Processing(val userId: String, val localSessionId: String) : PaymentResult()

/**
*
* @object [Cancel] возвращается в случае, если пользователь прервал процесс оплаты
*
* @param userId [String] уникальный uuid пользователя в рамках одного устройства
* @param localSessionId [String] уникальный uuid сессии в рамках операции
*/
data class Cancel(val userId: String, val localSessionId: String) : PaymentResult()
}

Поле merchantError является типом MerchantErrors.

Перечисление стендов SDK

SPayStage


/**
*
* Enum со стендами SDK
*
* */
public enum class SPayStage {
/**Продовый стенд*/
Prod,

/**Песочница без авторизации в банке*/
SandboxWithoutBankApp,

/**Песочница с авторизацией в банке*/
SandboxRealBankApp
}

Helper

SPayHelperConfig


/**
* Конфигурация помогашек, передаваемая партнером
*
* @property isHelperEnabled [Boolean] Флаг, активированы ли помогашки
* @property disabledHelpers [SPayHelpers] Список отключенных помогашек
*/
data class SPayHelperConfig(
val isHelperEnabled: Boolean = true,
val disabledHelpers: List<SPayHelpers>
)

/**
* Список возможных помогашек
*
* @property SBP перевод по СБП
* @property CREDIT_CARD выпустить кредитную карту
* @property DEBIT_CARD выпустить дебетовую карту
*/
enum class SPayHelpers(val tag: String) {
SBP("sbp"),
CREDIT_CARD("creditCard"),
DEBIT_CARD("debitCard")
}

InitializationResult

InitializationResult


/** Объект результата инициализации SPaySdk */
sealed class InitializationResult {

/** SPaySdk инициализирована успешно */
object Success : InitializationResult()

/**
* Произошел сбой при получении или обработке конфига
*
* @param message сообщение об ошибке
*/
data class ConfigError(val message: String) : InitializationResult()
}

Инструменты проведения оплаты

SPaymentTool


/**
* Доступные типы инструмента для проведения оплаты в SPaySdk.
* Используется для способа оплаты [WithPhoneNumber]
*
* @property [CARDS] оплата банковскими картами
* @property [PAYMENT_ACCOUNTS] оплата платежными счетами
*
* @see [SPayMethod.WithPhoneNumber]
*/
enum class SPaymentTool {
CARDS,
PAYMENT_ACCOUNTS,
}

Заметили ошибку?
Выделите текст и нажмите
Ctrl
+
Enter
, чтобы сообщить нам об ошибке