메인 콘텐츠로 건너뛰기
Didit에서 세션은 인증의 기본 단위입니다. 인증을 시작하면 세션이 생성되고, 인증이 끝나면 세션에 전체 decision payload가 담깁니다. 같은 세션 API로 두 종류를 모두 처리합니다: Academy 강의 중 사용자가 보게 되는 화면을 다루는 5:34 챕터에서는 호스팅 방식과 직접 화면을 구현하는 방식을 비교합니다. 이 API가 바로 그 선택을 대신 결정해 줍니다.

종류는 워크플로에 따라 결정됩니다

세션을 생성할 때 workflow_id를 전달합니다. 워크플로의 유형에 따라 세션이 사용자 인증인지 기업 확인인지가 결정되며, 호출하는 쪽에서 따로 선택하지 않습니다. KYB 워크플로는 기업 확인 세션을 만들고, KYC 워크플로는 사용자 인증 세션을 만듭니다.

session_kind 판별자

세션 생성, 조회, 목록 조회, 상태 업데이트, 공유, 가져오기 등 모든 세션 응답에는 최상위 필드가 포함됩니다:
  • "user": 이 세션은 사용자 인증(KYC) 세션입니다. 응답에 사용자 전용 기능 배열이 포함됩니다.
  • "business": 이 세션은 기업 확인(KYB) 세션입니다. 응답에 기업 전용 기능 배열이 포함됩니다.
이 필드를 사용해 클라이언트에서 응답 구조에 따라 처리를 분기하세요.
열거형 값은 짧은 식별자인 "user"와 "business"입니다. API를 간결하게 사용할 수 있도록 값을 짧게 유지했습니다. 문서 전체에서는 명확성을 위해 사용자 인증(KYC)과 기업 확인(KYB)이라는 전체 명칭을 사용합니다.

종류별 기능 배열

결정 결과에 포함되는 기능 배열은 세션 종류에 따라 달라집니다. 한 종류에만 해당하는 필드는 해당 응답에 나타나지 않습니다(null 값이나 자리표시자는 없습니다):

공통 최상위 필드

모든 세션(두 종류 모두)에는 다음 필드가 포함됩니다:

지원되는 endpoint

아래 endpoint는 두 종류를 모두 지원합니다. 별도의 /v3/business-session/* 경로는 없습니다.

조회 방식

사용자 인증 세션과 기업 확인 세션은 서로 다른 두 종류입니다. ID는 UUID이므로 충돌이 발생하지 않습니다. session_id로 endpoint를 호출하면 Didit은 다음 순서로 처리합니다:
  1. 사용자 인증 테이블에서 ID를 먼저 찾습니다(대부분의 트래픽이 여기에 해당합니다).
  2. 찾지 못하면 기업 확인 테이블에서 찾습니다.
  3. 두 테이블 모두에 일치하는 항목이 없으면 404를 반환합니다.
API에 어떤 종류를 찾는지 알려 줄 필요는 없습니다.

상태 값은 동일합니다

상태 값은 두 종류에서 동일하며, API는 여기에 적힌 그대로 값을 반환합니다: "Not Started", "In Progress", "Approved", "Declined", "In Review", "Abandoned", "Expired", "Kyc Expired", "Resubmitted", "Awaiting User". 값 비교는 정확히 일치해야 하며 대소문자를 구분합니다. 전체 목록은 인증 상태를 참고하세요.

webhook

webhook 이벤트에는 이미 session_kind 필드가 포함되어 있으므로, webhook 핸들러에서 종류별로 분기할 수 있습니다. 서명 검증과 재시도 동작은 webhook 문서를, 기업 확인(KYB) 이벤트 카탈로그는 KYB webhook 문서를 참고하세요.

다음 단계

세션 생성

사용자 인증 또는 기업 확인(KYB)을 시작합니다.

세션 조회

결정 결과를 가져옵니다. 두 종류 모두 지원합니다.

세션 목록

session_kind로 필터링합니다.

상태 업데이트

승인, 거부, 검토, 재제출을 처리합니다.

PDF 생성

종류별 PDF 보고서를 생성합니다.

공유 및 가져오기

앱 간에 세션을 옮깁니다.
마지막 수정일 2026년 11월 7일