LogoLogo
  • 샵바이 스킨 알아보기
    • 샵바이 스킨 설명서
    • 오로라 리액트(통합형) 스킨 개발 가이드
    • 오로라 리액트(통합형) 릴리즈 노트
    • 오로라 바닐라(개별형) 릴리즈 노트
    • 1:1 문의하기
  • 오로라 개별형 스킨 개발 가이드
    • 개발 프로세스
      • 등록
      • 개발
        • 개발 환경 구성하기
        • 스킨 디렉토리 구조
      • 설치
    • 기본 API 이해하기
      • 샵바이 API 호출 가이드
        • OAuth 2.0 적용 가이드
      • 외부 스크립트 호출 가이드
    • 화면별 API 활용 가이드
      • 공통 영역
        • 공통 상단
        • 공통 하단
        • 디자인 팝업
        • 슬라이드 메뉴 (모바일 전용)
        • 최근 본 상품
      • 메인 화면
        • 배너 영역
        • 상품진열 영역
        • 인스타그램 연동
      • 회원가입
      • 로그인
      • 간편 로그인
      • 휴대폰 본인인증
      • 상품 리스트
      • 상품 상세
        • 상품 기본 정보
        • 상품 상세 배너 (모바일 전용)
        • 상품 상세정보 (탭)
        • 배송/반품/교환 안내 (탭)
        • 상품후기 (탭)
        • 상품문의 (탭)
        • 관련상품
      • 장바구니
      • 주문서
      • 마이페이지 > 쇼핑정보
        • 주문목록/배송조회
        • 취소/반품/교환 내역
        • 주문 상세
        • 좋아요
      • 마이페이지 > 혜택관리
        • 쿠폰
        • 적립금
      • 마이페이지 > 회원정보
        • 회원정보 수정
        • 회원탈퇴
        • 배송지 관리
      • 마이페이지 > 나의 게시글
        • 1:1 문의
        • 상품문의
        • 상품후기
      • 상품후기 게시판
      • 일반 게시판
      • 기획전
    • KCP 휴대폰 본인인증 연동 (iOS/AOS)
  • 앱 개발 가이드
    • [샵바이] 웹훅(webhook) 가이드
    • [고도몰] 웹훅(webhook) 가이드
  • 추천 콘텐츠
    • 추천 콘텐츠
      • [간편 로그인] SNS 연동 기능 개발 가이드
      • [공통] 마이페이 API 화면가이드
      • [엔터프라이즈] 선물하기 기능 (배송지 나중입력)
      • [엔터프라이즈] 카카오 싱크 신청 가이드
      • [엔터프라이즈] 카카오 싱크 회원가입 API 화면가이드
      • [엔터프라이즈] 이니렌탈(렌탈결제) API 화면가이드
      • [엔터프라이즈] 외부 회원 연동 가이드
      • [엔터프라이즈] 외부 적립금 전환 가이드
      • [엔터프라이즈] 외부 적립금 연동가이드
      • [엔터프라이즈] 사은품 API 화면가이드
      • [엔터프라이즈] PG신청 가이드 (2024/4/1 업데이트)
      • [엔터프라이즈] 카카오 픽셀 설치 가이드
      • [엔터프라이즈]정기결제(배송) API 화면가이드
      • [프로/엔터프라이즈] 쇼핑몰에 인스타그램 위젯을 적용해보세요!
      • [베이직/프로] 카카오싱크 신청 가이드
      • [웹훅 추가] 주문정보 웹훅(Webhook)이란?
      • [웹훅 추가] 회원정보 변경 및 회원탈퇴
      • [웹훅 추가] 앱 설치 및 삭제
      • shop by API, POSTMAN에 추가하기
      • [글로벌] 글로벌 기능 가이드
        • 사용 프로세스
          • 엑심베이 PG 계약
          • 개발 환경 세팅
          • shop by 어드민 세팅
          • 쇼핑몰 스킨 개발
            • 언어/통화 설정
            • 상품/전시 설정
            • 주문서 조회
            • 주문 예약하기
            • 회원 등록
        • 글로벌 주문/환불 프로세스
    • FAQ
      • 에러코드_ (1) 주문
      • 에러코드_ (2) 프로모션
      • 에러코드_ (3) 클레임
      • 쿠폰 코드 API 에러메시지 안내
      • 장바구니/주문결제 에러코드 안내
      • 배송타입 및 택배사코드 안내
      • 파트너어드민 매출내역 조회기준
      • shop api error response 안내
      • server API로 주문의 외부 유입경로 집계 방법
      • 은행코드 안내
      • 7/15 스킨 에디터 업데이트 주의사항
        • 모바일_업데이트 전 템플릿 코드
        • PC_업데이트 전 템플릿 코드
        • 업데이트 후/전 템플릿 코드 비교
      • [샵바이 엔터프라이즈] server API 호출방법
      • [샵바이 엔터프라이즈] 파트너 어드민에서 상품 노출은 미리 해두고, 판매 기간은 미래시점으로 설정할 수 있는 기능이 있을까요?
      • [샵바이 엔터프라이즈] 파트너사 담당MD 일괄변경 어떻게하나요?
