Welcome to PayPal's iOS SDK. This library will help you accept card, PayPal, Venmo, and alternative payment methods in your iOS app.
If you have suggestions for features that you would like to see in future iterations of the SDK, please feel free to open an issue, PR, or discussion with suggestions. This product is fully open source. We welcome any and all feedback.
The PayPal iOS SDK supports a minimum deployment target of iOS 14+ and requires Xcode 14.3+ and macOS Ventura 13. See our Client Deprecation policy to plan for updates.
This SDK supports:
- CocoaPods
- Swift Package Manager
This SDK supports Swift 5.8+. This SDK is written in Swift.
This SDK supports:
- UIKit
- SwiftUI
The PayPal SDK uses a client ID for authentication. This can be found in your PayPal Developer Dashboard.
Each feature module has its own onboarding guide:
To accept a certain payment method in your app, you only need to include that payment-specific submodule.
- Open
PayPal.xcworkspace
in Xcode - Resolve the Swift Package Manager packages if needed:
File
>Packages
>Resolve Package Versions
or by runningswift package resolve
in Terminal - Select the
Demo
scheme, and then run
Xcode 14.3+ is required to run the demo app.
This project uses the XCTest
framework provided by Xcode. Every code path should be unit tested. Unit tests should make up most of the test coverage, with integration, and then UI tests following.
GitHub Actions CI will run all tests and build commands per package manager on each PR.
Our Xcode project uses SwiftLint.
This SDK follows Semantic Versioning. The release process will be automated via GitHub Actions.
Client analytics will be collected via Lighthouse/FPTI.