iOS SDK migration guide

Migrating Veriff iOS SDK from 7 to 8

  • Veriff’s API become MainActor isolated

  • The NFC scanning logic was moved into separate framework. Check out Enable NFC scanning guide.

Migrating Veriff iOS SDK from 6 to 7

Minimum iOS supported version increased

Minimum version is iOS 13.0.

Migrating Veriff iOS SDK from 5 to 6

Update VeriffSdk.Branding object

Following configurations are added:

  • background

  • onBackground

  • onBackgroundSecondary

  • onBackgroundTertiary

  • primary

  • onPrimary

  • secondary

  • onSecondary

  • outline

  • error

  • success

Following configurations are removed:

  • themeColor

  • backgroundColor

  • primaryTextColor

  • rimaryButtonBackgroundColor

  • bulletPoint

Following configurations are deprecated:

  • logomark not used anymore

Following configurations are renamed:

  • buttonCornerRadius -> buttonRadius

Migrating Veriff iOS SDK from 4 to 5

Minimum iOS supported version increased

Minimum version is iOS 11.0.

Updates to VeriffSdk.Branding object

Following configurations are removed:

  • buttonHeight

  • statusBarColor

  • secondaryTextColor

  • isTextUppercase

Changes to the fonts API:

  • lightFontName is removed

  • regularFontName, semiBoldFontName and boldFontName are renamed to regular, medium and bold.

Following configurations are added:

  • logomark customization

Migrating Veriff iOS SDK from 3 to 4

Veriff instances renamed to VeriffSdk

The name Veriff was used both for our module and public class name. This blocked us from supporting Swift Package Manager due to Swift compiler bug. We renamed our public class name to VeriffSdk.

Following structs have been moved:

  • VeriffConfiguration struct is moved under VeriffSdk.Configuration (replace the occurrences of VeriffConfiguration with VeriffSdk.Configuration)

  • Branding VeriffSdk.Branding (replace the occurrences of Branding with VeriffSdk.Branding)

  • VeriffDelegate struct is moved under VeriffSdkDelegate (replace the occurrences of VeriffDelegate with VeriffSdkDelegate)

Following are now mandatory:

  • VeriffSdk.Result.description (if you had issues with unwrapping it, feel free to remove it)

Other changes

VeriffSdk.Result.sessionToken removed and VeriffSdk.Result.sessionUrl added instead.

Remove the occurrences of sessionToken. You can now use sessionUrl to get the full sessionUrl including token.

Migrating Veriff iOS SDK to 3

Switch from baseUrl and sessionToken to sessionUrl

The Veriff object in the SDK 3.0.0 takes a required sessionUrl and an optional VeriffConfiguration instance as parameters into initialisation. The sessionUrl is received from your backend implementation (namely the respone of the POST /sessions[↗] call), it is composed of the baseUrl and sessionToken sent to the VeriffConfiguration object in earlier versions.

Updated VeriffConfiguration object

The VeriffConfiguration struct now takes in branding and languageLocale as initialisation parameters.

The new VeriffDelegate method

You can now receive session results via func sessionDidEndWithResult(_ result: Veriff.Result) instead of the obsolete func onSession(result: VeriffResult, sessionToken: String). The sessionToken is included in the Veriff.Result as an instance variable.

Use Veriff.Result instead of VeriffResult

The new Veriff.Result struct comprises status: Status and sessionToken: String? instance variables. The Status enum can be of three types: done, canceled, error. The description variable on the Veriff.Result returns additional information as a string.


Article versioning

Date

Description

Apr 23, 2025

Enable NFC scanning section added

Mar 12, 2025

Documentation published