Skip to main content
Version: 1.0.0

이해하기

1. 연동 흐름 한눈에 보기

아래 Flow Chart를 통해 엔드 유저가 eKYC 인증을 완료하고 다시 서비스 화면으로 돌아오는 전체 흐름을 한눈에 확인할 수 있어요.

인증 토큰 발급하기

HMAC을 활용해 postMessage로 전달되는 인증 결과에 정보 무결성을 검증할 수 있어요.
HMAC 활용하기에서 자세한 내용을 확인해 보세요.

1) 역할별 설명

역할설명
엔드 유저고객사의 서비스를 이용하는 최종 사용자예요.
고객사 프론트엔드고객사 앱 또는 웹사이트의 사용자 화면(UI)을 말해요.
고객사 백엔드고객사 서버로, API 호출이나 인증 처리 등 시스템 로직을 담당해요.
유스비 eKYC 서버유스비 인증 서버로, Access Token 발급과 인증 처리를 담당해요.

2) 연동 절차 설명

  1. 엔드 유저가 고객사 서비스 화면에서 신원확인을 요청해요. (예: ‘신분증 인증하기’ 버튼 클릭 등)
  2. 고객사 프론트엔드는 먼저 당사가 유스비의 고객임을 인증 요청해야 해요. 이 때, eKYC 계약 시 전달받은 계정 정보(customer_id, id, key)를 사용하거나, Access Token을 발급받아 인증을 요청해요.
  3. 고객사가 유스비의 고객임이 인증되면, 고객사 프론트엔드에서 iframe 또는 WebView로 유스비 eKYC 서버를 호출해요.
  4. 인증이 종료되면 유스비 eKYC 서버에서 고객사 프론트엔드로 postMessage를 통해 인증 결과를 전달해요.
  5. 고객사 프론트엔드는 수신한 결과를 후처리함으로써 데이터를 처리하고 엔드 유저에게 보여질 화면을 표시해요.

2. 연동할 때 고려할 요소 살펴보기

eKYC는 고객사의 구현 방식에 맞춰 다양한 방법으로 연동할 수 있어요.
이 화면에서는 eKYC 인증을 진행할 때 고려해야 할 세 가지 핵심 요소를 안내할게요.

1) 인증 방식

고객사가 유스비의 고객임을 어떤 방식으로 인증할지 선택해야 해요.

방식설명
Credential

계정 정보(customer_id, id, key)를 하드코딩으로 전달하면 돼서 인증이 간편해요.

Access Token

서버에서 발급받은 Access Token만 전달해요. 발급된 토큰은 24시간만 유효하므로 보안성이 좋아요.

Q. 우리 서비스에는 어떤 인증 방식이 적합할까요?

A. 테스트나 PoC 단계에서는 별도 서버 작업 없이 빠르게 적용 가능한 Credential 방식이 편리해요.
실제 운영 환경에서는 보안성과 안정성이 중요한 만큼 Access Token 방식을 선택하는 것이 안전해요.

2) 필수 정보 입력 방식

엔드 유저의 이름, 생년월일, 휴대폰 번호, 이메일 등 필수 정보를 어디에서 입력받을지 결정해야 해요.
입력 받는 화면의 주체가 어디인지에 따라 인증 요청을 보낼 때 파라미터 전달 여부가 달라져요.

방식설명
고객사 자체 구현

고객사에서 직접 구현한 화면을 통해 엔드 유저 정보를 입력받는 경우예요.
(파라미터로 필수 정보 전달 필요)

유스비 화면 사용

유스비 eKYC 인증 화면에서 엔드 유저 정보를 입력받도록 위임하는 경우예요.
이 경우, 유스비 Admin에서 상태 설정을 변경해 주셔야 해요.
(파라미터로 필수 정보 전달 불필요)

Q. 우리 서비스는 엔드 유저의 필수 정보를 어떤 화면에서 받아야할까요?

A. 필수 정보 입력 화면을 자체적으로 운영할지, eKYC 화면에 위임할지에 따라 결정하면 됩니다.
고객사의 서비스 UI에 맞춰진 화면에서 엔드 유저의 필수 정보를 수집하고 싶다면, 고객사 자체 구현 화면에서 받으시면 돼요.
다만, 이 경우 인증 요청 시 엔드 유저의 필수 정보를 파라미터에 포함해 전달해 주셔야 해요.
반대로 고객사에서 입력 화면을 만들 필요 없이 유스비 eKYC 화면에서 대신 입력받고 싶다면, 유스비 화면에서 받으시면 돼요.
이 때에는 유스비의 Admin에서 ‘필수 정보 입력 화면 사용 여부’ 상태 설정 변경이 필요해요.
자세한 내용은 문서보고 따라하기 확인해 주세요.

3) 결과 수신 방식 (postMessage vs postMessage + API)

인증 결과를 프론트엔드에서 바로 받을지, 서버에서 조회할지 선택할 수 있어요.

방식수신 위치설명
postMessage프론트엔드

iframe 또는 WebView로 인증 결과 메시지를 받아요.

postMessage + API백엔드

postMessage로 전달받은 일부 값을 바탕으로, 유스비 서버에 결과 조회 API를 호출해요. 전체 데이터를 서버에서 안전하게 받아올 수 있어요.

※ API 방식은 reviewer account 발급이 필요해요. 유스비 담당자에게 별도로 요청해 주세요.

Q. 우리 서비스에서는 결과를 어떤 방식으로 받는 게 좋을까요?

A. 결과를 프론트엔드에서 바로 확인하기만 하면 된다면 postMessage 방식이 적합해요. 구현이 단순해 빠르게 적용할 수 있어요.
반대로 인증 결과를 자사 서버에서 안전하게 관리해야 하거나 보안 요건이 중요한 경우에는 postMessage + API 방식을 권장해요. 단, 이 경우에는 reviewer account 발급과 결과를 받아 처리할 수 있는 백엔드 서버 구현이 추가로 필요해요.

더 궁금한 내용이 있나요?에러 코드 및 대응
코드 샘플을 참고하세요eKYC Github
기술지원이 필요하신가요?이메일 보내기