작업 목록
굿딜와인
쇼핑몰 주문·배송 상태 자동 동기화 시스템
쇼핑몰 주문의 운송장번호와 배송 상태를 물류사에서 자동으로 가져와 쇼핑몰에 반영하는 백엔드 시스템입니다. 스토어와 물류사를 추가로 붙일 수 있는 구조입니다.
- 기간
- 2026.07
- 고객사
- 굿딜와인
- 분류
- 웹앱, 관리자
- 서비스 주소
- gooddealwine.store(새 창)
해외 물류사로 와인을 배송하는 온라인 쇼핑몰 운영사가 쓰는 백엔드 시스템입니다. 주문마다 물류사 사이트에서 운송장번호와 배송 상태를 확인해 쇼핑몰에 손으로 옮겨 적던 일을 없앱니다. 주문이 생기면 웹훅으로 받아 발송 건을 만들고, 하루 5회 물류사 2곳에 조회해 운송장번호와 배송 상태를 쇼핑몰 주문에 자동 반영합니다. 데이터와 처리 로직은 Supabase 하나에 두고, 담당자 화면은 React Admin으로 Vercel에, 물류사 호출용 고정 IP 프록시는 AWS Lightsail에 둡니다. 어느 물류사에 맡겨진 주문인지 담당자가 지정하지 않고 시스템이 조회 결과로 자동 판별하도록 설계해 담당자 개입을 최소화했습니다.
서비스 화면




관리자



사용한 기술
- Shopify Admin API
- Shopify Webhook
- Supabase
- PostgreSQL
- Edge Functions (Deno)
- pg_cron
- Supabase Auth
- React Admin
- Vercel
- AWS Lightsail
- Docker
- TypeScript
화면
- React Admin — 담당자용 주문·발송 건·동기화 로그 관리 화면
- Supabase Auth 이메일 로그인, 소유자만 관리자 초대·삭제 가능
- Vercel에 배포, 접근 통제는 서버 코드 없이 DB 정책(RLS)으로 처리
서버 · 데이터
- Supabase Edge Functions — 웹훅 수신, 배송 상태 동기화, 관리자 관리
- 물류사 2곳을 같은 인터페이스의 어댑터로 감싸 상위 로직은 벤더를 모름
- pg_cron이 하루 5회 동기화 호출, 실행 시각은 담당자가 화면에서 변경
- 핵심 로직은 Deno/Node 겸용으로 작성해 Docker 없이 로컬에서 테스트
인프라
- Supabase — DB·인증·서버리스 함수·스케줄러를 한 곳에서 운영
- AWS Lightsail 고정 IP 프록시 — 물류사 IP 등록 대응, 로직과 키 없음
- Vercel — 관리자 화면 호스팅
- 스토어·물류사 자격증명은 환경변수로 분리, 스토어 추가 시 키만 추가
클라이언트 평가
위시켓에 남긴 평가입니다.
5.02026.07.28
기획 내용에 불확실한 부분들을 문서로 질의응답을 통해 발주사 니즈를 명확하고 꼼꼼하게 정리해주셨습니다.
이후 진행 과정에서 예정에 없던 별도 프론트엔드 콘솔을 Vercel로 구현해 API에서 연동되는 백엔드 데이터를 직접 확인하고 관리할 수 있도록 구현해 주셨습니다.
사용자 니즈 분석, 전문성과 끝까지 책임지는 적극성으로 기대 이상의 결과물이 도출되었습니다. 감사합니다.
유지보수 후기
피드백, 문제 해결에 빠르고 적극적으로 대응해주셨고
현상, 원인 해결 방법 까지 잘 정리해주셨습니다.