Начало работы с SDK
Требования
Для использования Ecom SDK должны быть соблюдены следующие требования:
Xcode 14+;
Версия iOS 14.0 и более поздние.
Интеграция iOS
Настройка info.plist
Для корректной работы SDK в файле info.plist приложения должны быть добавлены следующие параметры:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>gate1.spaymentsplus.ru</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Данные о местонахождении собираются и отправляются на сервер для безопасного проведения оплаты</string>
NSLocationWhenInUseUsageDescription - Если у вас уже используется этот параметр, то дублировать его не нужно.
Подключение SDK к проекту
Подключите SDK одним из удобных Вам способов:
- SPM
- Бинарный артефакт
dependencies: [
.package(url: "https://github.com/sdkpay/EcomSdkPackage", .upToNextMajor(from: "0.5.0"))
]
Подключить SDK для успешной работы также можно с помощью бинарного артефакта.
Перетащите скаченный файл EcomSdk.xcframework вFrameworks, Libraries, and Embedded Content
, а также выставите у зависимости параметр Embed & Sign
.
Настройка SDK
Для настройки SDK необходимо создать экземплер класса SPaymentConfig. SPaymentConfig позволяет добавить/отключить один из способов оплаты:
Параметр | Дефолтное значение | Описание |
---|---|---|
card | true | Оплата с помощью ввода данных карты |
bindings | true | Оплата связкой из списка, сформированного после успешной оплаты способом card |
sbp | true | Оплата с помощью СБП (не может быть единственным включенным способом оплаты) |
После инициализации SPaymentConfig необходимо передать его в метод setup:
Параметр | Дефолтное значение | Описание |
---|---|---|
paymentConfig | SPaymentConfig(card = true, bindings = true, sbp = true) | Класс содержащий список доступных способов оплаты |
environment | SEnvironment.prod | Стенд для работы с SDK, подробнее работа со стендами описана в разделе "Работа в режиме песочницы" |
resultViewNeeded | true | С помощью данного параметра можно отключить отображение экрана статуса операции |
Пример вызова метода setup"
- Swift
- Objective-C
import EcomSdk
Ecom.setup(
paymentConfig: SPaymentConfig = SPaymentConfig(),
environment: SEnvironment = .prod,
resultViewNeeded: Bool = true
)
#import <EcomSdk/EcomSdk.h>
[Ecom setup];