portone_server_sdk.identity_verification

Contents

portone_server_sdk.identity_verification#

Classes

ConfirmIdentityVerificationBody

본인인증 확인을 위한 입력 정보

ConfirmIdentityVerificationResponse

본인인증 확인 성공 응답

FailedIdentityVerification

실패한 본인인증 내역

GetIdentityVerificationsBody

본인인증 내역 다건 조회를 위한 입력 정보

GetIdentityVerificationsResponse

본인인증 내역 다건 조회 성공 응답 정보

IdentityVerificationFailure

본인인증 실패 정보

IdentityVerificationFilterCustomerInput

본인인증 다건 조회를 위한 고객 정보 입력 정보

IdentityVerificationFilterInput

본인인증 다건 조회를 위한 입력 정보

IdentityVerificationRequestedCustomer

요청 시 고객 정보

IdentityVerificationSortInput

본인인증 내역 다건 조회 시 정렬 조건

IdentityVerificationVerifiedCustomer

인증된 고객 정보

ReadyIdentityVerification

준비 상태의 본인인증 내역

ResendIdentityVerificationResponse

본인인증 요청 재전송 성공 응답

SendIdentityVerificationBody

본인인증 요청을 위한 입력 정보

SendIdentityVerificationBodyCustomer

본인인증 요청을 위한 고객 정보

SendIdentityVerificationResponse

본인인증 요청 전송 성공 응답

VerifiedIdentityVerification

완료된 본인인증 내역

IdentityVerificationClient

Exceptions

exception portone_server_sdk.identity_verification.ConfirmIdentityVerificationError#

Bases: PortOneError

args#
with_traceback()#

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

message: str | None#
exception portone_server_sdk.identity_verification.GetIdentityVerificationError#

Bases: PortOneError

args#
with_traceback()#

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

message: str | None#
exception portone_server_sdk.identity_verification.GetIdentityVerificationsError#

Bases: PortOneError

args#
with_traceback()#

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

message: str | None#
exception portone_server_sdk.identity_verification.ResendIdentityVerificationError#

Bases: PortOneError

args#
with_traceback()#

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

message: str | None#
exception portone_server_sdk.identity_verification.SendIdentityVerificationError#

Bases: PortOneError

args#
with_traceback()#

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

message: str | None#
class portone_server_sdk.identity_verification.ConfirmIdentityVerificationBody#

Bases: object

본인인증 확인을 위한 입력 정보

store_id: str | None#

상점 아이디

접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 토큰에 담긴 상점 아이디를 사용합니다.

otp: str | None#

OTP (One-Time Password)

SMS 방식에서만 사용됩니다.

class portone_server_sdk.identity_verification.ConfirmIdentityVerificationResponse#

Bases: object

본인인증 확인 성공 응답

identity_verification: VerifiedIdentityVerification#

완료된 본인인증 내역

class portone_server_sdk.identity_verification.FailedIdentityVerification#

Bases: object

실패한 본인인증 내역

id: str#

본인인증 내역 아이디

requested_customer: IdentityVerificationRequestedCustomer#

요청 시 고객 정보

requested_at: str#

본인인증 요청 시점 (RFC 3339 date-time)

updated_at: str#

업데이트 시점 (RFC 3339 date-time)

status_changed_at: str#

상태 업데이트 시점 (RFC 3339 date-time)

failure: IdentityVerificationFailure#

본인인증 실패 정보

version: Literal['V1', 'V2'] | str#

포트원 버전

channel: SelectedChannel | None#

사용된 본인인증 채널

custom_data: str | None#

사용자 지정 데이터

class portone_server_sdk.identity_verification.GetIdentityVerificationsBody#

Bases: object

본인인증 내역 다건 조회를 위한 입력 정보

page: PageInput | None#

요청할 페이지 정보

미 입력 시 number: 0, size: 10 으로 기본값이 적용됩니다.

sort: IdentityVerificationSortInput | None#

정렬 조건

미 입력 시 sortBy: REQUESTED_AT, sortOrder: DESC 으로 기본값이 적용됩니다.

filter: IdentityVerificationFilterInput | None#

조회할 본인인증 내역 조건 필터

class portone_server_sdk.identity_verification.GetIdentityVerificationsResponse#

Bases: object

본인인증 내역 다건 조회 성공 응답 정보