Powered by GitBook
On this page
  • 🅐 일반회원 로그인
  • ⓒ 비밀번호 90일 초과 로직
  • 🅑 아이디 찾기
  • 🅒 비밀번호 찾기
  • 🅓 회원가입
  • 🅔 비회원 주문조회
  • 🅕 간편 로그인

Was this helpful?

  1. 오로라 개별형 스킨 개발 가이드
  2. 화면별 API 활용 가이드

로그인

쇼핑몰 로그인 화면 및 로그인 시나리오에 대해 소개합니다.

Previous회원가입Next간편 로그인

Last updated 1 month ago

Was this helpful?

  • 🅐 일반회원 로그인

    • ⓐ accessToken 발급

    • ⓑ 휴면회원 로직

    • ⓒ 비밀번호 유효기간 초과 로직

  • 🅑 아이디 찾기

  • 🅒 비밀번호 찾기

  • 🅓 회원가입

  • 🅔 비회원 주문조회

  • 🅕 간편 로그인


🅐 일반회원 로그인

회원가입 시 생성한 회원 정보 (아이디 / 비밀번호)를 입력하는 화면입니다.

■ 로그인 프로세스

두 가지 회원유형인 🅐일반 로그인 회원과 🅑간편 로그인 회원은 각각 로그인 로직이 상이하나, 공통적으로 accessToken/refreshToken을 획득 해야 합니다.

◼︎ ⓐ AccessToken / RefreshToken 발급

► 엑세스 토큰/리프레시 토큰 발급하기 엑세스 토큰 (accessToken) / 리프레시 토큰 (refreshToken) 을 발급합니다.

샵바이에서는 OAuth2 기반의 로그인 방식을 사용합니다. OAuth2가 적용되지 않은 경우, 액세스 토큰(accessToken) 기반의 로그인 방식을 사용합니다.

◼︎ ⓐ AccessToken 발급

► 엑세스 토큰 발급하기 엑세스 토큰 (accessToken)을 발급합니다.

사용자가 입력한 아이디와 비밀번호로 해당 API를 호출하여 유효한 회원일 경우 accessToken/refreshToken을 획득합니다.

회원 액세스 토큰의 기본 유효시간은 30분, 리프레시 토큰의 기본 유효기간은 1일이며, 자동 로그인을 위해 keepLogin을 true로 요청하면 유효기간이 90일인 리프레시 토큰이 생성됩니다. 리프레시 토큰이 유효한 동안 액세스 토큰이 만료된 경우, 토큰을 갱신해야 합니다. 회원은 비밀번호 유효기간 90일이 지나면 비밀번호를 변경해야 합니다.

► 엑세스 토큰 갱신하기 엑세스 토큰 (accessToken)을 갱신합니다.

액세스 토큰 기반의 로그인 방식을 사용하는 경우, 회원 액세스 토큰의 기본 유효기간은 30분이며, 자동 로그인을 위해 keepLogin을 true로 요청하면 유효기간이 90일인 토큰이 생성됩니다. 해당 방식은 토큰 갱신 작업을 진행하지 않습니다. 회원은 비밀번호 유효기간 90일이 지나면 비밀번호를 변경해야 합니다.

