메인 콘텐츠로 건너뛰기
Estas versiones corresponden a los SDK de verificación de identidad. Los módulos de autenticación nativa y sus adaptadores tienen una versión aparte: consulta las guías de inicio rápido de Autenticación.
Integra la verificación de Didit de forma nativa en tus aplicaciones móviles con nuestros SDK oficiales. Los SDK nativos ofrecen una experiencia de usuario fluida, mejor rendimiento y acceso completo a las capacidades del dispositivo en comparación con las integraciones basadas en WebView.

Enfoque recomendado: para la mejor experiencia de usuario, usa nuestros SDK nativos en lugar de la integración con WebView. Los SDK nativos gestionan de forma automática toda la complejidad de los permisos de la cámara, la lectura NFC y la prueba de vida.


SDK 제공 현황

생체 인식 동의에는 네이티브 4.10.0 이상이 필요합니다. 일리노이주, 텍사스주 또는 콜로라도주 법이 적용되는 사용자의 경우, Didit은 첫 얼굴 촬영 전에 명시적인 생체 인식 동의를 요청할 수 있습니다. 호스팅 흐름(Web SDK, WebView, 브라우저)과 네이티브 iOS 및 Android SDK 4.10.0 이상은 이 단계를 표시합니다. React Native와 Flutter는 네이티브 4.10.0 이상을 고정한 릴리스에서 이 단계를 표시합니다. 4.10.0 미만의 네이티브 SDK이거나 버전을 보고하지 않는 SDK는 이 단계를 표시할 수 없습니다. 이 경우 세션은 이전과 같이 실행되며, 결정 결과에는 biometric_consent.status: "pending"과 reason: "BIOMETRIC_CONSENT_UNSUPPORTED_SDK"가 포함됩니다. 해당 상태에서 사람을 인증하는 경우 업그레이드하십시오.

4.13.2의 새로운 기능

iOS에서는 카메라가 열리지만 프레임을 전달하지 않을 때 사진을 요청해도 앱이 더 이상 충돌하지 않습니다. 모든 사진 요청은 먼저 활성 비디오 연결이 있는 실행 중인 카메라 세션이 있는지 확인하며, 화면에는 카메라 오류 또는 건너뛰기가 대신 표시됩니다. Android에서는 ID 조회 셀피에서 프레임을 전달하지 않는 카메라로 사진을 요청하면 무기한 대기하지 않고 5초 후 화면의 카메라 오류로 종료됩니다. 환영 화면에서는 단계 목록이 하단 페이드 아래로 이어지는 동안 원형 아래로 스크롤 버튼이 목록 가로 중앙에 표시됩니다(오른쪽에서 왼쪽으로 쓰는 언어에서도 동일). 이는 웹 흐름과 같습니다. 버튼을 탭하면 목록이 아래로 스크롤되며, 목록 끝에 도달했을 때와 시트가 열려 있는 동안에는 버튼이 숨겨집니다. Android 4.13.1은 아래로 스크롤 버튼만 포함한 중간 릴리스였으며, 4.13.2에서 이 버튼이 iOS, React Native, Flutter에도 적용됩니다. React Native 4.13.2는 proguard-android-optimize.txt와 R8로 축소된 Android 릴리스 빌드에서 발생하던 실행 시 충돌도 수정합니다. 이 패키지에 이제 자체 R8 규칙이 포함됩니다. Flutter 4.13.2는 Android Gradle Plugin 9와 내장 Kotlin으로 빌드됩니다.

4.13.0의 새로운 기능

