API가이드

마이데이터 참여자별 API 처리 절차

3-1. 사전준비 1) 기관정보 등록(마이데이터사업자/정보제공자/중계기관/통합인증기관)

① 종합포털의 절차에 따라 회원가입 및 기관정보(기관명, TLS 인증서 정보, 도메인명 등) 등록

- 종합포털은 기관코드를 발급(따라서 중계기관 및 중계기관을 이용하는 기관도 종합포털에 기관 등록 필요)

TLS 인증서 정보 등록

기관간 상호인증, 데이터 암호화 송‧수신을 위해 기관들은 mutual TLS를 적용하여야 하는데, 이를 위해 각 기관이 공인된 CA기관으로부터 발급받은 TLS 인증서(EV등급) 정보*를 종합포털에 등록

* TLS 인증서 내 SERIALNUMBER에 기재된 기관등록번호(사업자등록번호)를 등록함으로써, TLS 인증서를 추후 재발급받더라도 SERIALNUMBER가 동일한 경우 종합포털에 재등록 불필요

* 각 기관은 TLS 상호인증 시 SERIALNUMBER 검증 필요

② 마이데이터사업자, API를 직접 구축한 정보제공자 및 중계기관은 종합포털로부터 지원API 호출용 자격증명 및 지원API 제공용 자격증명을 발급받아, 기관 내 시스템등에 반영

- 지원API 호출용 자격증명

마이데이터사업자, 정보제공자 또는 중계기관이 지원API를 호출(종합포털이 API제공)하기 위한 접근토큰 발급 시 필요한 자격증명

- 지원API 제공용 자격증명

종합포털이 지원API를 호출(마이데이터사업자, 정보제공자 또는 중계기관이 API제공)하기 위한 접근토큰 발급 시 필요한 자격증명

③ API를 직접 구축한 정보제공자 및 중계기관은 종합포털로부터 통합인증 API 호출용 자격증명을 발급받아, 기관 내 시스템 등에 반영

- 통합인증 API 호출용 자격증명

정보제공자, 중계기관이 통합인증 API를 호출(통합인증기관이 API 제공)하기 위한 접근토큰 발급 시 필요한 자격증명

④ 통합인증기관은 종합포털로부터 지원 API 호출용 자격증명을 발급받아, 기관 내 시스템 등에 반영

2) 서비스정보 등록(마이데이터 사업자)

① 종합포털의 절차에 따라 서비스정보(서비스명, Callback URL 등) 등록

② 종합포털로부터 서비스 자격증명을 발급받아, 기관 내 시스템 등에 반영

- 서비스 자격증명

마이데이터사업자가 정보제공API를 호출(정보 제공자가 API제공)하기 위한 접근토큰 발급 시 필요한 자격증명

3) 종합포털과 접속 채널 등 설정(마이데이터사업자/정보제공자/중계기관/통합인증기관)

안전한 지원API 호출을 위해 마이데이터사업자,API를 직접 구축한 정보제공자, 중계기관 및 통합인증기관은 종합포털 IP 접근제어(방화벽 등록 등) 및 TLS 인증서 정보를 기관 내 시스템 등에 반영

4) 기관정보/서비스정보 수신(마이데이터사업자/데이터보유자/중계기관/통합인증기관)

① 마이데이터사업자, API를 직접 구축한 정보제공자 및 중계기관, 통합인증기관은 "지원API 호출용 자격증명"을 이용하여 종합포털에 OAuth 2.0 인증(지원-001 API 호출) 후 종합포털이 발급한 접근토큰을 획득

API ID 지원-001 API명(URI) /oauth/2.0/token
API 설명 지원API 호출을 위한 접근토큰 발급
API 제공자 종합포털
요청 정보 지원API 호출용 자격증명
응답 정보 기관정보

② 마이데이터사업자, API를 직접 구축한 정보제공자 및 중계기관은 발급받은 접근토큰을 이용하여 종합포털로부터 기관정보(지원-002 API 호출) 및 서비스정보(지원-003 API 호출) 수신

API ID 지원-002 API명(URI) /mgmts/orgs
API 설명 기관 정보 조회
API 제공자 종합포털
요청 정보 접근토큰, 조회 타임스탬프
응답 정보 현재 시점
API ID 지원-003 API명(URI) /mgmts/services
API 설명 마이데이터 사업자 서비스 정보 조회
API 제공자 종합포털
요청 정보 접근토큰, 조회 타임스탬프
응답 정보 서비스 정보

- 기관 또는 서비스 신규‧변경‧삭제 정보 반영을 위해 필요 시 본 API를 비정기적으로 호출하여야 함

- 다만 마이데이터 산업 초기에 빈번한 API 호출을 방지하기 위해 참여자들이 기관‧서비스 정보를 사전에 등록하는 기간‧절차를 마련할 필요

