Skip to content

Releases: braintree/braintree_ios

5.21.0

14 Mar 15:33
Compare
Choose a tag to compare
  • Add missed deprecation warnings to BTCardRequest Union Pay properties
  • Update Cardinal SDK to version 2.2.5-6
  • BraintreePayPalNativeCheckout (BETA)
    • Expose payerID property on BTPayPalNativeCheckoutAccountNonce publicly
    • Expose all properties on BTPayPalNativeCheckoutAccountNonce to Objective-C

5.20.1

31 Jan 15:44
Compare
Choose a tag to compare
  • BraintreePayPalNativeCheckout (BETA)
    • Fix bug where some request dictionaries were being constructed incorrectly
    • Fix bug where passing BTPayPalNativeVaultRequest.shippingAddressOverride as nil was incorrectly throwing an error

6.0.0-beta2

30 Jan 17:00
Compare
Choose a tag to compare
  • Convert BraintreePayPal module to Swift
  • Breaking Changes
    • BraintreePayPal
      • Rename BTPayPalRequest.riskCorrelationId to BTPayPalRequest.riskCorrelationID
      • Removed BTPayPalRequest.activeWindow property
        • The window will be set to the first window or a new ASPresentationAnchor if the first window is nil
      • Update BTPayPalRequestLandingPageType enum default case to .none
        • Update enum values
          • .none = 0
          • .login = 1
          • .billing = 2
      • BTPayPalRequestUserAction
        • Update enum cases to .none and .payNow
        • Update enum values
          • .none = 0
          • .payNow = 1
      • Update BTPayPalRequestIntent enum values
        • .authorize = 0
        • .sale = 1
        • .order = 2
      • Update BTPayPalLineItemKind enum values
        • .debit = 0
        • .credit = 1
      • Create BTPayPalLocaleCode enum
      • BTPayPalRequest.localeCode now uses the BTPayPalLocaleCode enum instead of a String
      • Renamed and replaced BTPayPalClient.tokenizePayPalAccount with two methods called tokenize() taking in requests of either BTPayPalCheckoutRequest or BTPayPalVaultRequest
      • Removed BTPayPalErrorType
      • Replaced BTPayPalErrorDomain global constant with BTPayPalError.errorDomain
      • Added BTPayPalError
        • .disabled
        • .canceled
        • .fetchConfigurationFailed
        • .httpPostRequestError
        • .invalidURL
        • .asWebAuthenticationSessionURLInvalid
        • .invalidURLAction
        • .failedToCreateNonce
      • Make BTPayPalNonce initializer internal
    • BraintreePayPalNativeCheckout (BETA)
      • Renamed and replaced BTPayPalNativeCheckoutClient.tokenizePayPalAccount with two methods called tokenize() taking in requests of either BTPayPalNativeCheckoutRequest or BTPayPalNativeVaultRequest
      • BTPayPalNativeCheckoutRequest now takes in an intent of type BTPayPalRequestIntent instead of BTPayPalNativeRequestIntent
      • BTPayPalNativeCheckoutRequest.localeCode now uses the BTPayPalLocaleCode enum instead of a String value
    • BraintreeUnionPay
      • Remove BraintreeUnionPay module
        • UnionPay cards can now be processed as regular cards (through the BraintreeCard module) due to their partnership with Discover
    • BraintreeCore
      • Remove BTConfiguration+Extensions.isUnionPayEnabled property
      • Remove BTPreferredPaymentMethods and BTPreferredPaymentMethodResult
    • BraintreeSEPADirectDebit
      • The tokenize method no longer takes in a context parameter
      • Merchants no longer need to conform to the ASWebAuthenticationPresentationContextProviding protocol

5.20.0

24 Jan 16:27
Compare
Choose a tag to compare
  • BraintreeThreeDSecure
    • Add requestedExemptionType to BTThreeDSecureRequest

5.19.0

19 Dec 16:12
Compare
Choose a tag to compare
  • BraintreePayPalNativeCheckout (BETA)
    • Update NativeCheckout version from 0.108.0 to 0.110.0
    • Fix issue with multiple clientIDs causing incorrect web fallback

6.0.0-beta1