전화번호 단계에서 +1(미국 및 캐나다) 번호는 코드 전송 아래에 짧은 통신사 고지가 표시됩니다(“메시지 및 데이터 요금이 부과될 수 있습니다”). 고지에는 SMS 약관 및 개인정보 처리방침 링크가 포함되며, 사용자의 언어로 표시됩니다. 화면 높이가 짧은 경우에도 셀피 타원이 컨트롤 위에 맞게 표시됩니다. 초록색 완료 필, 문서 사진 촬영 후의 확인 버튼, 셀피 촬영 완료 화면은 제거되었습니다. 촬영된 사진은 바로 처리 중 단계로 넘어갑니다. 문서 촬영이 대체 수단일 뿐이고 디지털 ID 지갑이 우선할 때는 지갑 실행 화면에 지갑만 제공됩니다. 지갑 재시도 시에는 문서 링크 없이 인증이 계속 열려 있습니다. Didit이 전송할 수 있는 모든 국가 코드에 국기가 표시되며, 잘못된 국기가 표시되는 경우는 없습니다. 이미 시작된 세션에 샌드박스 시나리오를 설정하면 일반 오류 대신 그 이유가 표시됩니다. Android에서 Credential Manager 지갑은 “디지털 ID로 인증”으로 표시됩니다. 호환되는 ID를 보유한 Google Wallet이나 다른 Android 지갑도 이 요청에 응답할 수 있기 때문입니다. iOS에서는 이 방법을 제공하지 않습니다.

4.12.2의 새로운 기능

환영 화면에서 로고가 왼쪽 정렬된 제목 위 가운데에 배치되며, iOS는 Android 및 웹과 마찬가지로 고객 로고를 높이 72pt로 표시합니다. KYB 주요 인물 단계에서 대표자 추가를 누르면 대표자 역할이 선택된 상태로 열리며, 워크플로에서 일부 역할을 비활성화하더라도 해당 인물은 대표자 항목에 저장됩니다. 설문지에서는 짧은 화면과 큰 텍스트 크기에서도 “보안 제공”이 버튼 아래에 고정됩니다. 주소 질문의 국가 선택기 제목은 주소용으로 표시되며, 열린 드롭다운은 입력 필드의 모서리 모양을 따릅니다.

4.12.1의 새로운 기능

저장 공간이 가득 찬 iPhone에서도 문서 및 셀피 촬영은 이제 비디오를 유지합니다. iOS SDK는 이 촬영을 메모리에 기록하며, 비디오 프레임이 없는 녹화는 절대 업로드하지 않습니다. iOS와 Android에서, 먼저 받은 응답보다 늦게 도착한 서버 응답이 방금 응답한 단계(NFC, 셀피 또는 문서 단계)를 다시 열지 않습니다.

4.12.0의 새로운 기능

웹 흐름에 표시되는 모든 디지털 ID 지갑의 로고가 추가되었습니다(Mobile-ID, ConnectID, Finnish Trust Network, OneID, Bank iD, MojeID, FranceConnect, Auðkenni, 에스토니아 ID 카드, GOV.UK Wallet). 웹과 같은 흰색 또는 검은색 판에 표시됩니다. 자동 촬영이 실행되지 않을 때 촬영 안내에 해야 할 일이 표시되며, 환영 화면은 큰 텍스트 크기에서도 법적 고지 문장을 하단에 고정합니다. 세션 시작이 거부되었을 때는 작동할 수 없는 재시도 옵션을 더 이상 제공하지 않습니다. 문서 및 셀피 카메라에는 셔터 옆에 카메라 전환 버튼이 있으며, 업로드는 팁으로 이동했습니다. 카메라 위에 시트가 열려 있는 동안에는 아무것도 자동으로 촬영되지 않습니다. Android에서 카메라 선택 시트는 모든 언어에서 카메라를 “전면 카메라”와 “후면 카메라”로 표시합니다.

4.11.0의 새로운 기능

버전 4.11.0에는 공개되지 않았던 4.10.0에 계획되었던 모든 내용도 포함되어 있으므로, 4.9.1에서 바로 업그레이드하십시오. 흐름에는 새로운 상단 막대, 텍스트로 표시되는 진행 상황, 새로 설계된 환영 화면을 포함한 재설계된 셸이 적용되었습니다. 자동 문서 및 셀피 촬영은 이제 모든 변형에서 지원되며, Didit 자체 경량 감지기를 사용합니다. 따라서 Core와 AutoDetection 변형은 같은 방식으로 촬영합니다. AutoDetection 변형과 Android didit-sdk-autodetection 아티팩트는 사용 중단 권장 상태이며 Core와 동일합니다. Android didit-sdk-autodetection-play 아티팩트는 더 이상 게시되지 않습니다. 새 단계가 추가되었습니다: 은행 인증, 위치(iOS의 Core-Location, NFC-Location, All-Location 변형을 통한 선택 사용), 전자 서명, 생체 인식 동의.

