BTThreeDSecureRequest
@objcMembers
public class BTThreeDSecureRequest : NSObject
Used to initialize a 3D Secure payment flow
-
A nonce to be verified by ThreeDSecure
Declaration
Swift
public var nonce: String?
-
Object where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.
Declaration
Swift
public var customFields: [String : String]?
-
The amount for the transaction
Declaration
Swift
public var amount: NSDecimalNumber?
-
Optional. The account type selected by the cardholder
Note
Some cards can be processed using either a credit or debit account and cardholders have the option to choose which account to use.Declaration
Swift
public var accountType: BTThreeDSecureAccountType
-
Optional. The billing address used for verification
Declaration
Swift
public var billingAddress: BTThreeDSecurePostalAddress?
-
Optional. The mobile phone number used for verification
Note
Only numbers. Remove dashes, parentheses and other charactersDeclaration
Swift
public var mobilePhoneNumber: String?
-
Optional. The email used for verification
Declaration
Swift
public var email: String?
-
Optional. The shipping method chosen for the transaction
Declaration
Swift
public var shippingMethod: BTThreeDSecureShippingMethod
-
Optional. The additional information used for verification
Declaration
Swift
public var additionalInformation: BTThreeDSecureAdditionalInformation?
-
Optional. If set to true, an authentication challenge will be forced if possible.
Declaration
Swift
public var challengeRequested: Bool
-
Optional. If set to true, an exemption to the authentication challenge will be requested.
Declaration
Swift
public var exemptionRequested: Bool
-
Optional. The exemption type to be requested. If an exemption is requested and the exemption’s conditions are satisfied, then it will be applied.
Declaration
Swift
public var requestedExemptionType: BTThreeDSecureRequestedExemptionType
-
Optional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score for the issuer to determine whether to approve. If data only is not supported by the processor, a validation error will be raised. Non-Mastercard cardholders will fallback to a normal 3DS flow.
Declaration
Swift
public var dataOnlyRequested: Bool
-
Optional. An authentication created using this property should only be used for adding a payment method to the merchant’s vault and not for creating transactions.
Defaults to
.unspecified.
If set to
.challengeRequested
, the authentication challenge will be requested from the issuer to confirm adding new card to the merchant’s vault. If set to.notRequested
the authentication challenge will not be requested from the issuer. If set to.unspecified
, when the amount is 0, the authentication challenge will be requested from the issuer. If set to.unspecified
, when the amount is greater than 0, the authentication challenge will not be requested from the issuer.Declaration
Swift
@available(*, deprecated, renamed: "cardAddChallengeRequested", message: "Use the `cardAddChallengeRequested` boolean property instead") public var cardAddChallenge: BTThreeDSecureCardAddChallenge { get set }
-
Optional. An authentication created using this flag should only be used for vaulting operations (creation of customers’ credit cards or payment methods) and not for creating transactions. If set to
true
, a card-add challenge will be requested from the issuer. If set tofalse
, a card-add challenge will not be requested. If the parameter is missing, a card-add challenge will only be requested for $0 amount.Declaration
Swift
public var cardAddChallengeRequested: Bool
-
Optional. UI Customization for 3DS2 challenge views.
Declaration
Swift
public var v2UICustomization: BTThreeDSecureV2UICustomization?
-
Optional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.
Defaults to
.both
Declaration
Swift
public var uiType: BTThreeDSecureUIType
-
Optional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.
Note
When usingBTThreeDSecureUIType.both
orBTThreeDSecureUIType.html
, allBTThreeDSecureRenderType
options must be set. When usingBTThreeDSecureUIType.native
, allBTThreeDSecureRenderType
options except.html
must be set.Declaration
Swift
public var renderTypes: [BTThreeDSecureRenderType]?
-
A delegate for receiving information about the ThreeDSecure payment flow.
Declaration
Swift
public weak var threeDSecureRequestDelegate: BTThreeDSecureRequestDelegate?