items: list[FailedIdentityVerification | ReadyIdentityVerification | VerifiedIdentityVerification | dict]#

조회된 본인인증 내역 리스트

page: PageInfo#

조회된 페이지 정보

class portone_server_sdk.identity_verification.IdentityVerificationFailure#

Bases: object

본인인증 실패 정보

reason: str | None#

실패 사유

pg_code: str | None#

PG사 실패 코드

pg_message: str | None#

PG사 실패 메시지

class portone_server_sdk.identity_verification.IdentityVerificationFilterCustomerInput#

Bases: object

본인인증 다건 조회를 위한 고객 정보 입력 정보

name: str | None#

이름

birth_year: str | None#

출생 연도

birth_month: str | None#

출생월

birth_day: str | None#

출생일

phone_number: str | None#

전화번호

특수 문자(-) 없이 숫자로만 이루어진 번호 형식입니다.

gender: Literal['MALE', 'FEMALE', 'OTHER'] | str | None#

성별

class portone_server_sdk.identity_verification.IdentityVerificationFilterInput#

Bases: object

본인인증 다건 조회를 위한 입력 정보

store_id: str | None#

상점 아이디

Merchant 사용자만 사용가능하며, 지정되지 않은 경우 고객사 전체 본인인증 내역을 조회합니다.

time_range_field: Literal['REQUESTED_AT', 'VERIFIED_AT', 'FAILED_AT', 'STATUS_UPDATED_AT'] | str | None#

조회 기준 시점 유형

값을 입력하지 않으면 REQUESTED_AT으로 설정됩니다.

from_: str | None#

조회 기준 시점 범위의 시작

값을 입력하지 않으면 end의 90일 전으로 설정됩니다. (RFC 3339 date-time)

until: str | None#

조회 기준 시점 범위의 끝

값을 입력하지 않으면 현재 시점으로 설정됩니다. (RFC 3339 date-time)

identity_verification_id: str | None#

고객사 본인인증 아이디

V1 본인인증 건의 경우 `imp_uid`에 대응됩니다.

identity_verification_tx_id: str | None#

포트원 본인인증 시도 번호

V1 본인인증 건의 경우 `imp_uid`에 대응됩니다.

is_test: bool | None#

테스트 결제 필터링

statuses: list[Literal['READY', 'VERIFIED', 'FAILED'] | str] | None#

본인인증 상태 리스트

값을 입력하지 않으면 필터링이 적용되지 않습니다.

pg_tx_id: str | None#

PG사 본인인증 번호

pg_merchant_id: str | None#

PG 상점아이디

pg_providers: list[Literal['HTML5_INICIS', 'PAYPAL', 'PAYPAL_V2', 'INICIS', 'DANAL', 'NICE', 'DANAL_TPAY', 'JTNET', 'UPLUS', 'NAVERPAY', 'KAKAO', 'SETTLE', 'KCP', 'MOBILIANS', 'KAKAOPAY', 'NAVERCO', 'SYRUP', 'KICC', 'EXIMBAY', 'SMILEPAY', 'PAYCO', 'KCP_BILLING', 'ALIPAY', 'PAYPLE', 'CHAI', 'BLUEWALNUT', 'SMARTRO', 'SMARTRO_V2', 'PAYMENTWALL', 'TOSSPAYMENTS', 'KCP_QUICK', 'DAOU', 'GALAXIA', 'TOSSPAY', 'KCP_DIRECT', 'SETTLE_ACC', 'SETTLE_FIRM', 'INICIS_UNIFIED', 'KSNET', 'PINPAY', 'NICE_V2', 'TOSS_BRANDPAY', 'WELCOME', 'TOSSPAY_V2', 'INICIS_V2', 'KPN', 'KCP_V2', 'HYPHEN', 'EXIMBAY_V2'] | str] | None#

PG사 결제 모듈 리스트

값을 입력하지 않으면 PG사 결제 모듈 필터링이 적용되지 않습니다.

pg_companies: list[Literal['INICIS', 'NICE', 'KCP', 'DANAL', 'TOSSPAYMENTS', 'MOBILIANS', 'KICC', 'SMARTRO', 'DAOU', 'BLUEWALNUT', 'PAYPAL', 'ALIPAY', 'EXIMBAY', 'PAYMENTWALL', 'SETTLE', 'GALAXIA', 'NAVERPAY', 'KAKAOPAY', 'SMILEPAY', 'KAKAO', 'TOSSPAY', 'CHAI', 'PAYCO', 'PAYPLE', 'SYRUP', 'KSNET', 'WELCOME', 'JTNET', 'KPN', 'HYPHEN'] | str] | None#