4.9.1 버전의 새로운 기능

문서 및 주소 증명 국가 선택기는 iOS와 Android에서 화면이 표시된 뒤 조회가 끝나더라도 사용자 IP 주소에서 감지된 국가로 열립니다. 세션에 설정된 국가나 사용자가 직접 고른 국가는 절대 덮어쓰지 않습니다. Android에서는 설문지의 섹션 헤더와 필드가 SDK 언어로 표시되며, 전체 변형에서 NFC 여권 스캔이 더 이상 충돌하지 않습니다. 러시아어 및 키르기스어 인증 문구는 두 플랫폼 모두에서 개선되었습니다.

4.9.0 버전의 새로운 기능

모든 네이티브 및 크로스 플랫폼 모바일 SDK는 인증 시작 화면에서 선택적으로 사용할 수 있는 언어 선택기를 제공합니다. showLanguageSelector를 true로 설정하면 웹 인증 흐름과 동일한, 간결하고 검색 가능한 선택기가 표시됩니다. 선택기는 기본적으로 숨겨져 있으므로, 활성화하기 전까지 기존 연동은 현재 동작을 그대로 유지합니다.

대안: 플랫폼용 네이티브 SDK가 아직 제공되지 않는다면, 대체 수단으로 WebView 연동을 사용할 수 있습니다.


검증 세션의 흐름

모든 네이티브 SDK는 동일한 Didit 검증 세션을 사용합니다. 흐름은 다음과 같습니다.
  1. 귀사의 백엔드가 workflow_id와 선택적 컨텍스트(vendor_data, contact_details, expected_details, metadata, callback)를 포함하여 POST /v3/session/을 호출합니다.
  2. Didit가 session_id, 수명이 짧은 session_token, 호스팅된 url을 반환합니다.
  3. 모바일 앱이 백엔드로부터 session_token을 받아 SDK에 전달합니다(startVerification(token: …)).
  4. 네이티브 SDK가 검증 UI를 열고 사용자가 단계를 완료하면, SDK는 세션의 최종 status(Approved, Declined, In Review 등)와 함께 결과를 반환합니다.
  5. 귀사의 백엔드가 webhook(webhook_type: "status.updated")을 통해 전체 결정을 수신하고 저장합니다.
SDK 결과는 워크플로 결과(상태)만 알려줍니다. 전체 결정(문서 필드, 얼굴 대조 점수, AML 일치 항목, NFC 데이터, 경고)은 webhook을 통해 서버로 전달되며, 세션 결정 조회 endpoint로도 가져올 수 있습니다. 인가 결정에는 클라이언트 측 결과만 신뢰해서는 안 됩니다.
모든 네이티브 SDK는 UniLink 모드(워크플로 ID만 사용, 백엔드 불필요)도 지원합니다. 빠른 프로토타입에는 UniLink를, 프로덕션에는 세션 토큰 방식을 사용하세요.

iOS SDK

사용 시기: iOS 13+를 대상으로 하는 네이티브 Swift / SwiftUI / UIKit 앱. 최소한의 설정만으로 사용할 수 있는, 서버 중심의 가벼운 iOS SDK로 신원 확인을 제공합니다.

GitHub 저장소

GitHub에서 소스 코드와 예제 보기
주요 기능:
  • SwiftUI 및 UIKit 지원
  • NFC 여권/ID 판독(iOS 15+; NFC와 OpenSSL을 제외한 Core 및 AutoDetection 변형은 iOS 13+에 배포됩니다)
  • 54개 언어 지원
  • 사용자 지정 가능한 UI 테마
  • 세션 토큰 또는 워크플로 ID 연동
빠른 시작:
→ iOS SDK 전체 문서

Android SDK

사용 시기: Android 6.0(API 23) 이상을 대상으로 하는 네이티브 Kotlin / Jetpack Compose / Java 앱. 최소한의 설정만으로 사용할 수 있는, 서버 중심의 가벼운 Android SDK로 신원 확인을 제공합니다.

GitHub 저장소

