
Flask로 리셀 관리 시스템을 혼자서 만든 이야기 (BUYMA × Buyandship)
요약
Flask와 AI/LLM을 활용하여 리셀 비즈니스 프로세스를 자동화한 시스템 구축 사례를 소개합니다. 상품 등록 파이프라인, 가격 스크레이핑, 주문 상태 머신 및 AI 챗봇 구현 과정을 다룹니다.
핵심 포인트
- Flask 기반의 모듈형 아키텍처 설계 및 구현
- Playwright와 프록시를 활용한 안정적인 가격 스크레이핑
- Gemini, OpenAI, DeepSeek를 활용한 다단계 AI 챗봇 구성
- TDD를 통한 시스템 안정성 확보 및 Webhook 연동
서론
BUYMA(바이마)와 Buyandship을 이용한 리셀(Resale) 비즈니스. 상품 등록, 가격 조정, 발주, 고객 대응…… 모든 것을 수작업으로 하면 하루가 다 지나가 버립니다.
저는 이 일련의 업무를 Flask Web 앱 + AI/LLM으로 자동화하는 시스템을 혼자서 만들었습니다.
본 기사에서는 이 atelier-kyo-manager의 설계와 구현을 해설합니다.
시스템 개요
atelier-kyo-manager (Flask App Factory)
├── Blueprint (6개 모듈)
│ analytics / orders / partners / products / misc / warehouse_webhook
...
시스템 아키텍처
주요 기능의 설계 사상
1. 상품 등록 파이프라인 자동화
이미지 수집 → AI 배경 제거 → AI 설명문 생성 → 상품 등록 텍스트 생성 을 일괄 실행:
# pipeline_service.py — 4단계를 직렬 실행
class PipelineService:
def execute(self, product_id: int):
...
고안 사항: rembg (AI 배경 제거)는 GPU가 필요하지 않습니다. CPU로 장당 5초 소요됩니다.
2. 가격 스크레이핑 (Playwright)
공급처 사이트의 가격을 헤드리스 브라우저(Headless Browser)로 자동 취득:
# price_scraper.py
class PriceScraper:
def __init__(self):
...
고안 사항:
- 24시간 캐시로 중복 스크레이핑 방지
- Cloudflare 감지 시의 에러 핸들링
- 프록시 (Webshare/BrightData)를 경유하여 IP Ban 회피
3. 주문 상태 머신 (State Machine)
주문의 상태 전이를 자동 관리:
pending → sourcing → cart_added → checkout → payment_done → shipped → completed
각 상태의 타임아웃 및 자동 에스컬레이션(Escalation) 포함. 18일 규칙(결제 방법별 연장 기한)도 자동 계산:
| 결제 방법 | 연장 기한 |
|---|---|
| 신용카드 | 45일 |
| ... |
4. AI 챗봇 (3단계 분류)
고객으로부터의 문의를 자동 분류:
FAQ 템플릿 매칭 → AI 답변 생성 → 에스컬레이션 판정
↓ ↓ ↓
즉시 자동 답장 | AI 생성 답변 | 수동 대응으로
사용 LLM: Gemini → OpenAI → DeepSeek (폴백(Fallback) 포함)
5. 창고 Webhook 연동
Forward2me (배송 대행 창고)의 화물 수령 이벤트를 Webhook으로 수신:
- HMAC-SHA256 서명 검증으로 사칭 방지
- 수령 사진의 자동 다운로드 및 관리
- Slack 알림으로 즉시 상태 반영
테스트 전략
테스트 주도 개발 (TDD)로 품질을 담보:
76 tests passed, 0 failed
- auth (10건) ・ pricing_rules (9건) ・ run_context (13건)
- product (21건) ・ config_loader (9건) ・ notification_service (14건)
기술 선정 이유
| 기술 | 이유 |
|---|---|
| Flask | 경량이며 학습 비용이 낮음. AI 생성 코드와 궁합이 좋음 |
| ... |
어려웠던 점
스크레이핑의 안정성
사이트마다 DOM 구조가 다름. Cloudflare에 의해 차단됨. → Playwright + 프록시 + 캐시로 안정화.
LLM 비용 관리
월간 15억 토큰 소비. → GLM-5.1 (메인) + MiniMax (폴백)의 2층 구조로 최적화.
18일 규칙의 복잡성
결제 방법, 발송 상황, 취소 여부에 따라 기한이 변함. → 상태 머신(State Machine)으로 일원 관리.
성과
예약 ~ 결제 플로우
- 상품 등록 작업 시간: 수동 2시간 → 자동 15분
- 가격 모니터링: 수동 확인 → 자동 스크레이핑 (1일 3회)
- 고객 대응: 전량 수동 → 70% 자동 답장
- 월간 작업 시간: 약 50% 절감
코드
관련 기사
- Selenium → Playwright 이전을 통한 스크레이핑 안정화 — 가격 모니터링 스크레이핑 개선 기법
- LINE Bot × Stripe × Cloudflare를 이용한 예약 시스템 구축 — 물품 판매 관리의 연장선에 있는 예약 관리
- 공무원이 20개의 리포지토리(Repository)로 살아남는 전략 — 개인 개발 전체의 포트폴리오 전략
이 기사는 Claude Code(GLM-5.1)와 함께 작성되었습니다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기