This method allows you get a new instance of NolPayPaymentComponent that can be used to link new Nol Pay cards.

1
fun provideNolPayPaymentComponent(viewModelStoreOwner: ViewModelStoreOwner): NolPayPaymentComponent
kotlin
copy

Parameters

viewModelStoreOwner
ViewModelStoreOwnerRequired

The ViewModelStoreOwner to associate with the component.

Returns

An instance of NolPayPaymentComponent.

NolPayPaymentComponent
Initialize the component by calling the start function. This method should be called only once.

Update component with collected data by passing implementations of sealed interface representing collectable data for payment flow with a Nol Pay card. 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 componentValidationStatus and receive the validation status when it's updated.

sealed interface NolPayPaymentCollectableData
Data class representing Nol Pay card and phone data used in payment process.
Properties

The Nol Pay payment card to use for payment is retrieved using NolPayLinkedCardsComponent.

The mobile number in E.164 format that the Nol Pay payment card was associated with.

Data class representing Nol Pay tag data collected during the payment process.

Properties
tag
Tag

An NFC tag decoded using NolPayNfcComponent.

Call submit function in order to process collected data and move component to next state.

NolPayPaymentStep is a class holding different output data for specific steps. Whenever start or submit methods are called,componentStep will trigger the next step in case the call to the mentioned method was successful.

sealed interface NolPayPaymentStep
Object representing the step of collecting card and phone data for Nol Pay payment.
Object representing the step of collecting tag data for Nol Pay card linking.

The PrimerValidationStatus interface encompasses a range of validation statuses.

sealed interface PrimerValidationStatus
Indicates that data is currently in the process of being validated.
Properties
collectableData
NolPayPaymentCollectableData

The data being validated.

Indicates that the data has successfully been validated.
Properties
collectableData
NolPayPaymentCollectableData

The successfully validated data.

Indicates that the data has been considered invalid after validation.
Properties
validationErrors
List<PrimerValidationError>

List of PrimerValidationError objects that represent data validation errors emitted by this component.

Properties
errorId
StringRequired
A unique error identifier.
description
StringRequired
A error description.
diagnosticsId
StringRequired
A unique diagnostics id for the given error.
collectableData
NolPayPaymentCollectableData

The data that failed validation.

Represents the status when an error occurred during the validation process.
Properties
error
PrimerError

The specific PrimerError that occurred during validation.

errorId
StringRequired
A unique error identifier.
errorCode
String?
A unique error code.
description
StringRequired
A error description.
A recovery suggestion for the given error. In case it's present, use it to try to recover from error.
diagnosticsId
StringRequired
A unique diagnostics id for the given error.
collectableData
NolPayPaymentCollectableData

The data for which the error occurred.

Get a Flow of PrimerError objects that represent errors emitted by this component. Subscribers can observe and handle errors using this Flow.