PG사 리스트

값을 입력하지 않으면 PG사 필터링이 적용되지 않습니다.

carriers: list[Literal['SKT', 'KT', 'LGU', 'SKT_MVNO', 'KT_MVNO', 'LGU_MVNO'] | str] | None#

통신사 리스트

version: Literal['V1', 'V2'] | str | None#

포트원 버전

customer: IdentityVerificationFilterCustomerInput | None#

고객 정보

인증이 완료되지 않은 본인인증 내역의 경우 요청 시 고객 정보로, 인증이 완료된 본인인증 내역의 경우 인증된 고객 정보로 필터링합니다.

class portone_server_sdk.identity_verification.IdentityVerificationRequestedCustomer#

Bases: object

요청 시 고객 정보

id: str | None#

식별 아이디

name: str | None#

이름

phone_number: str | None#

전화번호

특수 문자(-) 없이 숫자로만 이루어진 번호 형식입니다.

birth_year: str | None#

출생연도

birth_month: str | None#

출생월

birth_day: str | None#

출생일

class portone_server_sdk.identity_verification.IdentityVerificationSortInput#

Bases: object

본인인증 내역 다건 조회 시 정렬 조건

by: Literal['REQUESTED_AT', 'VERIFIED_AT', 'FAILED_AT', 'STATUS_UPDATED_AT'] | str | None#

정렬 기준 필드

어떤 필드를 기준으로 정렬할 지 결정합니다. 비워서 보낼 경우, REQUESTED_AT이 기본값으로 설정됩니다.

order: Literal['DESC', 'ASC'] | str | None#

정렬 순서

어떤 순서로 정렬할 지 결정합니다. 비워서 보낼 경우, DESC(내림차순)가 기본값으로 설정됩니다.

class portone_server_sdk.identity_verification.IdentityVerificationVerifiedCustomer#

Bases: object

인증된 고객 정보

name: str#

이름

id: str | None#

식별 아이디

operator: Literal['SKT', 'KT', 'LGU', 'SKT_MVNO', 'KT_MVNO', 'LGU_MVNO'] | str | None#

통신사

다날: 별도 계약이 필요합니다. KG이니시스: 제공하지 않습니다.

phone_number: str | None#

전화번호

특수 문자(-) 없이 숫자로만 이루어진 번호 형식입니다. 다날: 별도 계약이 필요합니다. KG이니시스: 항상 제공합니다.

birth_date: str | None#

생년월일 (yyyy-MM-dd)

포트원 V2 본인인증 건의 경우 항상 존재합니다. (yyyy-MM-dd)

gender: Literal['MALE', 'FEMALE', 'OTHER'] | str | None#

성별

다날: 항상 제공합니다. KG이니시스: 항상 제공합니다.

is_foreigner: bool | None#

외국인 여부

다날: 별도 계약이 필요합니다. KG이니시스: 항상 제공합니다.

ci: str | None#

CI (개인 고유 식별키)

개인을 식별하기 위한 고유 정보입니다. 다날: 항상 제공합니다. KG이니시스: 카카오를 제외한 인증사에서 제공합니다.

di: str | None#

DI (사이트별 개인 고유 식별키)

중복 가입을 방지하기 위해 개인을 식별하는 사이트별 고유 정보입니다. 다날: 항상 제공합니다. KG이니시스: 제공하지 않습니다.

class portone_server_sdk.identity_verification.ReadyIdentityVerification#

Bases: object

준비 상태의 본인인증 내역

id: str#

본인인증 내역 아이디

requested_customer: IdentityVerificationRequestedCustomer#

요청 시 고객 정보

requested_at: str#

본인인증 요청 시점 (RFC 3339 date-time)

updated_at: str#

업데이트 시점 (RFC 3339 date-time)

status_changed_at: str#

상태 업데이트 시점 (RFC 3339 date-time)

version: Literal['V1', 'V2'] | str#

포트원 버전

channel: SelectedChannel | None#

사용된 본인인증 채널

custom_data: str | None#

사용자 지정 데이터

