BTThreeDSecureRequest

@objcMembers
public class BTThreeDSecureRequest : NSObject

Used to initialize a 3D Secure payment flow

Initializer

  • Creates a BTThreeDSecureRequest

    Declaration

    Swift

    public init(
        amount: String,
        nonce: String,
        accountType: BTThreeDSecureAccountType = .unspecified,
        additionalInformation: BTThreeDSecureAdditionalInformation? = nil,
        billingAddress: BTThreeDSecurePostalAddress? = nil,
        cardAddChallengeRequested: Bool = false,
        challengeRequested: Bool = false,
        customFields: [String: String]? = nil,
        dataOnlyRequested: Bool = false,
        dfReferenceID: String? = nil,
        email: String? = nil,
        exemptionRequested: Bool = false,
        mobilePhoneNumber: String? = nil,
        renderTypes: [BTThreeDSecureRenderType]? = nil,
        requestedExemptionType: BTThreeDSecureRequestedExemptionType = .unspecified,
        shippingMethod: BTThreeDSecureShippingMethod = .unspecified,
        uiType: BTThreeDSecureUIType = .both,
        v2UICustomization: BTThreeDSecureV2UICustomization? = nil,
        requestorAppURL: String? = nil
    )

    Parameters

    amount

    Required. The amount for the transaction.

    nonce

    Required. A nonce to be verified by ThreeDSecure.

    accountType

    Optional. The account type selected by the cardholder. Some cards can be processed using either a credit or debit account and cardholders have the option to choose which account to use.

    additionalInformation

    Optional. The additional information used for verification.

    billingAddress

    Optional. The billing address used for verification.

    cardAddChallengeRequested

    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 to false, a card-add challenge will not be requested. If the parameter is missing, a card-add challenge will only be requested for $0 amount.

    challengeRequested

    Optional. If set to true, an authentication challenge will be forced if possible.

    customFields

    Optional. 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.

    dataOnlyRequested

    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.

    dfReferenceID

    Optional. The dfReferenceID for the session, particularly useful for merchants performing 3DS lookup.

    email

    Optional. The email used for verification.

    exemptionRequested

    Optional. If set to true, an exemption to the authentication challenge will be requested.

    mobilePhoneNumber

    Optional. The mobile phone number used for verification. Only numbers. Remove dashes, parentheses and other characters.

    renderTypes

    Optional: List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge. When using BTThreeDSecureUIType.both or BTThreeDSecureUIType.html, all BTThreeDSecureRenderType options must be set. When using BTThreeDSecureUIType.native, all BTThreeDSecureRenderType options except .html must be set.

    requestedExemptionType

    Optional. The exemption type to be requested. If an exemption is requested and the exemption’s conditions are satisfied, then it will be applied.

    shippingMethod

    Optional. The shipping method chosen for the transaction.

    uiType

    Optional: Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge. Defaults to .both.

    v2UICustomization

    Optional. UI Customization for 3DS2 challenge views.

    requestorAppURL

    Optional. Three DS Requester APP URL Merchant app declaring their URL within the CReq message so that the Authentication app can call the Merchant app after out of band authentication has occurred.