③ 통합인증기관은 발급받은 접근토큰을 이용하여 종합포털로부터 기관정보(지원-002 API 호출) 및 정보제공자/중계기관의 통합인증 API 호출용 자격증명(지원-005 API 호출) 수신

API ID 지원-002 API명(URI) /mgmts/orgs
API 설명 기관 정보 조회
API 제공자 종합포털
요청 정보 접근토큰, 조회 타임스탬프
응답 정보 기관정보
API ID 지원-005 API명(URI) /mgmts/ca_credentials
API 설명 통합인증 API 호출용 자격증명 조회
API 제공자 종합포털
요청 정보 접근토큰, 조회 타임스탬프
응답 정보 정보제공자 및 중계기관의 "통합인증 API 호출용 자격증명"정보
5) 통합인증 이용 준비 (마이데이터사업자/정보제공자/중계기관/통합인증기관)

① 마이데이터사업자, API를 직접 구축한 정보제공자 및 중계기관, 통합인증기관은 통합인증 참여시 각 기관 간의 역할 및 관계, 책임소재 등을 포함하는 "금융분야 마이데이터 통합인증 공동업무규약(가칭)" 참가

* "금융분야 마이데이터 통합인증 공동업무규약"은 협의 및 작성 중이며, 제정 완료시 별도 안내 예정

② 마이데이터사업자는 통합인증기관이 발급한 통합인증서(PKI)에 기반하여 통합인증을 수행할 수 있도록 전자서명 생성 모듈을 서비스 내에 설치(공동인증서)하거나, 외부의 전자서명 생성 모듈(그 외 인증서)을 호출하여 전자서명 생성을 요청할 수 있도록 연동 기능을 준비

통합인증서 종류별 전자서명 생성 모듈 제공·관리 주체
구 분 공동인증서 그 외 인증서
인증서 예시 범용, 은행/증권용 공동인증서 금융인증서, 그 외 별도 인증앱 등에 저장된 인증서
전자서명 생성 모듈 제공자 본인확인 및 인증 솔루션 기업* 등 해당 통합인증기관
관리 주체 마이데이터사업자 해당 통합인증기관
준비 필요사항 전자서명 생성 모듈** 설치 전자서명 생성 모듈 호출(연동) 준비

* 본인확인 및 인증 솔루션 기업들에게는 통합인증 절차 및 규격을 별도 안내 예정

** 통합인증에서는 여러 건의 전자문서에 대한 전자서명 기능(멀티 서명), 인증서 본인확인 요청을 위한 메시지 생성 기능 등이 필요하므로, 기존의 공인인증 모듈을 보유한 마이데이터사업자는 해당 기능의 포함 여부를 확인한 후에 필요 시 기능 개선 및 업데이트 필요

③ API를 직접 구축한 정보제공자 및 중계기관은 마이데이터사업자로부터 전송받은 정보주체 본인확인 목적의 전자서명을 본인확인 요청 메시지로 변환하여 통합인증기관으로 전송(본인확인 요청)하기 위한 본인확인 요청 모듈*과 개인신용정보 전송요구 목적의 전자서명을 검증하기 위한 전자서명 검증 모듈**을 설치 및 준비

* 본인확인 및 인증 솔루션 기업들에게는 통합인증 절차 및 규격을 별도 안내 예정

** 정보제공자 및 중계기관은 기 보유한 공인인증 모듈을 전자서명 검증 모듈로 활용 가능할 것으로 예상되며, 본인확인 요청 모듈의 경우에는 기존 공인인증서 본인확인서비스 모듈(S/W 모듈, 본인확인 요청용 인증서 등)을 활용(필요시 기능 업데이트) 또는 신규 마련 필요

④ 통합인증기관을 이용하여 통합인증을 수행하는 정보제공자 및 중계기관은 "통합인증 API 호출용 자격증명"을 이용하여 통합인증기관에 OAuth 2.0 인증(통합인증-001 API 호출) 후 통합인증기관이 발급한 접근토큰을 획득

6) 기관 간 접속 채널 등 설정(마이데이터사업자/정보제공자/중계기관/통합인증기관)

안전한 API 호출을 종합포털로부터 수신한 기관정보 및 서비스정보 등을 이용하여 IP 접근제어(방화벽 등록 등) 및 TLS 인증서 정보를 기관 내 시스템 등에 반영

구분 접속 채널 등 설정 필요 대상 기관
마이데이터 사업자 정보제공자
(API 직접 구축)
중계기관 통합인증기관
마이데이터사업자 O* O O
정보제공자
(API 직접 구축)
O O
중계기관 O O
통합인증기관 O O

* 마이데이터 서비스 가입현황 조회를 위해 필요 예상 (추후 검토 후 반영)

3.2 개인신용정보 전송요구‧변경‧철회

개인신용정보 전송요구는 정보주체 인증방식인 개별인증 및 통합인증에 따라 절차가 상이하여 각각을 구분하여 설명함