class portone_server_sdk.identity_verification.ResendIdentityVerificationResponse#

Bases: object

본인인증 요청 재전송 성공 응답

class portone_server_sdk.identity_verification.SendIdentityVerificationBody#

Bases: object

본인인증 요청을 위한 입력 정보

channel_key: str#

채널 키

customer: SendIdentityVerificationBodyCustomer#

고객 정보

operator: Literal['SKT', 'KT', 'LGU', 'SKT_MVNO', 'KT_MVNO', 'LGU_MVNO'] | str#

통신사

method: Literal['SMS', 'APP'] | str#

본인인증 방식

store_id: str | None#

상점 아이디

접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 토큰에 담긴 상점 아이디를 사용합니다.

custom_data: str | None#

사용자 지정 데이터

bypass: dict | None#

PG사별 추가 파라미터 (“PG사별 연동 가이드” 참고)

class portone_server_sdk.identity_verification.SendIdentityVerificationBodyCustomer#

Bases: object

본인인증 요청을 위한 고객 정보

name: str#

이름

phone_number: str#

전화번호

특수 문자(-) 없이 숫자만 입력합니다.

ip_address: str#

IP 주소

고객의 요청 속도 제한에 사용됩니다.

id: str | None#

식별 아이디

identity_number: str | None#

주민등록번호 앞 7자리

SMS 방식의 경우 필수로 입력합니다.

class portone_server_sdk.identity_verification.SendIdentityVerificationResponse#

Bases: object

본인인증 요청 전송 성공 응답

class portone_server_sdk.identity_verification.VerifiedIdentityVerification#

Bases: object

완료된 본인인증 내역

id: str#

본인인증 내역 아이디

verified_customer: IdentityVerificationVerifiedCustomer#

인증된 고객 정보

requested_at: str#

본인인증 요청 시점 (RFC 3339 date-time)

updated_at: str#

업데이트 시점 (RFC 3339 date-time)

status_changed_at: str#

상태 업데이트 시점 (RFC 3339 date-time)

verified_at: str#

본인인증 완료 시점 (RFC 3339 date-time)

pg_tx_id: str#

본인인증 내역 PG사 아이디

pg_raw_response: str#

PG사 응답 데이터

version: Literal['V1', 'V2'] | str#

포트원 버전

channel: SelectedChannel | None#

사용된 본인인증 채널

custom_data: str | None#

사용자 지정 데이터

class portone_server_sdk.identity_verification.IdentityVerificationClient#

Bases: object

get_identity_verification(*, identity_verification_id: str) FailedIdentityVerification | ReadyIdentityVerification | VerifiedIdentityVerification | dict#

본인인증 단건 조회

주어진 아이디에 대응되는 본인인증 내역을 조회합니다.

Parameters:

identity_verification_id (str) – 조회할 본인인증 아이디

Raises:
  • GetIdentityVerificationError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

async get_identity_verification_async(*, identity_verification_id: str) FailedIdentityVerification | ReadyIdentityVerification | VerifiedIdentityVerification | dict#

본인인증 단건 조회

주어진 아이디에 대응되는 본인인증 내역을 조회합니다.

Parameters:

identity_verification_id (str) – 조회할 본인인증 아이디

Raises:
  • GetIdentityVerificationError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

get_identity_verifications(*, page: PageInput | None = None, sort: IdentityVerificationSortInput | None = None, filter: IdentityVerificationFilterInput | None = None) GetIdentityVerificationsResponse#

본인인증 내역 다건 조회

주어진 조건에 맞는 본인인증 내역들을 페이지 기반으로 조회합니다.

Parameters:
  • page (PageInput, optional) –

    요청할 페이지 정보

    미 입력 시 number: 0, size: 10 으로 기본값이 적용됩니다.

  • sort (IdentityVerificationSortInput, optional) –

    정렬 조건

    미 입력 시 sortBy: REQUESTED_AT, sortOrder: DESC 으로 기본값이 적용됩니다.

  • filter (IdentityVerificationFilterInput, optional) – 조회할 본인인증 내역 조건 필터

Raises:
  • GetIdentityVerificationsError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

async get_identity_verifications_async(*, page: PageInput | None = None, sort: IdentityVerificationSortInput | None = None, filter: IdentityVerificationFilterInput | None = None) GetIdentityVerificationsResponse#

