Skip to main content
Version: 1.6.14

Changelog

1.6.14 - 15.09.2026

minBackendVersion

Added
  • Added the KPS step: an Identity Sharing System verification with no user interface, in which the SDK performs the backend query directly and moves to the next step based on the result. Used via .setStepType(.kps).
  • Added per-step NFC text configuration: successfulReadText, scanDescription, and retryDescription can be customized with StepBuilder.setNFCTextConfig(_:).
  • Added device security check: setSecurityCheckEnabled(true) enables jailbreak, simulator, debugger, and hooking detection. Every run emits a SECURITY_CHECK_PASSED or SECURITY_WARNING event; on compromised devices the flow is stopped with a fail screen. Messages can be customized with setSecurityErrorMessage.
  • Success screen texts are now customizable: setCompletedScreenTexts(_:) and CompletedScreenTexts (titleText, descriptionText, buttonText).
  • Lighting warnings are now configurable: setOverexposureWarning(_:) and setLowLightWarning(_:) together with WarningConfig (.enabled(message:) / .disabled). The default value is .disabled.
  • Expanded the UIConfig theme tokens. ColorsConfig gained primaryColor, onPrimaryColor, surfaceColor, onSurfaceColor, backgroundColor, errorColor, successColor, textPrimaryColor, textSecondaryColor, and lineButtonTextColor; ShapesConfig gained cardCornerRadius, imageFrameCornerRadius, and bottomSheetCornerRadius; TypographyConfig gained promptFontSize and promptFontWeight.
  • Added startButtonText and stopButtonText to TextConfig for the video record screen.
  • Added per-step button text and close button control: setApproveButtonText, setRetakeButtonText, and setCancelButtonIsActive on StepBuilder. Per-step values override the global texts provided through UIConfig.textConfig.
  • Added the roomName parameter to enterKYC, used as the appointment identifier in video call requests.
  • Documented certificate pinning support: setPinnedCertificate(from:orEmbeddedFile:isPEM:).
  • Documented every LogState event delivered through onEvent, together with its raw value.
  • Documented the KYCManager.onError closure as an alternative to the delegate, and the title, message, and extraDetail fields readable from TeydexError.
  • Added an informational note about package variants and Reset Package Caches to the installation section.
  • Place of birth is now read in the NFC step.
Changed
  • Breaking change: the case names of the TeydexError sub-enums moved to UPPER_SNAKE_CASE. For example: .cameraPermissionDenied.CAMERA_PERMISSION_DENIED, .deviceNotHaveNfc.DEVICE_NOT_HAVE_NFC, .nfcDisabled.NFC_NOT_ENABLED, .deviceInitFailed.CAMERA_CONFIGURATION_FAILED, .externalAuthFailed.CARD_AUTH_FAILED. Integrations passing dictionaries to methods such as setCameraErrorMessage and setNFCErrorMessage need to be updated.
  • The enterKYC(clientToken:...) signature is marked deprecated; use enterKYC(from:...), which takes the screen the flow is started from, instead.
  • Added new error families: TeydexError.PermissionError, TeydexError.SecurityError, TeydexError.NetworkError, and TeydexError.VideoRecordError. The setPermissionErrorMessage, setSecurityErrorMessage, setNetworkErrorMessage, and setVideoRecordErrorMessage methods are available for these families.
  • Added the FACE_DETECTION_FAILED and APP_WENT_BACKGROUND cases to the CameraSourceError family.
Fixed
  • Fixed the dark screen problem in video calls.
  • Fixed the freeze that occurred on unsuccessful video calls.
  • Fixed a crash in the liveness step.
  • Fixed the recording preview not being shown in the video record step.
  • Fixed the audio problem in the video record step and updated the default timeout duration.
  • Improved image compression behavior.

1.4.6 - 13.05.2026

minBackendVersion

Added
  • Added the VideoRecord step: a voice-verified video step in which the user creates a video recording by reading the on-screen text aloud. Used via .setStepType(.videoRecord); configurable with setStartButtonText, setStopButtonText, setApproveButtonText, setRetakeButtonText, and setVideoRecordDuration.
Changed
  • The signature of KYCProcessResult.failed and cancelled (returned via onProcessFinished) changed: step: KYCStep? is now stepName: String?, and the failed case's reason: TeydexError is now reason: String. Integrations relying on these types need to be updated.
Fixed