13 Dec 19:53
Compare
Choose a tag to compare
  • Convert BraintreeCore module to Swift
  • Convert BraintreeAmericanExpress module to Swift
  • Convert BraintreeDataCollector module to Swift
  • Removed PayPalDataCollector module in favor of single BraintreeDataCollector
  • Kount is no longer supported through the SDK
  • Breaking Changes
    • Bump minimum supported deployment target to iOS 14+
    • Require Carthage 0.38.0+ and xcframeworks via carthage update --use-xcframeworks
    • Require Xcode 14
      • Bump Swift Tools Version to 5.7 for CocoaPods & SPM
    • BraintreeCore
      • Renamed BTAppContextSwitchDriver protocol to `BTAppContextSwitchClient
      • BTViewControllerPresentingDelegate protocol now takes in the client parameter instead of driver
      • Renamed BTClientMetadataSourceType to BTClientMetadataSource
      • Renamed BTClientMetadataIntegrationType to BTClientMetadataIntegration
      • Removed static wrapper methods from BTAppContextSwitcher
      • Replaced BTLogger with BTLogLevel and BTLogLevelDescription
      • Remove BTJSONErrorDomain global constant
      • Remove BTJSONErrorCode
      • Remove BTAPIClientErrorDomain global constant
      • Add BTClientTokenErrors
        • .invalidAuthorizationFingerprint
        • .invalidConfigURL
        • .invalidFormat
        • .unsupportedVersion
        • .failedDecoding
      • Add BTHTTPErrorCodes
        • .httpResponseInvalid
        • .urlStringInvalid
        • .clientApiUrlInvalid
        • .invalidAuthorizationFingerprint
      • Renamed BTCardNetworkUKMaestro to BTCardNetworkUkMaestro in BTCardNetwork enum
    • BraintreeVenmo
      • Renamed BTVenmoDriver to BTVenmoClient
      • Renamed BTVenmoDriverErrorDomain to BTVenmoErrorDomain
      • Renamed BTVenmoDriverErrorType to BTVenmoErrorType
      • All errors are now prefixed with BTVenmoError instead of BTVenmoDriverError
      • Remove .unspecified case from BTVenmoPaymentMethodUsage enum
      • Require paymentMethodUsage param in BTVenmoRequest initializer
      • Move category extension of BTConfiguration into BraintreeCore
    • BraintreePayPal
      • Renamed BTPayPalDriver to BTPayPalClient
      • Renamed BTPayPalDriverErrorDomain to BTPayPalErrorDomain
      • Renamed BTPayPalDriverErrorType to BTPayPalErrorType
      • All errors are now prefixed with BTPayPalError instead of BTPayPalDriverError
      • Remove BTPayPalDriver.requestOneTimePayment in favor of BTPayPalClient.tokenizePayPalAccount
      • Remove BTPayPalDriver.requestBillingAgreement in favor of BTPayPalClient.tokenizePayPalAccount
      • Move category extension of BTConfiguration into BraintreeCore
    • BraintreeAmericanExpress
      • Remove BTAmericanExpressErrorDomain global constant
      • Remove BTAmericanExpressErrorType
      • Make BTAmericanExpressRewardsBalance initializer private
    • BraintreePaymentFlow
      • Renamed BTPaymentFlowDriver to BTPaymentFlowClient
      • Renamed BTPaymentFlowDriverErrorDomain to BTPaymentFlowErrorDomain
      • Renamed BTPaymentFlowDriverErrorType to BTPaymentFlowErrorType
      • All errors are now prefixed with BTPaymentFlowError instead of BTPaymentFlowDriverError
      • Renamed BTPaymentFlowDriverDelegate protocol to BTPaymentFlowClientDelegate
      • handleRequest in delegate protocol now takes in paymentClientDelegate parameter instead of paymentDriverDelegate
      • Move category extension of BTConfiguration into BraintreeCore
    • PayPalDataCollector
      • Removed PayPalDataCollector module in favor of single BraintreeDataCollector
    • BraintreeDataCollector
      • Kount is no longer supported through the SDK
      • Combine PayPalDataCollector and BraintreeDataCollector into one module to create single entrypoint for data collection
      • Merchants should use the new collectDeviceData function for data collection which will now return a completion with either device data or an error
    • BraintreeApplePay
      • Move category extension of BTConfiguration into BraintreeCore
    • BraintreeUnionPay
      • Move category extension of BTConfiguration into BraintreeCore
    • BraintreeThreeDSecure
      • Move category extension of BTConfiguration into BraintreeCore

5.18.0

13 Dec 16:50
Compare
Choose a tag to compare
  • Deprecate Kount Custom integrations
  • Deprecate the BraintreeUnionPay module and containing classes
    • UnionPay cards can now be processed as regular cards (through the BraintreeCard module) due to their partnership with Discover

5.17.0

05 Dec 21:34
Compare
Choose a tag to compare
  • BraintreePayPalNativeCheckout (BETA)
    • Fix CocoaPods bug emitting "Cannot find interface declaration" error (CocoaPods issue #11672)
    • Rename riskCorrelationId to riskCorrelationID
    • Rename nativeRequest to request internally in tokenizePayPalAccount
    • tokenizePayPalAccount now takes in a request of type BTPayPalNativeRequest instead of a nativeRequest of type BTPayPalRequest

5.16.0

27 Oct 18:37
Compare
Choose a tag to compare
  • BraintreePayPalDataCollector
    • Update PPRiskMagnes with a version of 5.4.0 with ENABLE_BITCODE removed

5.15.0

26 Oct 16:15
Compare
Choose a tag to compare
  • BraintreePayPalNativeCheckout (BETA)
    • Fix merchant_account_id and correlation_id keys to be nested at the top level of the internal create order request
    • Update Package.swift to fetch PayPalCheckout binary dependency directly instead of hosting copy in braintree_ios repo
  • BraintreePayPal
    • Resolve depreciation warning with UIApplication.sharedApplication for iOS 15+ targets (fixes #884)