3.2.1 개별인증 시 3.2.1.1 개인신용정보 전송요구 또는 전송요구 변경

정보주체가 개별인증 방식을 통하여 정보제공자로 하여금 본인의 개인신용정보를 마이데이터사업자에게 전송해줄 것을 요구하기 위해서는 다음과 같은 절차를 거침

ⓐ 인가코드 발급

- 정보주체가 정보제공자에게 본인임을 개별인증을 통해 인증하고, 전송요구할 자산을 선택하여 전송요구권(신청 또는 변경)을 행사

- 정보제공자는 인증 및 전송요구가 성공적으로 완료되면 인가코드를 발급하여 마이데이터사업자에게 전달

ⓑ 접근토큰 발급

- 마이데이터사업자는 인가코드를 이용하여 정보제공자에게 접근토큰 발급을 요청

- 정보제공자는 정보주체의 전송요구 내역을 기반으로 권한(scope)을 설정하고 마이데이터사업자에게 접근토큰을 발급

ⓒ 개인신용정보 전송요구 내역 조회

- 마이데이터사업자는 발급된 접근토큰을 이용하여 전송요구 내역을 조회

ⓐ 인가코드 발급 api 가이드

① 정보주체 : 회원가입 후 해당 마이데이터사업자의 서비스앱에 로그인하여 전송요구할 정보 제공자를 선택

② 마이데이터사업자 : 인가코드 발급을 요청(개별인증-001 API 호출)

API ID 개별인증-001 API명(URI) /oauth/2.0/authorize
API 설명 인가코드 발급(정보제공API 호출에 필요한 접근토큰 발급 시 필요)
API 제공자 정보제공자
요청 정보 지원API 호출용 자격증명
응답 정보 인가코드 (⑧에서 회신)

③ 정보제공자 : 개별인증을 위한 인증화면을 웹뷰 등으로 제공

④ 정보주체 : 제공된 개별인증 화면을 통해 인증을 수행

⑤ 정보제공자 : 전달받은 인증정보 검증 등 개별인증 수행

⑥ 정보제공자 : 개인신용정보 전송요구 또는 전송요구 변경 화면을 웹뷰 등으로 제공

- 정보제공자는 신용정보법 제33조의2제5항에 의거하여 정보주체가 아래의 내용을 특정할 수 있도록 화면 구성 필요

특정 사항 정보주체 선택 항목
정기적 전송을 요구하는지
여부 및 요구 시 그 주기
  • 정기적 전송 요구 여/부 선택
  • 주기
전송요구의 종료시점
  • 전송요구의 종료시점
전송을 요구하는 목적
  • 전송을 요구하는 목적
전송을 요구하는 개인신용정보의 보유기간
  • 마이데이터사업자가 수집한 정보를 보유할 수 있는 기간
전송을 요구하는 개인신용정보
  • 업권별 상이 (상세내용은 하단 참조)

- 업권별 "전송을 요구하는 개인신용정보"제공 화면은 "2.2 인증규격 - 3 권한(scope)"의 전송요구 scope를 참고하여 구성 필요

- 전송요구 변경 시에는 기존 전송요구 시 정보주체가 선택했던 내역을 화면에 반영 필요

⑦ 정보주체 : 제공된 개인신용정보 전송요구 화면을 통해 전송요구 내역 선택 및 정보제공자에게 전송

⑧ 정보제공자 : 전송요구 내역을 저장하고, 인가코드를 생성하여 state(상태값)와 함께 회신(②에서 호출한 개별인증-001 API에 대한 회신)

⑨ 마이데이터사업자 : state(상태값) 검증 후 리다이렉트

ⓑ 접근토큰 발급
개발자 가이드 설명

마이데이터사업자 : 정보 제공자로부터 전달받은 인가코드 및 종합포털로부터 발급받은 "서비스 자격증명"(client_id, client_secret) 등을 이용하여 정보제공자가 발급한 접근토큰을 획득(개별인증-002 API 호출)

API ID 개별인증-002 API명(URI) /oauth/2.0/token
API 설명 정보제공API 호출을 위한 접근토큰 발급
API 제공자 정보제공자
요청 정보 인가코드, 서비스 자격증명, redirect_URI 등
응답 정보 접근토큰, scope 등

- 마이데이터사업자가 다음 단계인 "개인신용정보 전송요구 내역 조회"를 수행하기 위해서는 scope에 해당 업권의 "자산목록 scope"가 포함되어 있어야 함 (2.2-3 참조)

개인신용정보 전송요구 내역 조회

1) 개별인증의 특성상 마이데이터사업자는 전송요구 내역을 알 수 없어 정보제공자를 대상으로 전송요구 내역 조회 필요

- 개별인증의 경우 정보제공자가 제공하는 개인신용정보 전송요구 화면을 통해 정보주체가 직접 정보제공자에게 전송을 요구하기 때문에 현시점에서 마이데이터사업자는 전송요구 내역을 알 수 없음