◼︎ ⓑ 휴면 회원 로직

2023년 9월 15일 개인정보보호법 개정에 따라 '개인정보 유효기간제'가 폐지되어,

쇼핑몰 운영방침에 따라 자율적으로 휴면회원 배치 사용 여부를 설정할 수 있습니다.

아래 어드민 경로에서 휴면회원 사용 여부를 설정할 수 있습니다.

shop by basic/pro : 설정 > 기본정책 > 쇼핑몰관리 > 쇼핑몰 수정 > 휴면회원 사용여부 설정
shop by premium : 서비스관리 > 쇼핑몰 관리 > 쇼핑몰 수정 > 휴면회원 사용여부 설정
  1. 직전 단계에서 Oauth2 기반 로그인 방식인 경우 POST /oauth2 혹은 POST /oauth2/openid 호출 액세스 토큰 기반의 로그인 방식인 경우 POST /oauth/token 혹은 POST /oauth/openid 호출

  2. 해당 API 응답 값에서 dormantMemberResponse가 null이 아닌 경우 휴면회원 해제 여부 컨펌창 노출

  3. 휴면회원 해제 API 호출

■ 휴면 회원 판단

accessToken 을 획득했지만, 현재 사용자가 '휴면 회원'인 경우에는 휴면 회원 로직을 실행합니다. (일반회원 및 간편로그인 회원)

아래 POST /oauth2, POST /oauth2/openid, POST /oauth/token 혹은 POST /oauth/openid 응답 값 중 '휴면 회원 정보 dormantMemberResponse' 가 null이 아닌 경우 휴면회원으로 간주합니다.

► 엑세스 토큰 발급하기 엑세스 토큰 (accessToken)을 발급합니다.

사용자가 입력한 아이디와 비밀번호로 해당 API를 호출하여 유효한 회원일 경우 accessToken을 획득합니다.

► OpenId AccessToken/RefreshToken 발급하기 OpenId 회원의 액세스 토큰 (accessToken) / 리프레시 토큰 (refreshToken)을 발급합니다.

► OpenId AccessToken 발급하기 OpenId 회원의 액세스 토큰 (accessToken)을 발급합니다.

Open ID 회원이란?

카카오, 네이버와 등과 같은 외부 IdP(Identity Provider, 즉 아이디 제공자)를 이용하여 로그인하는 회원을 뜻합니다. 사용자가 입력한 아이디와 비밀번호로 해당 API를 호출하여, 유효한 회원일 경우 accessToken 을 획득합니다.

■ 휴면 회원 해제

휴면 해제 진행 시 아래 API를 호출하여 휴면해제 처리합니다. 휴면 해제 성공 시 로그인 상태로 간주합니다.

► 휴면 해제하기 회원의 휴면 상태를 해제합니다.

ⓒ 비밀번호 90일 초과 로직

비밀번호 유효기간 90일 초과 시 비밀번호를 변경하는 페이지를 노출합니다. 비밀번호 변경 일시 및 '다음에 변경' 최종 처리 일시가 현재 시점 기준 90일을 초과한 경우, 비밀번호 변경안내 페이지로 이동합니다.

단, '일반 로그인 회원'의 경우에만 비밀번호 유효기간 로직이 실행되며,

쇼핑몰 비밀번호가 없는 '간편 로그인 회원'의 경우 비밀번호 변경 안내 대상이 아닙니다.

► accessToken 발급하기 엑세스 토큰 (accessToken)을 발급합니다.

  • 응답 값 중 '비밀번호 변경 일로부터 경과일 수 daysFromLastPasswordChange' 가 90일 이상인 경우 비밀번호 변경 안내 대상입니다.

► 비밀번호 확인하기 입력된 비밀번호를 확인합니다.

  • '비밀번호 변경' 클릭 시 해당 API를 호출하여 , 현재 비밀번호가 일치하는지 확인합니다.

