/tink-link-ios

Optimise open banking experiences for mobile apps with Tink Link iOS SDK.

Primary LanguageObjective-CMIT LicenseMIT

Platforms Swift Xcode CocoaPods SPM

Tink Link iOS

Tink Link iOS

Prerequisites

  1. Set up your Tink Console account and retrieve the client ID for your app.
  2. Add a universal link (or deep link) to your app in the list of redirect URIs under App settings > API client (eg. myapp://callback).
  3. Add a universal link (or deep link) scheme into supported URL Types of your app:
    • Open your iOS project (xcodeproj file).
    • Select your app in the list Targets.
    • Open Info section.
    • Navigate down and expand URL Types section.
    • Press plus (+) button.
    • Add your universal link (or deep link) scheme into URL Schemes field (eg. myapp).

Requirements

  1. iOS 14.0
  2. Xcode 15.0
  3. Swift 5.10

Installation

Using Swift Package Manager

Add a package dependency in Xcode to your app target.

  1. In Xcode, select File > Add Packages...
  2. Enter https://github.com/tink-ab/tink-link-ios as the repository URL.
  3. Add the TinkLink product to the target of your app.

Using CocoaPods

Add TinkLink to your Podfile:

pod "TinkLink"

Using manual installation

  1. Download and extract the TinkLink.xcframework from the releases page on GitHub.
  2. Drag TinkLink.xcframework to the Frameworks, Libraries, and Embedded Content section of the General settings tab for your application target in your Xcode project. Make sure to select Copy items if needed.

Launching the SDK

To launch the SDK in your iOS app, please see the product specific documentation.

Account Check Getting started Setup and integrate SDK reference
Expense Check Getting started Setup and integrate SDK reference
Income Check Getting started Setup and integrate SDK reference
One-time payments Getting started Setup and integrate SDK reference
Risk Insights Getting started Setup and integrate SDK reference
Transactions Getting started Setup and integrate SDK reference
Report bundling - - SDK reference
Account Aggregation Getting started - SDK reference

Preselecting a provider

You can also optimize your integration in different ways, such as preselecting a provider. To preselect a provider, simply specify your provider name as a value to the inputProvider argument for the API calls where it's available, like in this example:

let viewController = Tink.Transactions.connectAccountsForOneTimeAccess(
    configuration: config,
    market: market,
    inputProvider: "sbab-bankid",
    completion: handler
)

Parameter inputProvider gives the option to use the data to skip the provider-selection screen and preselect the user's provider (in this example, SBAB is preselected).

To get the list of all providers available for an authenticated user, please refer to list-providers. To get the list of all providers on a specified market, please refer to list-providers-for-a-market.

Example app

  • TinkLinkSimpleSample shows how to build a complete flow for the Transaction product by using Tink Link in the easiest and fastest manner.

SDK reference

For the full API reference, please see the Tink Link iOS SDK Reference.

Support

For any questions and/or support, please contact us directly here: https://docs.tink.com/resources/support.