MONE 히어로 이미지

MONE

선상 면세점을 위한 풀스택 통합 관리 시스템

Django
Python
Next.js
TypeScript
PostgreSQL
DRF

MONE는 선상 면세점 운영 전반을 디지털화한 통합 관리 시스템입니다. 예약·주문·결제부터 재고 관리, 경비·정산, 인사/급여, 경영 분석까지 면세점 업무의 전 도메인을 하나의 플랫폼에서 처리할 수 있도록 설계되었습니다. Django REST Framework 기반 백엔드와 Next.js 승객 웹으로 구성된 풀스택 프로젝트입니다.

Overview

MONE는 두 개의 서브 프로젝트로 구성됩니다. mone-core는 Django 기반 백엔드로 예약, 주문, 결제, 재고, 정산, 인사급여 등 모든 도메인의 API와 어드민 인터페이스를 제공합니다. mone-customer는 승객이 직접 상품을 조회하고 예약·결제할 수 있는 Next.js 기반 승객 전용 웹 프론트엔드입니다.

MONE 대시보드

Problem

수기 기반 업무

선상 면세점의 재고·정산·경비 관리가 Excel이나 수기 장부에 의존해 오류와 지연이 빈번했습니다.

도메인 분절

예약, 주문, 결제, 재고, 정산이 각각 다른 시스템에 흩어져 있어 데이터 정합성 유지가 어려웠습니다.

승객 접점 부재

선상에서 승객이 직접 상품을 사전 예약하거나 결제할 수 있는 디지털 채널이 없었습니다.

Solution

Django DRF 기반으로 13개 도메인(예약, 주문, 결제, 재고, 상품, 항차, 마감, 정산, 구매·발주, 인사·급여, 비용, 고객·회원, 프로모션)을 모놀리식 구조로 통합했습니다. 각 도메인은 독립적인 앱으로 분리되어 있으며, DRF ViewSet과 Serializer 기반으로 일관된 REST API를 제공합니다.

  • 예약 → 주문 → 결제 → 재고 차감의 완전한 트랜잭션 흐름 구현
  • 항차(Voyage)별 재고 독립 관리 및 면세한도 자동 검증
  • 고정비용·변동비용 분리 관리 및 월별 비용현황 Excel 내보내기
  • 월별마감보고 및 매출정산보고 자동 생성
  • 쿠폰·마일리지·프로모션 할인 계산 엔진 구현
  • 비밀번호 90일 만료, 로그인 5회 실패 잠금 등 보안 정책 내재화
MONE 비용 관리 화면

Key Features

MONE 정산 관리 화면

정산 & 경영 분석

월별마감보고, 매출정산보고, 부가세신고자료를 자동 생성합니다. 매출·매입·경비·손익 탭으로 분리된 월별 마감 보고서와 KRW·JPY·CNY 다중 통화 결제 현황을 한눈에 확인할 수 있습니다. 경영분석 화면에서 항차별·카테고리별 매출 추이를 대시보드로 조회할 수 있습니다.

승객 전용 예약 웹

Next.js 기반 승객 전용 웹(mone-customer)에서 탑승 예정 승객이 상품을 사전 예약하고 Toss 결제 위젯으로 온라인 결제할 수 있습니다. React Context API로 인증 상태와 글로벌 UI를 관리하고, Axios 기반 공통 API Client로 백엔드와 통신합니다.

MONE 목록 화면

Tech Stack

Backend (mone-core)

Python 3.12
Django 6.0
Django REST Framework
PostgreSQL
SQLite (개발)
Swagger / drf-yasg
ruff / black / isort
Playwright (테스트)
Docker

Frontend (mone-customer)

Next.js (App Router)
TypeScript
React Context API
Axios
Toss 결제 위젯
Zod
Tailwind CSS
Orval (API codegen)

My Role

백엔드 풀스택 개발

  • 13개 도메인 모델 설계 및 DRF API 구현
  • 예약→주문→결제→재고 트랜잭션 흐름 설계
  • 경비·정산 자동화 및 Excel 내보내기 구현
  • 보안 정책(비밀번호 만료, 로그인 잠금) 내재화
  • Playwright 기반 E2E 테스트 작성

프론트엔드 개발

  • Next.js App Router 기반 승객 웹 구조 설계
  • Orval을 활용한 API 타입 자동 생성
  • Toss 결제 위젯 연동 및 결제 플로우 구현
  • React Context API로 인증·UI 전역 상태 관리
  • 어드민 인터페이스 Django Admin 커스터마이징