GitHub에서 소스 코드와 예제 보기
주요 기능:
  • Kotlin 및 Jetpack Compose 지원
  • NFC 여권/ID 판독(선택적으로 추가하는 me.didit:didit-sdk-core 아티팩트는 NFC 종속성을 제거합니다)
  • API 24+에서 ML 기반 문서 및 얼굴 자동 감지(API 23에서는 수동 촬영 방식으로 자연스럽게 대체)
  • 54개 언어 지원
  • 사용자 지정 가능한 UI 테마
  • 세션 토큰 또는 워크플로 ID 연동
빠른 시작:
→ Android SDK 전체 문서

React Native SDK

사용 시기: iOS와 Android에서 단일 TypeScript API를 사용해야 하는 크로스 플랫폼 React Native 또는 Expo 앱(RN 0.76+, New Architecture). 통합된 TypeScript API로 네이티브 iOS 및 Android SDK를 감싸는 크로스 플랫폼 React Native SDK입니다.

GitHub 저장소

GitHub에서 소스 코드와 예제 보기
주요 기능:
  • iOS와 Android를 위한 단일 TypeScript API
  • 설정 없이 적용되는 구성 플러그인을 통한 Expo 지원(개발 빌드 필요, Expo Go 불가)
  • React Native CLI 지원
  • NFC 여권/ID 판독(DIDIT_SDK_IOS_NFC_ENABLED=false / diditSdkAndroidNfcEnabled=false로 끌 수 있음)
  • 54개 언어 지원(네이티브 SDK에서 상속)
  • 세션 토큰 또는 워크플로 ID 연동
빠른 시작:
→ React Native SDK 전체 문서

Flutter SDK

사용 시기: iOS와 Android에서 단일 Dart API를 사용해야 하는 크로스 플랫폼 Flutter 앱(Flutter 3.3+, Dart 3.11+). 통합된 Dart API로 네이티브 iOS 및 Android SDK를 감싸는 크로스 플랫폼 Flutter SDK입니다.

pub.dev 패키지

pub.dev에서 패키지 보기
주요 기능:
  • iOS와 Android를 위한 단일 Dart API
  • 네이티브 SDK와의 플랫폼 채널 연동
  • NFC 여권/ID 판독(DIDIT_SDK_IOS_NFC_ENABLED=false / diditSdkAndroidNfcEnabled=false로 끌 수 있음)
  • 54개 언어 지원(네이티브 SDK에서 상속)
  • 세션 토큰 또는 워크플로 ID 연동
빠른 시작:
→ Flutter SDK 전체 문서

Web SDK (JavaScript)

사용 시점: 브라우저 기반 앱과 웹 프레임워크(React, Vue, Angular, Next.js, Nuxt, Svelte, 순수 JS)에 적합합니다. Web SDK는 모달 또는 인라인 iframe으로 호스팅된 인증 흐름을 엽니다. 모바일 앱에는 위의 네이티브 SDK를 사용하는 것이 좋습니다. React, Vue, Angular, Next.js, Nuxt, Svelte, 순수 JS를 지원하는 웹 애플리케이션용 JavaScript SDK입니다.

NPM 패키지

npm에서 패키지 보기
주요 기능:
  • 프로그래매틱 세션 관리 및 이벤트 콜백
  • React, Vue, Angular, Next.js, Nuxt, Svelte, 순수 JS 지원
  • TypeScript 완전 지원
  • 모달 및 인라인(임베디드) 모드
  • 커스텀 UI를 위한 상태 관리
빠른 시작:
→ JavaScript SDK 전체 문서 | 모든 Web SDK

연동 방식 선택

네이티브 SDK는 NFC 전자여권 판독, 지연 시간이 가장 짧은 카메라 촬영, 그리고 다른 네이티브 화면과 구분되지 않는 앱 내 경험이 필요할 때 가장 적합합니다. 네이티브 SDK 업데이트를 배포할 수 없는 경우(예: 다시 빌드할 수 없는 기존 앱, 또는 Didit 네이티브 SDK를 제공하지 않는 플랫폼)에는 대안으로 WebView 연동을 사용하세요.
마지막 수정일 2026년 11월 7일