Get started with our ProcessOut documentation or browse the SDK reference:
iOS 13.0+
Module | Description |
---|---|
ProcessOut | Allows to interact with ProcessOut API and provides a UI to handle payments. |
ProcessOutCheckout3DS | Integration with Checkout.com 3D Secure (3DS) mobile SDK. |
ProcessOutUI | ProcessOut prebuilt UI to handle payments. |
Note
We are currently in the process of migrating UI from ProcessOut to ProcessOutUI module. The new module
is based on SwiftUI, so styling is not compatible with ProcessOut (that is based on UIKit). Also
beware that UI in ProcessOut will be removed in 5.0.0
.
Warning
Checkout3DS is currently incompatible with Xcode 16, which also affects ProcessOutCheckout3DS. If you depend on this functionality, please use version 4.20.0 with Xcode 15 until the issue is resolved.
We welcome contributions of any kind including new features, bug fixes, and general improvements.
- A recent version of Xcode (tested with 16.0)
- Homebrew package manager
Before going further please make sure that you have installed all dependencies specified in requirements section. Then in order to install remaining dependencies and prepare a project run ./Scripts/BootstrapProject.sh
script from repository's root directory. It will create ProcessOut.xcodeproj
project that should be used for development.
Note
If you plan to run tests ensure that constants defined in Tests/ProcessOutTests/Sources/Core/Constants.swift
and Tests/ProcessOutUITests/Sources/Core/Constants.swift
are set to test project credentials. E.g.:
enum Constants {
/// Project ID.
static let projectId = "test-proj_K3Ur9LQzcKtm4zttWJ7oAKHgqdiwboAw"
/// Project's private key.
static let projectPrivateKey = "key_test_RE14RLcNikkP5ZXMn84BFYApwotD05Kc"
/// Customer ID.
static let customerId = "cust_dCFEWBwqWrBFYAtkRIpILCynNqfhLQWX"
}
To run tests locally use ./Scripts/Test.sh
script. It is also possible to run them directly in Xcode from the ProcessOut target in ProcessOut.xcodeproj
.
ProcessOut is available under the MIT license. See the LICENSE file for more info.