► 비밀번호 변경하기 비밀번호를 변경합니다.

  • '비밀번호 변경' 버튼 클릭 시입력한 새 비밀번호 newPassword로 비밀번호를 변경합니다. 기본 스킨에서는 비밀번호 변경에 성공 시, 로그아웃 처리 후 로그인 화면으로 이동합니다. 즉 새로 accessToken을 발급 받아야 합니다.

  • 만약 '다음에 변경' 버튼 클릭 시 willChangeNextTime 값을 통해 daysFromLastPasswordChange가 현재 날짜로 업데이트 됩니다. 비밀번호 변경은 권장 사항으로서, '다음에 변경' 클릭 시 전 단계에서 획득한 accessToken을 이상 없이 사용할 수 있으며 로그인 상태로 간주됩니다.

  • 만약 회원이 '비밀번호 변경' 혹은 '다음에 변경' 버튼을 클릭하지 않은 채, 다른 방법 (타 버튼 클릭, URI 직접 입력 등)을 통해 다른 화면으로 이동했다 하더라도 계속 로그인 상태로 간주합니다. 단, 이 경우 daysFromLastPasswordChange값이 90일 이상으로 유지되므로, 나중에 다시 로그인 시도 시 해당 비밀번호 변경 안내 화면이 다시 노출됩니다.


🅑 아이디 찾기

'아이디 찾기' 버튼 클릭 시 아이디 찾기 화면으로 이동합니다.

► 아이디 찾기 회원가입 시 입력한 정보로 아이디를 검색합니다.

회원가입 시 입력한 이름/이메일/휴대폰 번호 정보를 통해 아이디를 검색 합니다.

  • 이메일 : 회원가입 시 입력한 이메일 정보로 동일 데이터 존재 여부 조회

  • 휴대폰번호 : 회원가입 시 입력한 휴대폰 번호로 데이터 존재 여부 조회

이후 입력한 정보와 일치하는 회원정보가 있을 경우 아이디 안내 화면을 노출합니다.

아이디 안내 화면에서 아이디는 마스킹 처리하여 표기합니다.

  • 이메일 형식 아이디 : 아이디 중 앞 2자리를 제외한 나머지는 마스킹 처리

  • 이메일 형식이 아닌 아이디 : 끝 3자리 마스킹 처리

기본 스킨에서는 아이디가 여러개인 경우 개행 처리하며, 조회한 아이디가 휴면회원일 경우 (휴면) 텍스트를 노출합니다.

◼︎ 휴대폰 본인인증

회원인증 설정을 '휴대폰인증' 으로 설정한 경우, '휴대폰 본인인증' 탭 항목이 추가로 노출됩니다.


🅒 비밀번호 찾기

'비밀번호 찾기' 버튼 클릭 시 비밀번호 찾기 화면으로 이동합니다. 비밀번호 찾기 화면은 아이디 입력 → 본인인증 → 비밀번호 변경 → 변경완료 4단계 화면으로 진행됩니다.

◼︎ 아이디 입력

► 비밀번호 찾기를 위한 계정 조회하기 비밀번호 찾기를 위한 계정 정보를 조회합니다.

사용자가 입력한 회원 아이디를 바탕으로 '회원번호 memberNo' 를 획득합니다.

◼︎ 본인인증

비밀번호 찾기를 위한 본인인증 수단은 총 3개를 제공합니다.

  • 이메일 인증 : 등록된 이메일로 찾기

  • 휴대폰번호 인증 : 등록된 휴대폰 번호로 찾기

    • NHN KCP 외부 인증모듈을 호출하여 휴대폰 본인인증을 진행합니다.

    • 회원인증 설정을 '휴대폰인증' 으로 설정한 경우, '휴대폰 본인인증' 탭 항목이 추가로 노출됩니다.

► 인증번호 발송하기 회원의 연락처로 인증번호를 발송합니다.

GET /profile/password/search-account 에서 전달받은 '회원번호 memberNo'를 바탕으로 등록된 이메일 또는 휴대폰 번호로 인증번호를 발송합니다.

► 인증번호 확인하기 전달받은 인증번호를 확인합니다.

Usage 값으로 FIND_PASSWORD 를 입력합니다.

◼︎ 비밀번호 변경

