Package-level declarations

Types

Link copied to clipboard
data class AuthenticationRequestParameters(    val deviceData: String,     val sdkTransactionId: SdkTransactionId,     val sdkAppId: String,     val sdkReferenceNumber: String,     val sdkEphemeralPublicKey: String,     val messageVersion: String) : Parcelable

The AuthenticationRequestParameters class shall hold transaction data that the App passes to the 3DS Server for creating the AReq.

Link copied to clipboard
data class ChallengeParameters(    var threeDsServerTransactionId: String? = null,     var acsTransactionId: String? = null,     var acsRefNumber: String? = null,     var acsSignedContent: String? = null,     var threeDSRequestorAppURL: String? = null) : Parcelable

The ChallengeParameters class shall hold the parameters that are required to conduct the challenge process. Note: It is mandatory to set values for these parameters.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

A sealed class representing the possible outcomes of a 3DS2 challenge.

Link copied to clipboard
data class ErrorMessage(val transactionId: String, val errorCode: String, val errorDescription: String, val errorDetails: String) : Parcelable

The ErrorMessage class shall represent an error message that is returned by the ACS to the 3DS SDK or an error message that is generated by the 3DS SDK to be returned to the ACS. For more information about error messages, refer to Table A.4: Error Code, Error Description, and Error Detail and Table B.10: Error Message Data Elements in the EMV 3DS Protocol Specification.

Link copied to clipboard
data class InitChallengeArgs(    sdkReferenceNumber: String,     sdkKeyPair: KeyPair,     challengeParameters: ChallengeParameters,     timeoutMins: Int,     intentData: IntentData) : Parcelable
Link copied to clipboard
Link copied to clipboard
class InitChallengeRepositoryFactory(    application: Application,     isLiveMode: Boolean,     sdkTransactionId: SdkTransactionId,     uiCustomization: StripeUiCustomization,     rootCerts: List<X509Certificate>,     enableLogging: Boolean,     workContext: CoroutineContext)
Link copied to clipboard
Link copied to clipboard
data class IntentData(val clientSecret: String, val sourceId: String, val publishableKey: String, val accountId: String? = null) : Parcelable
Link copied to clipboard
Link copied to clipboard
data class ProtocolErrorEvent(val sdkTransactionId: SdkTransactionId?, val errorMessage: ErrorMessage) : Parcelable

An error message that is generated by the 3DS SDK to be returned to the ACS. The ProtocolErrorEvent class shall represent an error message of this type. The 3DS SDK sends the error code and details from this error message as part of the notification to the 3DS Requestor App.

Link copied to clipboard
Link copied to clipboard
data class RuntimeErrorEvent(val errorCode: String, val errorMessage: String) : Parcelable

The com.ults.samplesdk.RuntimeErrorEvent class shall hold details of run-time errors that are encountered by the 3DS SDK during authentication.

Link copied to clipboard
Link copied to clipboard
interface Transaction

An object that implements the Transaction interface shall hold parameters that the 3DS Server requires to create AReq messages and to perform the Challenge Flow.

Link copied to clipboard

Transaction Status is populated in the transStatus field of the final CRes response.

Link copied to clipboard