BTPayPalVaultRequest

@objcMembers
public class BTPayPalVaultRequest : NSObject, BTPayPalRequest

Options for the PayPal Vault flow.

Initializer

  • Initializes a PayPal Vault request for the PayPal App Switch flow

    Warning

    This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases.

    Note

    The PayPal App Switch flow currently only supports the production environment.

    Declaration

    Swift

    public convenience init(
        enablePayPalAppSwitch: Bool,
        userAuthenticationEmail: String? = nil,
        offerCredit: Bool = false
    )

    Parameters

    enablePayPalAppSwitch

    Required: Used to determine if the customer will use the PayPal app switch flow.

    userAuthenticationEmail

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    offerCredit

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

  • Initializes a PayPal Vault request

    Declaration

    Swift

    public init(
        enablePayPalAppSwitch: Bool = false,
        offerCredit: Bool = false,
        billingAgreementDescription: String? = nil,
        displayName: String? = nil,
        isShippingAddressEditable: Bool = false,
        isShippingAddressRequired: Bool = false,
        landingPageType: BTPayPalRequestLandingPageType = .none,
        lineItems: [BTPayPalLineItem]? = nil,
        localeCode: BTPayPalLocaleCode = .none,
        merchantAccountID: String? = nil,
        recurringBillingDetails: BTPayPalRecurringBillingDetails? = nil,
        recurringBillingPlanType: BTPayPalRecurringBillingPlanType? = nil,
        riskCorrelationID: String? = nil,
        shippingAddressOverride: BTPostalAddress? = nil,
        shopperSessionID: String? = nil,
        userAction: BTPayPalRequestUserAction = .none,
        userAuthenticationEmail: String? = nil,
        userPhoneNumber: BTPayPalPhoneNumber? = nil
    )

    Parameters

    enablePayPalAppSwitch

    Required: Used to determine if the customer will use the PayPal app switch flow. Defaults to false. This property is currently in beta and may change or be removed in future releases.

    offerCredit

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    billingAgreementDescription

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set.

    displayName

    Optional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account

    isShippingAddressEditable

    Defaults to false. Set to true to enable user editing of the shipping address.

    isShippingAddressRequired

    Defaults to false. When set to true, the shipping address selector will be displayed.

    landingPageType

    Optional: Landing page type. Defaults to .none.

    lineItems

    Optional: The line items for this transaction. It can include up to 249 line items.

    localeCode

    Optional: A locale code to use for the transaction.

    merchantAccountID

    Optional: A non-default merchant account to use for tokenization.

    recurringBillingDetails

    Optional: Recurring billing product details.

    recurringBillingPlanType

    Optional: Recurring billing plan type, or charge pattern.

    riskCorrelationID

    Optional: A risk correlation ID created with Set Transaction Context on your server.

    shippingAddressOverride

    Optional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.

    shopperSessionID

    Optional: The shopper session ID returned from your shopper insights server SDK integration.

    userAction

    Optional: Changes the call-to-action in the PayPal Vault flow. Defaults to .none.

    userAuthenticationEmail

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    userPhoneNumber

    Optional: A user’s phone number to initiate a quicker authentication flow in the scenario where the user has a PayPal account identified with the same phone number.