- CorePayments
- Make
CoreSDKError
conform to Equatable - Rename
NetworkingClientError
toNetworkingError
- Make
NetworkingError
enum and static constants public
- Make
- CardPayments
- Make
CardError
enum and static constants public
- Make
- PayPalPayments
- Make
PayPalError
enum and static constants public
- Make
- Breaking Changes
- PayPalNativePayments
- Remove entire PayPalNativePayments module
- PayPalWebPayments
- Replace delegate pattern with completion handlers and Swift concurrency
- Remove
PayPalWebCheckoutDelegate
andPayPalVaultDelegate
- Remove
start(request:)
method that uses delegate callbacks - Remove
vault(vaultRequest:)
method that uses delegate callbacks - Add
start(request:completion(PayPalWebCheckoutResult?, CoreSDKError?) -> Void)
toPayPalWebCheckoutClient
- Add
vault(vaultRequest:completion(PayPalVaultResult?, CoreSDKError?) -> Void)
toPayPalWebCheckoutClient
- Add
start(request:) async throws -> PayPalCheckoutResult
- Add
vault(vaultRequest:) async throws -> PayPalVaultResult
- Remove
- Replace delegate pattern with completion handlers and Swift concurrency
- CardPayments
- Replace delegate pattern with completion handlers and Swift concurrency
- Remove
CardDelegate
andCardVaultDelegate
- Remove
approveOrder(request:)
method that uses delegate callbacks - Remove
vault(vaultRequest:)
method that uses delegate callbacks - Add
approveOrder(request:completion:(CardResult?, CoreSDKError?) -> Void)
toCardClient
- Add
vault(request:completion:(CardVaultResult?, CoreSDKError?) -> Void)
toCardClient
- Add
approveOrder(request:) async throws -> CardResult
- Add
vault(vaultRequest:) async throws -> CardVaultResult
- Remove
- Replace delegate pattern with completion handlers and Swift concurrency
- PayPalNativePayments
- PayPalWebPayments
- Rename
PayPalWebCheckoutClientError
toPayPalError
- Add
.checkoutCanceledError
andvaultCanceledError
toPayPalError
- Add public static functions
isCheckoutCanceled(Error)
andisVaultCanceled(Error)
toPayPalError
to distinguish cancellation errors in PayPal flows. - Make
PayPalError
public to expose cancellation error handling helpers
- Rename
- CardPayments
- Rename
CardClientError
toCardError
- Add
threeDSecureCanceledError
toCardError
- Add public static function
isThreeDSecureCanceled(Error)
toCardError
to distinguish cancellation error from threeDSecure verification - Make
CardError
public to expose cancellation error handling helper
- Rename
- PayPalWebPayments
- Deprecate
PayPalVaultRequest(url:setupTokenID:)
- Add
PayPalVaultRequest(setupTokenID:)
- Deprecate
- CorePayments
- Bug fix for live graphQL url
- PayPalNativePayments (DEPRECATED)
- Note: This module is deprecated and will be removed in a future version of the SDK
- Add deprecated warning message to all public classes and methods
- PaymentButtons
- Add black boundary around white buttons
- FraudProtection
- Include
DeviceID
privacy term inPrivacyInfo.xcprivacy
file
- Include
- PayPalNativePayments
- Bump
PayPalCheckout
to1.3.0
with code signing & a privacy manifest file
- Bump
- PaymentButtons
- Resolve assets not rendering when importing via CocoaPods (fixes #267)
- Bump to PPRiskMagnes v5.5.0 with code signing & a privacy manifest file
- Require Xcode 15.0+ and Swift 5.9+ (per App Store requirements)
- Meets Apple's new Privacy Update requirements
- PaymentButtons
- Add
custom
case forPaymentButtonEdges
- Support VoiceOver by adding button accessibility labels
- Fixed frame alignment and width issue occuring in SwiftUI
- Fixed button alignment and size bug in SwiftUI with
intrinsicContentSize
- The height cannot be set smaller than 38px or width shorter than 300px
- Added analytics events
payment-button:initialized
andpayment-button:tapped
- Add
- CardPayments
- Add
status
property toCardVaultResult
- Add
didAttemptThreeDSecureAuthentication
property toCardVaultResult
- Add
status
property toCardResult
- Add
didAttemptThreeDSecureAuthentication
property toCardResult
- Add
cardThreeDSecureDidCancel()
toCardVaultDelegate
- Add
cardThreeDSecureWillLaunch()
toCardVaultDelegate
- Add
cardThreeDSecureDidFinish()
toCardVaultDelegate
- Add
- PayPalWebPayments
- Add
PayPalVaultRequest
type for interacting withvault
method - Add
vault(_:)
method toPayPalWebCheckoutClient
- Add
PayPalVaultResult
type to return vault result - Add
PayPalVaultDelegate
to handle results from vault flow - Add
PayPalWebCheckoutClientError.paypalVaultResponseError
for missing or invalid response from vaulting
- Add
- PayPalNativePayments
- Bump
PayPalCheckout
to1.2.0
- Update
PayPalNativeCheckoutRequest
initalizer to accept optional paramuserAuthenticationEmail
- Bump
- CorePayments
- Analytics
- Update
component
fromppcpmobilesdk
toppcpclientsdk
- Send
correlation_id
, when possible, in PayPal Native Checkout analytic events
- Update
- Analytics
- Breaking Changes
- Require Xcode 14.3+ and Swift 5.8+
- Update Package.swift to include
PayPalCheckout
via a binary target. This works around an SPM bug that includedPayPalCheckout
even for integrations that did not include thePayPalNativePayments
module.
- PayPalNativePayments
- Bump
PayPalCheckout
to1.1.0
- Bump
- CardPayments
- Add
vault
method - Add
CardVaultRequest
andCardVaultResult
types for interacting withvault
method - Add
CardVaultDelegate
protocol to receive success and failure results - Add
CardVaultDelegate
property toCardClient
- Add
- Breaking Changes
- FraudProtection
- Update
PayPalDataCollector
constructor to require a configuration instead of an environment - Remove
PayPalDataCollectorEnvironment
enum
- Update
- FraudProtection
- PayPalNativePayments
- Bump
PayPalCheckout
to1.0.0
- Bump
- PaymentsCore
- Allow
ASWebAuthenticationSession
used for PayPal Web & 3DS flows to share cookies with Safari (fixes #179)
- Allow
- Breaking Changes
- CardPayments
- Remove
status
property fromCardResult
- Remove
paymentSource
property fromCardResult
- Remove
- CorePayments
- CoreConfig instances must now be instantiated using a
clientID
instead of anaccessToken
- CoreConfig instances must now be instantiated using a
- CardPayments
- PayPalNativePayments
- Add
PayPalNativePaysheetActions
toPayPalNativeShippingDelegate.didShippingAddressChange()
andPayPalNativeShippingDelegate.didShippingMethodChange()
- Add
- Card
- Rename
Card.init()
parameter fromcardHolderName
tocardholderName
- Remove unnecessary
Card.expiry
property
- Rename
- CorePayments
- Send
orderID
instead ofsessionID
for analytics
- Send
- PayPalNativePayments
- Update
PayPalNativeCheckoutDelegate.paypal(_:didFinishWithResult:)
to usePayPalNativeCheckoutResult
instead ofPayPalCheckout.Approval
type. - Update
PayPalNativeCheckoutClient.start(presentingViewController:createOrder)
toPayPalNativeCheckoutClient.start(request:presentingViewController:)
- Require
PayPalNativeCheckoutRequest
param instead ofPayPalCheckout.CheckoutConfig.CreateOrderCallback
- Require
- Add
PayPalNativeShippingDelegate
as optional delegate onPayPalNativeCheckoutClient
- Add
PayPalNativeShippingDelegate.didShippingAddressChange()
- Add
PayPalNativeShippingDelegate.didShippingMethodChange()
- Remove
PayPalNativeCheckoutDelegate.paypalDidShippingAddressChange()
- Add
- Update
PayPalNativeCheckoutDelegate.paypal(_:didFinishWithResult:)
to usePayPalNativeCheckoutResult
instead ofPayPalCheckout.Approval
type.
- Update
- Fix CocoaPods build error for Xcode 13
- Rename
PaymentsCore
toCorePayments
- Rename
PayPalDataCollector
toFraudProtection
- Rename
PayPalNativeCheckout
toPayPalNativePayments
- Rename
PayPalWebCheckout
toPayPalWebPayments
- Rename
PayPalUI
toPaymentButtons
- Rename
Card
toCardPayments
- PayPalUI
- Fix issue where label was not being shown
- Rename
Environment.production
enum case toEnvironment.live
- Send analytic events for
PayPalNativePayments
,PayPalWebPayments
, andCardPayments
flows
- Card
- Remove
ThreeDSecureRequest
fromCardRequest
and create URLs internally - Update
CardRequest
to optionally passsca
- Remove step requiring
ASWebAuthenticationPresentationContextProviding
conformance
- Remove
- PayPalWebCheckout
- Remove step requiring
ASWebAuthenticationPresentationContextProviding
conformance
- Remove step requiring
- PayPalUI
- Fix assets not rendering when importing with Swift Package Manager and CocoaPods
- PayPalNativeCheckout
- Expose PayPalNativeCheckout through Swift Package Manager
-
PayPalUI
- Fix fatal crash with iOS 16:
UIViewRepresentables must be value types
. Separate buttons intoUIKit
andSwiftUI
implementations.
UIKit SwiftUI PayPalButton PayPalButton.Representable PayPalCreditButton PayPalCreditButton.Representable PayPalPayLaterButton PayPalPayLaterButton.Representable - Fix fatal crash with iOS 16:
-
PayPalNativeCheckout
- Update to version 0.109.0 that fixes shipping callback bug
-
Bump minimum supported deployment target to iOS 14+
-
Require Xcode 14
- Bump Swift Tools Version to 5.7 for CocoaPods & SPM
-
Card
- Add
Address
- Add
Card
- Add
CardClient
- Add
CardRequest
- Add
CardResult
- Add
-
PayPalCheckout
- Add
PayPalWebCheckout
- Add
-
PayPalUI
- Add
PayPalButton
Button - Add
PayPalPayLater
Button - Add
PayPalCredit
Button
- Add
-
PayPalDataCollector
- Add
PayPalDataCollector
- Add
MagnesSDK
- Add