Project brief
프로젝트 내용
[프로젝트 개요]
라이브커머스 대행사가 운영하는 네이버 쇼핑라이브 방송의 성과 데이터를 회차 단위로 수집·축적하고, 브랜드별 리포트를 자동 생성해 이메일로 발송하는 시스템을 구축합니다. 수집 대상은 쇼핑라이브 관리툴 4개 화면이며, 운영자용 관리 화면을 함께 개발합니다.
[추진 배경과 시점]
발주처는 브랜드(판매자)를 대신해 네이버 쇼핑라이브 방송을 운영하는 대행사입니다. AI 무인 상시 송출을 포함해 동시 30건의 방송을 진행합니다.
현재 방송 성과는 관리툴 화면에서 건별로 조회할 수 있을 뿐 회차 단위로 축적되지 않습니다. 방송이 끝나면 그 회차의 기록이 남지 않아 회차 간 비교가 불가능합니다.
[난점과 경위]
- 네이버 쇼핑라이브에는 방송 성과 조회용 공식 API가 제공되지 않으며, 운영사로부터 향후 제공 계획도 없다는 회신을 받았습니다. 데이터는 관리툴 화면에서 수집해야 하고, 화면 구조가 변경되면 수집이 중단되며 우회 경로가 없습니다.
- 스토어별로 세션이 분리됩니다. 하나의 브라우저에서 여러 스토어에 동시 접속할 수 없어 스토어별 독립 실행 구조가 필요합니다.
- 라이브 매출은 방송 종료 시점에 확정되지 않습니다. 구매 확정과 취소·환불이 이후에 반영되며, 취소·환불은 기간 단위로만 제공되고 회차 단위로는 제공되지 않습니다.
[요구사항]
데이터 수집
- 스토어별 독립 브라우저 프로필로 관리툴에 접속하고 스토어 간 순차 실행합니다.
- 채널 분석 화면은 스토어·기간 단위로 정기 조회합니다.
- 라이브 통계와 라이브 보드는 방송 종료 후 1회 수집합니다. 실시간 상주 수집은 하지 않습니다.
- 영상 예약 화면에서 영상별 시작 시각과 소재 정보를 수집합니다.
- 스토어 계정 세션을 유지하고 만료 시 재인증합니다.
- 수집 실패 시 재시도하고 지정 횟수 초과 시 실패로 확정합니다.
데이터 저장
- 방송을 고유 식별자 기준으로 저장하고 파싱 전 원본을 함께 보관합니다.
- 동일 방송 재수집 시 덮어쓰지 않고 이력으로 저장합니다.
- 스토어·방송·상품·채팅을 관계로 저장합니다.
- 데이터 모델은 향후 브랜드 단위 접근 제어가 가능한 구조로 설계합니다. 이번 범위에서 해당 기능을 구현하지는 않으며 구조만 확보합니다.
리포트 생성·발송
- 회차 단위 리포트를 자동 생성합니다. 전 브랜드 공통 양식 1종을 사용합니다.
- 직전 회차 대비 비교와 해당 회차의 소재 정보를 포함합니다.
- 발행 시점을 속보판과 확정판으로 구분하고 속보판 수치가 확정 전 값임을 명시합니다.
- 주간·월간 리포트를 자동 생성합니다.
- 브랜드별 수신자를 등록·관리하고 리포트 생성 후 이메일로 자동 발송합니다.
- 발송 이력을 기록하고 재발송을 지원합니다.
매출·정산
- 채널 분석에서 기간을 지정해 누적 거래액, 결제 금액, 취소·환불 금액을 수집합니다.
- 라이브 결제 랭킹과 상품 결제 랭킹을 수집하고 기간 단위 확정 매출을 리포트에 포함합니다.
채팅
- 라이브 보드의 채팅 로그를 수집·보관하고 시청자 질문과 응답을 구분해 저장합니다.
- 자주 나온 질문 상위 항목을 추출하고 유형을 분류해 리포트에 포함합니다.
운영 감시
- 수집 결과의 필수 항목 누락을 검증하고 직전 회차 대비 비정상 편차를 판정합니다.
- 수집 실패, 세션 만료, 검증 실패를 이메일로 알립니다.
- 스토어별 수집 현황을 화면에서 확인합니다.
관리자 화면
- 브랜드 등록·관리, 방송 목록·상세 조회, 리포트 미리보기·수동 발송, 수집 현황·알림 이력 조회를 제공합니다.
[사용자 스토리와 수용 기준]
- 운영자는 방송이 끝나면 별도 조작 없이 리포트가 브랜드에 전달되기를 원합니다. 방송 종료 후 사람 개입 없이 리포트가 생성·발송되면 충족합니다.
- 운영자는 이번 회차가 지난 회차보다 나았는지 알고자 합니다. 리포트에 직전 회차 대비 비교 수치가 포함되면 충족합니다.
- 운영자는 잘못된 수치가 브랜드에 전달되는 상황을 막고자 합니다. 검증에 실패하면 발송이 중단되고, 수집 실패·세션 만료와 함께 운영자에게 알림이 도착하면 충족합니다.
- 운영자는 주·월 단위 성과를 별도 작업 없이 받고자 합니다. 설정한 주기에 기간 리포트가 자동 발송되면 충족합니다.
- 운영자는 시청자가 무엇을 물었는지 알고자 합니다. 자주 나온 질문 상위 항목과 유형이 리포트에 포함되면 충족합니다.
[업무 상태 흐름]
- 리포트는 속보판과 확정판 두 단계로 발행합니다. 속보판은 방송 종료 후 통계 갱신 확인 시점에, 확정판은 구매 확정이 반영된 이후 재수집해 발행합니다.
- 수집 결과가 검증에 실패하면 리포트를 생성하더라도 발송하지 않고 운영자 확인 대기 상태로 둡니다.
- 수집 원본은 파싱 성공 여부와 무관하게 보관하며 삭제하지 않습니다. 화면 구조 변경 시 소급 재처리에 사용합니다.
- 화면 전이 순서 등 동작 단계 설계는 제안사가 정합니다.
[비기능 요구]
- 스토어 10개, 동시 송출 30건. 사용자는 발주처 내부 2~3명이며 브랜드는 접속하지 않습니다.
- 수집 1회 처리 시간이 방송 간격을 초과하지 않아야 합니다.
- 데이터 보관 2년 이상, 원본 1년 이상.
- 수집 전용 장비 1대를 별도 운용하고 송출 장비에는 프로그램을 설치하지 않습니다.
[외부 연동]
- 별도 외부 시스템 연동은 없습니다. 수집 대상은 모두 쇼핑라이브 관리툴 화면 안에 있으며 발송은 이메일만 사용합니다.
[스코프 밖]
- 외부 요인(날씨·이슈·SNS 언급)과 매출의 인과 분석, 매출 예측, 마케팅 채널 추천
- 브랜드 로그인 포털 및 브랜드용 대시보드
- 회차별 확정 매출 귀속
- 송출 장애 실시간 감지, 송출 장비 로그 수집
- 소재 반복 편성 경고
[추가 도입 검토 항목]
아래 세 항목은 요구사항에 포함되어 있으나, 예산 범위를 초과할 경우 발주처가 견적을 보고 이관 여부를 판단합니다. 제외가 확정된 항목이 아니므로 이후 추가될 수 있는 구조로 설계하고, 항목별 개략 규모를 견적에 구분해 표기해 주십시오. 이관을 검토하는 순서는 아래와 같습니다.
- 기간(주·월) 리포트. 회차 리포트의 집계 형태로 만드는 것을 전제로 합니다.
- 채팅 요약. 로그 수집·보관은 유지하고 상위 질문 추출과 유형 분류를 조정 대상으로 봅니다.
- 매출·정산 수집.
회차 리포트, 자동 발송, 운영 감시는 조정 대상이 아닙니다.
[제약 사항 및 확인 필요]
- 리포트 항목과 레이아웃은 확정되지 않았습니다. 기존 리포트가 없어 참고 양식이 없으며 착수 후 2주 이내 협의로 확정합니다.
- 하루에 새로 생성되는 방송 건수는 확인되지 않았습니다. 착수 시 확인해 처리량 산정에 반영합니다.
- 수집 성공률 검수 기준치는 협의로 정합니다.
- 사람 응답과 자동 응답의 화면상 구분 가능 여부는 착수 시 확인합니다.
- 첫 단계에서 이미 구현된 기능이 확인될 경우 해당 범위와 금액을 조정합니다.
- 관리툴 통계는 네이버가 일괄 갱신하므로 갱신 여부를 확인한 뒤 수집합니다.
[클라이언트 준비 사항]
발주처가 아래를 제공합니다.
- 스토어 계정 접근 권한 및 관리툴 화면 접근 권한
- 리포트 수신자 정보
- 수집 전용 장비 및 네트워크 환경(필요 시)
- 리포트 항목 협의·확정 담당자 지정 및 검토 회신
[기술 스택]
- 지정 없음 — 제안사 제안. 수집 방식, 저장소, 배포 환경 모두 제안사가 선택합니다.
- 선택 근거를 화면 수집의 안정성과 유지보수 용이성 관점에서 함께 제시해 주십시오.
[원하는 파트너]
- 웹 화면 수집 시스템을 구축하고 운영해 본 경험이 있는 팀
- 세션 유지, 다중 계정 병렬 처리, 실패 감지·재시도 구조를 다뤄 본 경험
- 구축 이후 유지보수를 지속할 수 있는 팀. 공식 API가 없어 화면 변경 대응이 계약 기간 내내 필요합니다.
- 우대: 리포트 자동 생성·발송 시스템 구축 경험, 커머스 데이터 처리 경험
[제안 요청 사항]
- 스토어 계정당 동시 가능 방송 수의 상한과 근거
- 방송 30건을 누락 없이 도는 순회 설계(순서·충돌·종료 감지)와, 기간 조회로 대체 가능한 범위
- 화면 구조 변경 감지·복구 방식과 대응 시간
- 수집 실패 판정 기준과 재시도·알림·발송 차단 방식
- 세션 유지·만료 처리 방식, 데이터 모델과 원본 보관 구조
- 유지보수 범위·대응 시간·비용, 추가 도입 검토 항목의 항목별 규모
[예산과 기간]
- 예산: 협의( 제안해주시기 바랍니다. )
- 기간: 착수 후 2~3개월 예상. 마감일은 지정하지 않으며 조기 완료를 우선합니다. 작업 제한 기간은 없습니다.
- 구체적 일정은 제안사가 제시한 안을 기준으로 협의합니다.
[산출물]
- 소스코드 및 배포 산출물
- 데이터베이스 설계서, 화면 정의서
- 운영 매뉴얼(수집 실패·세션 만료 대응 절차 포함)
- 리포트 템플릿 정의서
[계약 특이사항]
- 유지보수 조건을 계약에 포함합니다.( 비용 별도 협의 )
- 수집은 읽기 전용으로 동작하며 소비자 식별정보는 저장하지 않거나 비식별 처리합니다.
- 계정 자격증명은 암호화 저장·접근 이력 기록, 계약 종료 시 파기 절차를 정의합니다.
- 브랜드 계정 사용 권한의 확보·유지는 발주처 책임입니다.