본인인증 내역 다건 조회

주어진 조건에 맞는 본인인증 내역들을 페이지 기반으로 조회합니다.

Parameters:
  • page (PageInput, optional) –

    요청할 페이지 정보

    미 입력 시 number: 0, size: 10 으로 기본값이 적용됩니다.

  • sort (IdentityVerificationSortInput, optional) –

    정렬 조건

    미 입력 시 sortBy: REQUESTED_AT, sortOrder: DESC 으로 기본값이 적용됩니다.

  • filter (IdentityVerificationFilterInput, optional) – 조회할 본인인증 내역 조건 필터

Raises:
  • GetIdentityVerificationsError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

send_identity_verification(*, identity_verification_id: str, channel_key: str, customer: SendIdentityVerificationBodyCustomer, custom_data: str | None = None, bypass: dict, operator: Literal['SKT', 'KT', 'LGU', 'SKT_MVNO', 'KT_MVNO', 'LGU_MVNO'] | str, method: Literal['SMS', 'APP'] | str) SendIdentityVerificationResponse#

본인인증 요청 전송

SMS 또는 APP 방식을 이용하여 본인인증 요청을 전송합니다.

Parameters:
  • identity_verification_id (str) – 본인인증 아이디

  • channel_key (str) – 채널 키

  • customer (SendIdentityVerificationBodyCustomer) – 고객 정보

  • custom_data (str, optional) – 사용자 지정 데이터

  • bypass (dict, optional) – PG사별 추가 파라미터 (“PG사별 연동 가이드” 참고)

  • operator (IdentityVerificationOperator) – 통신사

  • method (IdentityVerificationMethod) – 본인인증 방식

Raises:
  • SendIdentityVerificationError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

async send_identity_verification_async(*, identity_verification_id: str, channel_key: str, customer: SendIdentityVerificationBodyCustomer, custom_data: str | None = None, bypass: dict, operator: Literal['SKT', 'KT', 'LGU', 'SKT_MVNO', 'KT_MVNO', 'LGU_MVNO'] | str, method: Literal['SMS', 'APP'] | str) SendIdentityVerificationResponse#

본인인증 요청 전송

SMS 또는 APP 방식을 이용하여 본인인증 요청을 전송합니다.

Parameters:
  • identity_verification_id (str) – 본인인증 아이디

  • channel_key (str) – 채널 키

  • customer (SendIdentityVerificationBodyCustomer) – 고객 정보

  • custom_data (str, optional) – 사용자 지정 데이터

  • bypass (dict, optional) – PG사별 추가 파라미터 (“PG사별 연동 가이드” 참고)

  • operator (IdentityVerificationOperator) – 통신사

  • method (IdentityVerificationMethod) – 본인인증 방식

Raises:
  • SendIdentityVerificationError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

confirm_identity_verification(*, identity_verification_id: str, otp: str | None = None) ConfirmIdentityVerificationResponse#

본인인증 확인

요청된 본인인증에 대한 확인을 진행합니다.

Parameters:
  • identity_verification_id (str) – 본인인증 아이디

  • otp (str, optional) –

    OTP (One-Time Password)

    SMS 방식에서만 사용됩니다.

Raises:
async confirm_identity_verification_async(*, identity_verification_id: str, otp: str | None = None) ConfirmIdentityVerificationResponse#

본인인증 확인

요청된 본인인증에 대한 확인을 진행합니다.

Parameters:
  • identity_verification_id (str) – 본인인증 아이디

  • otp (str, optional) –

    OTP (One-Time Password)

    SMS 방식에서만 사용됩니다.

Raises:
resend_identity_verification(*, identity_verification_id: str) ResendIdentityVerificationResponse#

SMS 본인인증 요청 재전송

SMS 본인인증 요청을 재전송합니다.

Parameters:

identity_verification_id (str) – 본인인증 아이디

Raises:
  • ResendIdentityVerificationError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우

async resend_identity_verification_async(*, identity_verification_id: str) ResendIdentityVerificationResponse#

SMS 본인인증 요청 재전송

SMS 본인인증 요청을 재전송합니다.

Parameters:

identity_verification_id (str) – 본인인증 아이디

Raises:
  • ResendIdentityVerificationError – API 호출이 실패한 경우

  • ValueError – 현재 SDK 버전에서 지원하지 않는 API 응답을 받은 경우