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
.
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/Tests/Run.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.