특정 사항 조회 API
정기적 전송을 요구하는지 여부 및 요구 시 그 주기
  • 업권 공통
  • 정보제공-공통-002 API 호출
전송요구의 종료시점
전송을 요구하는 목적
전송을 요구하는 개인신용정보의 보유기간
전송을 요구하는 개인신용정보
  • 업권별 상이 (상세내용은 하단 참조)

1. 마이데이터사업자는 "전송을 요구하는 개인신용정보"를 제외한 개인신용정보 전송내역 특정 사항들을 정보제공자로부터 회신(정보제공-공통-002 API 호출)

API ID 정보제공-공통-002 API명(URI) /consents
API 설명 개인신용정보 전송요구 특정사항 회신
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 정기적 전송을 요구하는지 여부 및 요구 시 그 주기, 전송요구의 종료시점, 전송을 요구하는 목적, 전송을 요구하는 개인신용정보의 보유기간

2. 마이데이터사업자는 일부 "전송을 요구하는 개인신용정보"를 접근토큰 발급 시 회신받은 scope를 통해 확인 가능

업권 전송대상
분류
scope 전송요구 내역
확인 가능 여부
비고
은행 계좌 정보 bank.deposit 불가 scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
투자상품 정보 bank.invest
대출상품 정보 bank.loan
신탁/ISA상품 정보 bank.isa
개인형IRP 정보 bank.irp
DB 정보 bank.db 가능 "bank.db"가 scope에 포함된 경우: db정보를 전송요구를 했음을 의미
DC 정보 bank.dc 불가 scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
카드 카드 정보 card.card 불가 scope만으로는 정보주체가 어떤 카드번호를 선택했는지 확인 불가
선불카드 정보 card.prepaid 불가 scope만으로는 정보주체가 어떤 카드번호를 선택했는지 확인 불가
포인트 정보 card.point 가능 "card.point"가 scope에 포함된 경우 : 포인트 정보를 전송요구 했음을 의미
청구 및 결제정보 card.bill 가능 "card.bill"이 scope에 포함된 경우 : 청구 및 결제 정보를 전송요구 했음을 의미
대출상품 정보 card.loan 가능 "card.loan"이 scope에 포함된 경우 : 대출상품 정보를 전송요구 했음을 의미
금융
투자
계좌 정보 invest.account 불가 scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
개인형 IRP정보 invest.irp
DB 정보 invest.db 가능 "invest.db"가 scope에 포함된 경우: db정보를 전송요구를 했음을 의미
DC 정보 invest.dc 불가 scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
보험 보험 정보 insu.insurance 불가 scope만으로는 정보주체가 어떤 증권번호를 선택했는지 확인 불가
대출상품정보 insu.loan scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
개인형 IRP 정보 insu.irp scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
피보험자 보험 정보 insu.insured scope만으로는 정보주체가 어떤 증권번호를 선택했는지 확인 불가
DB 정보 insu.db 가능 "invest.db"가 scope에 포함된 경우: db정보를 전송요구를 했음을 의미
DC 정보 insu.dc 불가 scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
전자
금융
전자지급수단
정보
efin.account 불가 scope만으로는 정보주체가 어떤 전자지급수단을 선택했는지 확인 불가
할부
금융
대출상품
또는
운용리스 정보
capital.loan 불가 scope만으로는 정보주체가 어떤 계좌번호를 선택했는지 확인 불가
보증
보험
보증보험 정보 ginsu.insurance 불가 scope만으로는 정보주체가 어떤 증권번호를 선택했는지 확인 불가
통신 통신 정보 telecom.mgmt 불가 scope만으로는 정보주체가 어떤 통신 계약을 선택했는지 확인 불가
P2P P2P 대출 정보 p2p.leading 불가 scope만으로는 정보주체가 어떤 대출 계약을 선택했는지 확인 불가
인수채권 인수채권/금전대부 정보 bond.bond 불가 scope만으로는 정보주체가 어떤 인수채권/금전대부 자산을 선택했는지 확인 불가
대부 인수채권/금전대부 정보 usury.bond 불가 scope만으로는 정보주체가 어떤 인수채권/금전대부 자산을 선택했는지 확인 불가

3. 마이데이터사업자는 scope로 전송요구 내역 확인이 불가한"전송을 요구하는 개인신용정보"내역을 정보제공자로부터 회신 (자산별 전송요구 여부(is_consent) 값을 통해 전송요구 내역 확인 가능)

(은행) 계좌 목록 조회 API 및 개인형IRP 계좌 목록 조회 API 호출

API ID 은행-001 API명(URI) /accounts
API 설명 정보주체가 보유한 계좌(수신계좌, 투자상품계좌, 대출상품계좌) 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계좌별 계좌번호, 전송요구 여부, 상품명, 계좌구분, 계좌상태 등
API ID IRP-001 API명(URI) /irps
API 설명 정보주체가 보유한 개인형IRP 계좌 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 개인형IRP 계좌별 계좌번호, 전송요구 여부, 상품명, 계좌상태 등
API ID 선불-001 API명(URI) /prepaid
API 설명 정보주체가 가입한 선불카드 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 선불카드별 식별자, 전송요구 여부, 상품명, 발급일자/기명일자 등
API ID DC-001 API명(URI) /dc
API 설명 DC형 퇴직연금정보 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 상품명, 상품관리번호, 전송요구 여부

(카드) 카드 목록 조회 API 호출

API ID 카드-001 API명(URI) /cards
API 설명 정보주체가 보요한 카드 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 카드별 카드 식별자, 카드번호, 전송요구 여부, 상품명, 본인/가족구분 등
API ID 선불-001 API명(URI) /prepaid
API 설명 정보주체가 가입한 선불카드 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 카드별 카드 식별자, 전송요구 여부, 상품명, 발급일자/기명일자 등

(금융투자) 계좌 목록 조회 API 및 개인형IRP 계좌 목록 조회 API 호출

API ID 금투-001 API명(URI) /accounts
API 설명 정보주체가 보유한 계좌 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계좌별 계좌번호, 전송요구 여부, 상품명, 계좌구분, 계좌상태 등
API ID 카드-001 API명(URI) /cards
API 설명 정보주체가 보유한 카드 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 카드별 카드 식별자, 카드번호, 전송요구 여부, 상품명, 본인/가족구분 등
API ID IRP-001 API명(URI) /irps
API 설명 정보주체가 보유한 개인형IRP 계좌 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 개인형IRP 계좌별 계좌번호, 전송요구 여부, 상품명, 계좌상태 등
API ID DC-001 API명(URI) /dc
API 설명 DC형 퇴직연금정보 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 상품명, 상품관리번호, 전송요구 여부

(보험) 보험 목록 조회 API, 대출상품 목록 조회 API 및 개인형IRP 계좌 목록 조회 API 호출

API ID 보험-001 API명(URI) /insurances
API 설명 정보주체가 보유한 보험상품 계약 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계약별 증권번호, 전송요구 여부, 상품명, 보험종류 구분, 계약상태 등
API ID 보험-008 API명(URI) /loans
API 설명 정보주체가 계약한 대출상품 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계약별 계좌번호, 전송요구 여부, 상품명 등
API ID 보험-013 API명(URI) /insured
API 설명 정보주체가 보유한 보험상품 계약 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계약별 증권번호, 전송요구 여부, 상품명, 보험종류 구분 등
API ID IRP-001 API명(URI) /irps
API 설명 정보주체가 보유한 개인형IRP 계좌 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 개인형 IRP 계좌별 계좌번호, 전송요구 여부, 상품명, 계좌상태 등
API ID DC-001 API명(URI) /dc
API 설명 DC형 퇴직연금정보 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 상품명, 상품관리번호,전송요구 여부, 등

(전자금융) 전자지급수단 목록 조회 API 호출

API ID 전금-001 API명(URI) /prepaid
API 설명 정보주체가 가입한 전자지급수단 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 전자지급수단별 식별값, 전송요구 여부, 계정상태, 결제수단 등록 여부 등
API ID 전금-101 API명(URI) /paid
API 설명 정보주체가 가입한 계정 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 계정 식별값, 전송요구 여부, 결제수단 등록 여부 등

(할부금융) 계좌 목록 조회 API 호출

API ID 할부금융-001 API명(URI) /loans
API 설명 정보주체가 보유한 계좌 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계좌별 계좌번호, 전송요구 여부, 상품명, 계좌구분 등

(보증보험) 보증보험 목록 조회 API 호출

API ID 보증보험-001 API명(URI) /insurances
API 설명 정보주체가 보유한 보증보험 계약 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계약별 증권번호, 전송요구 여부, 상품명, 보험종류 구분 등

(통신) 통신 계약 목록 조회 API 호출

API ID 통신-001 API명(URI) /telecoms
API 설명 정보주체가 가입한 통신 서비스 계약 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계약별 계약관리번호, 전송요구 여부, 가입번호, 통신구분, 계약상태 등

(P2P) P2P 대출 목록 조회 API 호출

API ID P2P-001 API명(URI) /lendings
API 설명 정보주체가 가입한 P2P 대출 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 보유 계약별 대출계약번호, 전송요구 여부, 상품명, 상품유형 등

(인수채권/대부) 인수채권/금전대부 목록 조회 API 호출

API ID 채권-001 API명(URI) /bonds
API 설명 정보주체가 가입한 인수채권/금전대부 목록 조회
API 제공자 정보제공자
요청 정보 접근토큰
응답 정보 채권번호, 전송요구 여부, 기봔구분, 채권인수일(최초대출일) 등
3.2.1.2 개인신용정보 전송요구 철회

정보주체가 마이데이터사업자의 서비스앱을 통해 전송요구를 철회하는 경우, 마이데이터사업자는 해당 정보제공자에게 접근토큰을 폐기할 것을 즉시 요청(개별인증-004 API 호출)

API ID 개별인증-004 API명(URI) /oauth/2.0/revoke
API 설명 접근토큰 폐기
API 제공자 정보제공자
요청 정보 폐기하고자 하는 토큰, 자격증명 등
응답 정보 -
3.2.2 통합인증 시
통합인증 방식 개요

통합인증방식 : 정보주체가 마이데이터 서비스를 이용하기 위해, 통합인증 기관으로부터 발급받은 통합인증 수단을 이용하여 1회 인증으로 다수 정보제공자에게 개인신용정보 전송요구권 행사 및 인증을 동시에 수행하는 방식

통합인증기관 : 다수 정보제공자가 정보주체를 공통적으로 식별 및 인증하는데 필요한 식별정보(정보통신망법 하위 고시의 ‘연계정보(CI)’)를 적법하게 제공 가능한 기관 중에 충분한 보안 수준 등을 갖춰 통합인증기관으로 참여한 기관

* 정보통신망법상 인증서 본인확인기관(예: 舊 공인인증기관 등)이 해당하며, 향후 적법하게 CI를 제공할 수 있는 전자서명법상 운영기준의 준수 사실을 인정받은 전자서명인증사업자 등으로 통합인증기관의 범위를 확대 예정

통합인증수단, 통합인증서 : 통합인증기관으로 참여한 인증서 본인확인기관이 발급한 인증서 본인확인수단(공동인증서(범용, 은행, 증권), 금융인증서 등)

3.2.2.1 개인신용정보 전송요구 또는 전송요구 변경

정보주체가 통합인증 방식을 통하여 정보제공자로 하여금 본인의 개인신용정보를 마이데이터사업자에게 전송해줄 것을 요구하기 위해서는 다음과 같은 절차를 거침

ⓐ 접근토큰 발급(자산목록 조회 목적)
  • 마이데이터사업자는 정보제공자 선택화면을 제공
  • 정보주체는 정보제공자 선택화면에서 개인신용정보 전송을 요구하고자 하는 정보제공자를 선택 (복수 개 선택 가능)
  • 정보주체는 보유 자산목록에 대한 전송요구권을 행사하기 위해 통합인증수단을 이용하여 위에서 선택한 정보제공자별로 인증정보(전송요구내역 등에 대한 전자서명 값 1종, 본인확인 목적의 개인정보제공 및 활용 동의에 대한 전자서명 값 1종)를 생성
  • 마이데이터사업자는 인증정보를 이용하여 각 정보제공자에게 자산목록 조회 권한("자산목록 scope")에 대한 접근토큰 발급을 요청
  • 정보제공자는 마이데이터사업자에게 접근토큰을 발급
ⓑ 보유 자산목록 조회
  • 마이데이터사업자는 발급된 접근토큰을 이용하여 각 정보제공자로부터 정보주체가 보유한 자산목록을 조회
ⓒ 접근토큰 발급(자산별 개인신용정보 조회 목적)
  • 마이데이터사업자는 정보주체가 전송요구(또는 전송요구 변경)할 자산을 선택할 수 있도록 자산 선택화면을 제공
  • 정보주체는 자산을 선택하고 자산별 개인신용정보에 대한 전송요구권을 행사하기 위해 통합인증수단을 이용하여 위에서 선택한 정보제공자별로 인증정보(전송요구내역 등에 대한 전자서명 값)를 생성
  • 마이데이터사업자는 인증정보를 이용하여 각 정보제공자에게 접근토큰 발급을 요청
  • 정보제공자는 정보주체의 전송요구 내역을 기반으로 권한(scope)을 설정하고 마이데이터사업자에게 접근토큰을 발급

※ 통합인증 방식에서는 개별인증 절차 중 '1인가코드 발급', '3개인신용정보 전송요구 내역 조회' 절차가 불필요

ⓒ 접근토큰 발급(자산목록 조회 목적) 개발 가이드

① (정보주체) 마이데이터사업자 회원가입 후 해당 마이데이터사업자의 서비스앱에 로그인하여 인증방식으로 통합인증을 선택

② (정보주체) 마이데이터 서비스앱을 통해 통합인증을 위해 필요한 인증 이용 약관(개인정보 제공 및 활용 동의약관* 등)을 확인 및 동의

* 정보통신망법 상 인증서 본인확인을 수행하는데 필요

- 마이데이터사업자는 서비스앱을 통해 인증 이용 동의약관을 제공 필요

※ 인증 이용동의약관의 내용 구성은 통합인증기관 등과 협의 진행 중

③ (정보주체) 마이데이터 서비스앱을 통해 전송요구할 대상 정보제공자를 선택하고, 전송요구 내역을 특정(선택)

- 마이데이터사업자는 서비스앱을 통해 신용정보법 제33조의2제5항에 의거하여 정보주체가 아래의 내용을 특정할 수 있도록 화면을 구성 및 제공 필요

특정 사항 정보주체 선택 항목
정기적 전송을 요구하는지 여부 및 요구 시 그 주기
  • 정기적 전송 요구 여/부 선택
  • 주기
전송요구의 종료시점
  • 전송요구의 종료시점
전송을 요구하는 목적
  • 전송을 요구하는 목적
전송을 요구하는 개인신용정보의 보유기간
  • 마이데이터사업자가 수집한 정보를 보유할 수 있는 기간
전송을 요구하는 개인신용정보
  • 업권별 상이 (상세내용은 하단 참조)

※ 전송주기, 종료시점 등 특정 사항 관련 상세 기준은 서비스분과의 협의 진행 중

- 업권별 "전송을 요구하는 개인신용정보"제공 화면은 "2.2 - ③ 권한(scope)"를 참고하여 구성 필요

- 본 단계는 정보주체가 보유한 자산목록을 조회하는데 필요한 접근토큰을 발급하는 단계이므로 "자산목록 scope"만을 고려 필요

④ (마이데이터사업자) 인증 이용 동의, 전송요구내역에 대하여 정보주체가 통합인증수단을 이용하여 전자서명을 생성할 수 있도록 인증 모듈*을 호출(전자서명 요청)**

* 통합인증수단이 공동인증서인 경우에는 마이데이터 서비스앱 내에 포함된 전자서명 기능의 인증 모듈을 호출하며, 그 이외의 인증수단의 경우에는 해당 인증기관 등이 제공하는 인증 모듈을 호출

** 1회 호출로 정보주체가 선택한 각 정보제공자별로 인증 이용 동의(본인확인 목적의 개인 정보제공 및 활용 동의), 전송요구내역에 대한 전자서명을 각각(2건) 생성 요청

※ 전송요구내역에 대한 표준 규격과 인증 모듈의 유통 방안 등은 협의 진행 중

전자서명 요청 메시지 예시

[정보제공자 A 기관 코드 : 인증 이용 동의* : 전송요구내역** ], ...

[ 정보제공자 N 기관 코드 : 인증 이용 동의 : 전송요구내역 ]

* 본인확인 목적의 개인정보제공 및 활용 동의

** 통합인증수단이 공동인증서인 경우에는 전송요구내역의 원문을 전송하며, 그 이외의 인증수단의 경우에는 해당 인증기관의 규격에 따라 전송요구내역의 원문 또는 해시(hash) 값을 전송 가능

⑤ (정보주체) 인증 이용 동의, 전송요구내역에 대한 전자서명 생성을 위해 인증서 비밀번호 등을 입력

⑥ (마이데이터사업자) 인증 모듈 등으로부터 인증 이용 동의, 전송요구내역에 대한 전자서명 결과를 수신

전자서명 응답 메시지 예시

[정보제공자 A 기관 코드 : 전자서명(인증 이용 동의)* : 전자서명(전송요구내역*)],...

[정보제공자 N 기관 코드 : 전자서명(인증 이용 동의) : 전자서명(전송요구내역)]

* 전자서명 결과 값의 규격은 "통합인증-002 API" 규격 참조

⑦ (마이데이터사업자) 전자서명 결과 값과 종합포털로부터 발급받은 "서비스 자격증명"(client_id, client_secret) 등을 이용하여 각 정보제공자에게 병렬적으로 접근토큰을 요청(통합인증-002 API)

API ID 통합인증-002 API명(URI) /oauth/2.0/token
API 설명 자산목록 조회 API, 정보제공API 호출을 위한 접근토큰 발급
API 제공자 정보제공자
요청 정보 서비스 자격증명, 전자서명(인증 이용 동의), 전자서명(전송요구내역) 등
응답 정보 접근토큰, scope 등

- 마이데이터사업자가 다음 단계인 "보유 자산목록 조회"를 수행하기 위해서는 scope에 해당 업권의 "자산목록 scope"만 포함되어 있어야 함

(2.2-③ 참조)

⑧ (정보제공자) 전송요구내역에 대한 전자서명 결과 값을 검증

⑨ (정보제공자) 인증 이용 동의에 대한 전자서명 결과 값과 통합인증기관으로부터 발급받은 "접근토큰(통합인증-001 호출 결과)" 등을 이용하여 통합인증기관에 본인확인(CI 정보 등)을 요청(통합인증-003 API)

API ID 통합인증-003 API명(URI) /ca_verification
API 설명 통합인증기관에 정보주체에 대한 본인확인(CI 정보 등)을 요청
API 제공자 통합인증기관
요청 정보 접근토큰, 전자서명(인증 이용 동의) 등
응답 정보 CI 정보 등

⑩ (통합인증기관) 인증 이용 동의에 대한 전자서명 결과 값을 검증하고, 그 결과로서 본인확인 결과(CI 등)를 정보제공자에게 제공(⑨에 대한 응답)

⑪ (정보제공자) 전송요구내역에 대한 전자서명 결과 값, 통합인증기관을 통한 본인확인 결과를 토대로 정보주체를 인증한 후에 해당 전송요구에 대한 접근토큰을 발급하여 마이데이터 사업자에게 제공(⑦에 대한 응답)

ⓑ 보유 자산목록 조회

○ (마이데이터사업자) 정보제공자로부터 획득한 접근토큰을 통해 다음의 업권별 자산목록 조회 관련 API를 호출하여 정보주체가 보유한 자산목록을 조회

- 업권별 자산목록 조회 API는 '3.2.1.1. - 3 - ③' 과 동일

ⓒ 접근토큰 발급(자산별 개인신용정보 조회 목적)

※ 본 단계는 '1 접근토큰 발급(자산목록 조회 목적)'와 대체로 동일하므로 차이점이 존재하는 일부 단계(③, ⑦)를 중심으로 안내

③ (정보주체) 비스앱을 통해 전송요구할 대상 정보제공자를 선택하고, 전송요구 내역을 특정(선택)

- 마이데이터사업자는 서비스앱을 통해 신용정보법 제33조의2제5항에 의거하여 정보주체가 아래의 내용을 특정할 수 있도록 화면을 구성 및 제공 필요

특정 사항 조회 API
정기적 전송을 요구하는지 여부 및 요구 시 그 주기
  • 정기적 전송 요구 여/부 선택
  • 주기
전송요구의 종료시점
  • 전송요구의 종료시점
전송을 요구하는 목적
  • 전송을 요구하는 목적
전송을 요구하는 개인신용정보의 보유기간
  • 마이데이터사업자가 수집한 정보를 보유할 수 있는 기간
전송을 요구하는 개인신용정보
  • 업권별 상이 (상세내용은 하단 참조)

※ 전송주기, 종료시점 등 특정 사항 관련 상세 기준은 서비스분과와 협의 진행 중

- 업권별 "전송을 요구하는 개인신용정보"제공 화면은 정보주체가 전송요구하고자 하는 자산을 특정(선택)할 수 있도록 '2 보유 자산목록 조회'를 통해 수집한 정보주체의 보유 자산목록를 활용하여 구성

⑦ (마이데이터사업자) 합포털로부터 발급받은 "접근토큰(통합인증-001 호출 결과)" 등을 이용하여 각 정보제공자에게 병렬적으로 접근토큰을 요청(통합인증-002 API)

API ID 통합인증-002 API명(URI) /oauth/2.0/token
API 설명 자산목록 조회 API, 정보제공API 호출을 위한 접근토큰 발급
API 제공자 정보제공자
요청 정보 서비스 자격증명, 전자서명(인증 이용 동의), 전자서명(전송요구내역) 등
응답 정보 접근토큰, scope 등

- 마이데이터사업자는 정보주체가 선택한 자산에 대한 개인신용정보를 조회하기 위해 scope에 해당 업권의"자산목록 scope"이외에도 "정보제공 scope"가 포함되어 있어야 함 (2.2- 3 참조)

3.2.2.2 개인신용정보 전송요구 철회

"3.2.1.2. 개인신용정보 전송요구 철회"와 동일

3.3 개인신용정보 전송 □ 정보주체 개입 (비정기적 전송)
  • ① (정보주체) 마이데이터사업자의 서비스앱에 접속하여 자산정보, 거래내역 등 조회
  • ② (마이데이터사업자) 정보제공자로부터 발급받은 접근토큰을 이용하여 업권별 정보제공 API를 호출
  • ③ (정보제공자) 접근토큰 유효성과 요청 대상 정보의 정당성을 검증한 후 마이데이터사업자가 요청한 정보를 회신
□ 정보주체 미개입 (정기적 전송)

① (마이데이터사업자) 정보제공자로부터 발급받은 접근토큰을 이용하여 업권별 정보제공 API를 호출

- 정기적 전송 여부를 구분하기 위한 헤더 값("x-api-type: scheduled")을 반드시 설정

- 정기적 전송주기는 송·수신되는 정보의 특성에 따라 기본정보 또는 추가정보로 분류(API별 정기적 전송주기 분류 기준은 제4장 참조)

분 류 설 명 기본주기
기본 생성/수정/삭제가 빈번하게 발생하지 않는 정보
(예: 상품정보, 가입정보 등)를 송·수신하는 API
주 1회
추가 생성/수정/삭제가 빈번하게 발생하는 정보
(예: 잔액, 거래내역 등)를 송·수신하는 API
일 1회

② (정보제공자) 접근토큰 유효성과 요청 대상 정보의 정당성을 검증한 후 마이데이터사업자가 요청한 정보를 회신