본인인증 성공 시, 신규 비밀번호를 입력할 수 있습니다.

► 비밀번호 변경하기 회원인증 후 비밀번호를 변경합니다.

기존에 사용 중이던 비밀번호와 동일한 비밀번호로 변경할 수 없습니다.

◼︎ 변경완료

만약 해당 회원이 휴면회원인 경우, 비밀번호 변경 성공 후 아래 API를 호출하여 휴면해제 처리합니다.

► 휴면 해제하기 회원의 휴면상태를 해제합니다.


🅓 회원가입


🅔 비회원 주문조회

비회원 주문조회는 비회원이 구매한 주문 건에 대한 주문정보를 확인할 수 있도록 비회원 정보를 입력하는 영역입니다. 비회원으로 주문한 주문번호와 주문 시 작성한 주문번호 비밀번호를 입력하여 확인할 수 있습니다.

입력한 주문번호 / 주문번호 비밀번호와 일치하는 비회원 주문정보가 없는 경우, 아래 화면과 같은 alert 을 출력합니다.

► 비회원 주문 상세 조회하기 비회원 주문의 상세 정보를 조회합니다.

입력받은 주문번호와 주문번호 비밀번호로 해당 API를 호출하여 비회원 주문정보를 조회합니다. 조회 성공 시, 주문번호 orderNo 기준으로 비회원 주문 상세 정보 화면을 노출합니다.


🅕 간편 로그인

일반 회원 로그인 영역 하단에 간편 로그인 기능을 제공합니다. 현재 제공하는 간편 로그인은 페이코, 네이버, 카카오, 페이스북 총 4개 입니다.

아래 어드민 경로에서 설정이 가능합니다. 각 어드민별 페이지에서 연동 설정한 외부 IdP(Identity Provider, 즉 아이디 제공자)를 노출합니다.

shop by basic/pro : 설정 > 기본정책 > 외부서비스 설정
shop by premium : 서비스관리 > 쇼핑몰 관리

어드민에 연동 설정이 되어있는 간편 로그인 인증업체 (외부 IdP)정보를 조회합니다. 연동되어 있지 않은 인증업체의 로그인 버튼은 노출되지 않습니다.

해당 API 응답 값 중 openIdJoinConfig 내 providers 값을 통해 확인 가능합니다.

아래 API를 통해 토큰을 갱신할 수 있으며, 토큰 갱신과 관련된 자세한 내용은 에서 확인하실 수 있습니다.

► 엑세스 토큰 / 리프레시 토큰 발급하기 액세스 토큰 (accessToken) / 리프레시 토큰 (refreshToken) 을 발급합니다.

► 엑세스 토큰 / 리프레시 토큰 발급하기 액세스 토큰 (accessToken) / 리프레시 토큰 (refreshToken) 을 발급합니다.

'휴대폰 본인인증' 탭 선택 시 을 실행한 후, POST /profile/find-id 를 호출하여 아이디를 찾을 수 있습니다. NHN KCP 휴대폰 본인인증 절차를 완료한 경우, 아이디 안내 화면에서 아이디 마스킹 처리를 하지 않고 안내합니다.

회원가입 페이지로 연결되는 회원가입 버튼을 노출합니다. 상세 내용은 문서를 참고하시길 바랍니다.

► 몰 정보 조회하기 쇼핑몰 전반에 대한 기본 정보와 설정 데이터를 조회할 수 있습니다.

각 간편 로그인 버튼 클릭 이후의 상세 로직은 문서를 확인하시길 바랍니다.

POST /oauth2
POST /oauth/token
OAuth 2.0 적용 가이드
PUT /oauth2
POST /oauth2
POST /oauth/token
POST /oauth2/openid
POST /oauth/openid
PUT /profile/dormancy
POST /oauth2
POST /oauth/token
POST /profile/check-password
PUT /profile/password
POST /profile/find-id
휴대폰 본인인증 화면
GET /profile/password/search-account
휴대폰 본인인증
POST /authentications
GET /authentications
POST /profile/change-password-after-cert
PUT /profile/dormancy
회원가입 화면
POST /guest/orders/{orderNo}
GET /malls
간편 로그인 화면