Postępuj zgodnie z tym przewodnikiem, aby zintegrować bramkę płatności SIBS z aplikacją na iOS za pomocą naszego pakietu SDK.
Krok 1: instalacja SDK
- Pobierz plik: ios-sibs-stargate-sdk-0.1.1
- Uwzględnij SibsSDK.xcframework w projekcie, oraz zależność Alamofire:

- Aby korzystać z Apple Pay, musisz dodać i skonfigurować tę funkcję w ustawieniach aplikacji:

Krok 2: inicjalizacja SIBS SDK
Zainicjowanie SDK SIBS uwierzytelnia Cię jako sprzedawcę. Przed wysłaniem dalszych żądań uwzględnij następujące parametry.
Parametry
- clientId – Identyfikator klienta używany do uwierzytelniania.
- accessToken – token dostępu używany do autoryzacji żądań.
- environmentSDK – środowisko, w którym będzie działać SDK.
metoda inicjalizacji SDK
public init(clientId: String, accessToken: String, environmentSDK: EnvironmentSDK)
Krok 3: zapytania i odpowiedzi SDK
StartPayment
Rozpoczyna proces płatności z podanymi parametrami transakcji.
public func startPayment(from viewController: UIViewController, with data:
TransactionParamsSDK, completion: PaymentResult)
Callback PaymentResult
(Result<TransactionResultSDK, Error>)
GetTransactionStatus
Przywraca status wcześniej zainicjowanej transakcji.
public func getTransactionStatus(transactionID: String, completion: @escaping
TransactionStatusResult)
Callback TransactionResultStatus
(Result<TransactionStatusSDK, Error>)
Klasy danych
EnvironmentSDK
public enum EnvironmentSDK{
case quality
case production
}
TransactionParamsSDK
public struct TransactionParamsSDK {
public let terminalID: Int
public let merchantTransactionDescription: String?
public let transactionID: String
public let transactionDescription: String?
public let amount: Double
public let currency: String
public let paymentMethods: [PaymentMethod]
public let client: String?
public let email: String?
public let shopURL: String?
public let shippingAddress: Address?
public let billingAddress: Address?
public let tokenizationParams: TokenizationParams?
public let applePayMerchantId: String?
}
TransactionResultSDK
public struct TransactionResultSDK: Codable {
public let isSuccess: Bool
public let transactionID: String?
public let token: Token?
public let merchant: Merchant?
public let paymentType: String?
public let paymentStatus: PaymentStatus?
public let paymentMethod: String?
public let execution: Execution?
public let returnStatus: ReturnStatus?
}
TransactionStatus
public struct TransactionStatus: Codable {
public let merchant: Merchant
public let transactionID: String
public let paymentType: String
public let paymentStatus: PaymentStatus
public let paymentMethod: String
public let execution: Execution
public let returnStatus: ReturnStatus
public let token: Token?
}