Swiftpack.co - getkevin/kevin-ios as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by getkevin.
getkevin/kevin-ios 2.5.0
Simplified kevin. integration for the iOS clients.
⭐️ 9
🕓 23 weeks ago
.package(url: "https://github.com/getkevin/kevin-ios.git", from: "2.5.0")


Carthage compatible License

The kevin. iOS SDK enables to easily integrate AIS and PIS services in your mobile application. We provide neat, customisable UI screens so integration would be as quick as possible. We also expose the low-level APIs that power those UIs so that you can build fully custom experiences.

If you're a developer:

  • Get started with our SDK reference
  • Get started with our Developer Portal
  • Check out our Samples for an example of how you can easily integrate kevin. iOS SDK for the most common cases


  • Visit our Demo App for a showcase of a fully featured iOS app utilising kevin. iOS SDK


  • Account linking - we provide an easy solution to authenticate and manage user bank accounts.
  • Bank payments - we provide a possibility to integrate bank payments in your app with both SCA and non-SCA options.


  • Swift Package Manager - kevin. iOS SDK supports Swift Package Manager, which is the recommended option. Add a dependency to your project with: .package(url: "https://github.com/getkevin/kevin-ios", from: "2.2.12")
  • CocoaPods: - add pod 'kevin-ios' to your Podfile

Usage example

Initiate Bank Payment

import Kevin

let paymentID = "UUID" // Put your actual payment's ID here

let configuration = try KevinPaymentSessionConfiguration.Builder(paymentId: paymentID)

KevinPaymentSession.shared.delegate = self // Set the delegate to obtain payment session result
KevinPaymentSession.shared.initiatePayment(configuration: configuration)

Implement KevinPaymentSessionDelegate

extension YourClassName: KevinPaymentSessionDelegate {
    func onKevinPaymentInitiationStarted(controller: UINavigationController) {
        // Present payment controller
        present(controller, animated: true)

    func onKevinPaymentCanceled(error: Error?) {
        // Handle errors

    func onKevinPaymentSucceeded(paymentId: String, status: KevinPaymentStatus) {
        // Handle success

See more samples to check the most common use cases.


  • iOS SDK documentation can be found here
  • The API reference is located here

Cross-platform support

At the moment Flutter and React Native integrations are supported. Please check respective cross-platform documentation for a tutorial on how to do it.


We welcome contributions of any kind including new features, bug fixes, and documentation improvements. Please first open an issue describing what you want to build if it is a major change so that we can discuss how to move forward. Otherwise, go ahead and open a pull request for minor changes such as typo fixes and one liners.


Stars: 9
Last commit: 23 weeks ago
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

23 weeks ago


  • Default customization has been updated to match the kevin. brand.

Logic changes

  • Introducing a logic change for an optional parameter called setConfirmInteractiveDismiss. This parameter controls when additional alerts are shown when closing the SDK modal. It now supports only two options: always and never. afterBankSelection option is not supported anymore


  • Internal quality improved by introducing unit tests.
  • Removed unused KevinTheme attributes negativeButtonStyle and textFieldStyle.
  • Bugfixes

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics