0. 데이터 분석가가 왜 API까지 쓰게 되었나
저는 카페24를 활용하는 이커머스 데이터 분석을 종종 접하고 있는 데이터 분석가 입니다. 대부분 이커머스 사실 고객사 대표님들이 가장 궁금해 하시는 건 다음 2가지는
- “우리 회사 마케팅 활동이 매출에 잘 반영되고 있는지?”에 대한 설명
- “그래서 다음에 어떤 전략으로 매출을 늘릴 수 있는지?”에 대한 인사이트
위 분석을 위해서는 정확한 매출 정보가 필요한데, 안타깝게도 GA4로는 정확한 매출 집계가 되기 어렵습니다. 특히 네이버페이 등 간편 결제로 발생하는 매출을 GA4에서 제공하는 태그 수집기로는 정확하게 잡아낼 수 없는 것이 가장 큰 이유 중 하나 입니다. 결국 이커머스 매출 성장을 위한 깊이 있는 데이터 기반 인사이트를 도출 하려면 카페24에서 제공하는 매출 정보를 GA4에서 수집한 웹행동 데이터와 결합
하여야 합니다.
이를 위해서는 다음과 같이 3단계 데이터 수집 과정이 필요합니다.
- 매출 데이터: 카페24가 제공하는 관리자 페이지에서 엑셀로 추출 또는 카페24 API를 활용하여 수집
- GA4 웹 행동 데이터: 구글 애널리틱스에서 수집
- 데이터 연동: 빅쿼리를 활용하여 데이터 연동 및 분석
오늘은 이 중 첫번째 과정인 카페24 API를 활용한 매출 데이터 수집
에 대해 설명 드리겠습니다.
1. 카페24 API, 왜 다들 쓰지 않는가?
카페24 API는 카페24 플랫폼에 구축된 쇼핑몰의 데이터를 외부에서 읽거나 쓸 수 있도록 하는 인터페이스입니다. 카페24 API를 사용하면 쇼핑몰의 주문, 상품, 고객 정보 등을 외부 시스템과 연동하여 활용할 수 있습니다.
대부분의 API 문서들은 백앤드 개발자를 대상으로 작성되어 있어서, 단계별 필요한 과정이 일부 생략되는 경우가 많습니다. 비개발자가 API 문서를 이해하고 활용하기 무척 어렵다고 느끼고 포기하는 원인 중 하나로 꼽을 수 있어요.
특히 카페24 API는 1분간 유효한 인증 토큰
을 발급 받은 후 접속용 토큰
을 발급받아 계속 갱신해야 하는 체계로 운영되고 있습니다. 이 과정이 쉽지 않아서 비개발자들이 카페24 API를 활용하는 경우는 매우 드문 것 같습니다.
하지만, 이번 포스팅을 통해 비개발자도 카페24 API를 활용할 수 있도록 첫번째 허들인 인증 토큰 발급
과정을 차근차근 설명해 드리겠습니다.
주의사항: 이 포스팅은 제3자가 아닌 자사몰 데이터를 수집하고 활용하는 목적으로 작성 되었습니다. 카페24 API를 활용하여 타 쇼핑몰의 데이터를 수집하거나 활용하는 경우, 해당 쇼핑몰의 동의를 받아야 합니다. 또한, 카페24 API를 활용하여 수집한 데이터는 개인정보 보호법에 따라 안전하게 관리되어야 합니다.
2. 카페24 API 개발자(사)로 등록하기
(1) 준비물
- 카페24 쇼핑몰 관리자 계정: 구글 로그인 아닌 카페24 자체 계정을 만들어서 사용하세요.
- 카페24 API 인증 토큰을 발급 받을 쇼핑몰 도메인 주소: https://관리자아이디.cafe24.com 을 씁니다.
- 파이썬 코드를 작성할 수 있는 에디터: 주피터 노트북, VSCode, PyCharm 등을 사용하세요.
(2) 카페24 개발자 센터 접속
카페24 개발자 센터에 접속하여 관리자 계정
으로 로그인 합니다. 카페24 개발자 센터
처음 개발자 센터에 로그인하면 다음 절차가 필요합니다.
- 이용약관 동의
- 파트너 정보 입력
카페24 개발자 센터는 쇼핑몰 운영을 위해 필요한 부가 서비스 개발하는 제3자(기업)를 위한 API 개발을 전제로 운영되고 있습니다. 이 제3자를 파트너
라고 칭하고 있는데요, 개발자 센터 로그인할 때 어떤 파트너사 인지 정보를 입력하라고 하는 것입니다. 우리는 자체적으로 운영하는 쇼핑몰에서 API를 사용할 것이기 때문에 쇼핑몰을 운영하는 개인 또는 사업자 정보를 입력하고, 전문 분야는 “쇼핑몰 운영”으로 선택하면 됩니다.
(3) App 등록
API를 활용하기 위해서는 App
을 등록해야 합니다. App
은 API를 활용할 수 있는 권한을 부여받은 프로젝트
라고 생각하시면 됩니다. 실제로 쇼핑몰 외에 별도 앱 서비스가 생성되지 않아도 API를 활용할 수 있습니다. 초보들이 보기에는 뭔가 거창한 앱을 개발해야 하는 것 처럼 느낄 수 있지만, 사실은 그냥 API를 활용할 수 있는 권한을 부여받기 위한 절차 입니다.
카페24 API 등록을 위한 토큰 발급 전용 메뉴가 별도로 있다면 좋겠습니다.
접속할 메뉴는 Apps > App 관리
입니다. “ADD PRODUCT” 버튼을 클릭하여 새로운 App 등록을 시작합니다.
버튼 클릭 시 다음과 같은 팝업이 뜨는데, 우리는 API 토큰만 발급받을 것이기 때문에 Web
을 선택하고, 관리 상품명에는 쇼핑몰이름
을 입력 합니다. 관리자아이디로 이미 샘플 쇼핑몰이 생성되기 때문에, 카페24 쇼핑몰 이름은 쇼핑몰 관리자아이디와 동일하게 입력하면 관리가 편할 것 입니다.
3. 카페24 API 개발 정보 등록
(1) 기본 정보 입력하기
우리는 쇼핑몰 운영자로서 데이터를 추출하기 위한 API를 사용할 것이기 때문에, 다음과 같이 정보를 입력합니다.
App URL
: https://관리자아이디.cafe24.com
App URL
은 API 접근 권한을 허용할 쇼핑몰 입니다. 각자의 관리자 로그인 아이디를 넣어주세요.Redirect URI
: https://관리자아이디.cafe24.com/order/basket.htmlRedirect URI
는 접근 권한을 부여하기 위해 1분간 유효한 인증코드를 받을 수 있는 홈페이지 주소 입니다. 해당 쇼핑몰 장바구니 페이지로 설정 했습니다.
(2) API 정보 설정하기
여기서는 API를 활용하여 추출할 데이터 범위를 설정합니다. 가능한 꼭 필요한 정보만 한정하여 설정하고 추후 필요한 경우 해당 권한을 추가할 수 있습니다. 매출 데이터 분석을 위해서는 주문
과 상품
, 회원
정보 “읽기”를 필수로 설정합니다.
나머지 부분은 별도로 설정하지 않습니다.
(3) API 인증 정보 메모하기
위 설정을 마치고 인증 정보에서 Client ID
와 Client Secret
을 복사하여 따로 메모해 둡니다. 이 정보는 곧 발급 받을 인증 코드를 받을 때 사용합니다.
이 때 메모장에 복사해 두어도 되지만, 4번을 참고하여 파이썬 코드 에디터를 열고 다음과 같이 변수를 지정하는 것을 추천합니다.
= "발급받은 Client ID"
client_id = "발급받은 Client Secret" client_secret
(4) 입력한 정보 저장하기
WebHook 설정은 필수가 아니기 때문에 별도로 설정하지 않습니다.
페이지 하단 또는 상단의 파란색 “저장” 버튼을 클릭하여 설정한 정보를 저장합니다.
4. 인증코드 받기
(1) 준비물
- 파이썬 코드 에디터: 주피터 노트북, VSCode, PyCharm 등 (이 블로그에서는 VSCode를 사용합니다.)
- 카페24 API 인증 정보:
Client ID
,Client Secret
Redirect URI
: https://관리자아이디.cafe24.com/order/list.html- 웹브라우저: 크롬, 사파리, 엣지 등
(2) 파이썬 코드로 인증받을 URL 생성하기
카페24 API 인증 코드를 받기 위해서는 다음과 같은 코드로 각자 쇼핑몰 인증코드를 받을 URL을 생성해야 합니다.
가. 기존에 설정한 정보들: 각자 쇼핑몰 환경에 따라 설정 하세요.
- mall_id = “관리자 또는 쇼핑몰 아이디”
- client_id = “발급받은 Client ID”
- client_secret = “발급받은 Client Secret”
- redirect_uri = f”https://{mall_id}.cafe24.com/order/list.html”
나. 추가로 지정할 정보들: 그대로 복사하여 사용
{state}는 app_install
로 지정하여 인증 코드 받을 때 확인하는 용도 입니다. 다른 문자열을 넣어도 관계는 없습니다.
- state = “app_install”
{scope}는 각자 API 활용 범위에 따라 달라지는데, 여기서는 3번에서 매출 데이터를 수집하기 위해 필요한 주문
, 상품
, 회원
정보를 읽는 것으로 지정 합니다. 개별적으로 변경을 원하는 경우, 카페24 API Scope별 사용 동의 문서를 참고하세요.
아래 예시는 앱 설치 활용 권한, 주문 데이터 읽기, 상품 데이터 읽기, 고객 데이터 읽기 권한으로 정의 되어 있습니다. 쇼핑몰 고객 매출 정보 분석에는 이 정도 권한이면 충분 합니다.
- scope = “mall.read_application,mall.write_application,mall.read_product,mall.read_order,mall.read_customer”
# (1) 필요한 변수 지정: 각자 작성
= "관리자 또는 쇼핑몰 아이디"
mall_id = "발급받은 Client ID"
client_id = "발급받은 Client Secret"
client_secret = f"https://{mall_id}.cafe24.com/order/basket.html"
redirect_uri = "app_install"
state = "mall.read_application,mall.write_application,mall.read_product,mall.read_order,mall.read_customer"
scope
# (2) 인증 코드를 받기 위한 URL 생성: 그대로 복사
= f"""https://{mall_id}.cafe24api.com/api/v2/oauth/authorize?response_type=code
url &client_id={client_id}&state={state}&redirect_uri={redirect_uri}&scope={scope}"""
print(url)
코드를 실행하면 각자의 쇼핑몰 정보로 완성된 URL이 터미널에 출력됩니다. 웹주소 전체를 복사하여 웹브라우저에 붙여넣기 한 후 접속합니다.
최초 접속 시 API 접속 권한을 승인하기 위해 관리자 로그인 화면이 뜹니다. 자세한 단계별 방법은 아래 동영상으로 확인 하세요.
인증 코드는 1분간 유효 하기 때문에코드 발급 후 재빠르게 다음 단계를 실행해서 재활용 가능한 토큰으로 교환해야 합니다. 토큰 교환 방법은 다음 글에서 자세하게 소개해 들겠습니다.