After creating an instance of the PrimerHeadlessUniversalCheckout.ComponentWithRedirectManager
you must use one of the compatible provide methods
which will provide the component that can be used to build the flow.
The method provide is compatible with iOS 13 and above.
12
@available(iOS 13, *)public func provide<PrimerHeadlessMainComponent>(paymentMethodType: String) throws -> PrimerHeadlessMainComponent? where PrimerCollectableData: Any, PrimerHeadlessStep: Any
Parameters
Parameters
A unique string identifier for the payment method. Supported payment methods for current client session are returned in primerHeadlessUniversalCheckoutDidLoadAvailablePaymentMethods
.
For Component with redirect manager, the supported payment method is ADYEN_IDEAL.
Type parameters
The type of the PrimerHeadlessMainComponent
implementation to return.
Supported types
Type | paymentMethodType |
---|---|
BanksComponent | ADYEN_IDEAL |
Returns
An instance conforming to the PrimerHeadlessMainComponent
protocol.
The PrimerHeadlessMainComponent
protocol conforms to the PrimerHeadlessCollectDataComponent
protocol.
PrimerHeadlessMainComponent
PrimerHeadlessCollectDataComponent
Call submit
function in order to process collected data and move component to next state.
1
func didReceiveError(error: PrimerError)
1
func didUpdate(validationStatus: PrimerValidationStatus, for data: PrimerCollectableData?)
PrimerValidationStatus
is an enum that represents the different validation statuses in the Primer SDK. It helps to communicate the state of validation for a particular process, providing clear categorization of validation states.
enum PrimerValidationStatus
Associated Value
BanksStep
is a enum class holding different output data for specific steps. Whenever submit method is called, stepDelegate
will trigger the next step in case the call to the mentioned method was successful.
In the case of ADYEN_IDEAL, the steps return will be of type BanksStep
enum BanksStep
Enum member representing the step of loading data for the form redirect component.
Properties
The issuing banks array associated with this payment flow.
IssuingBank
The `IssuingBank` class provides properties to hold bank details.Properties
1
func didReceiveStep(step: PrimerHeadlessStep)
Update component with collected data by passing an enum representing collectable data. This method can be called at any point, even if you have only partially collected data. To validate the partially collected data, you can refer to the validationDelegate.
In case of ADYEN_IDEAL, the Data will be of type BanksCollectableData
enum BanksCollectableData
Properties
Supported types
The BanksComponent
provides a protocol extending the PrimerHeadlessMainComponent
protocol where Data is of type BanksCollectableData
and Step is of type BanksStep
1
public protocol BanksComponent: PrimerHeadlessMainComponent where Data == BanksCollectableData, Step == BanksStep { }
Throws
Parameters
An error that will be thrown in case the provide method has been called using unsupported paymentMethodType
.
Supported payment methods for current client session are returned in the `onAvailablePaymentMethodsLoaded` delegate.
Currently, the supported payment method types are:- ADYEN_IDEAL
An error that will be thrown in case the provide method fails because of sdk not correctly used.