BEATOZ CPG (Core) - Crypto Payment Gateway
Payment Gateway
시스템 설명
1인 개발로 진행한 암호화폐 결제 게이트웨이 모노레포입니다. NestJS API + 체인별 모니터링 워커 + HMAC 서명 웹훅 + Admin/Merchant 대시보드로 구성했고, Strategy/Adapter 기반 결제 오케스트레이터를 중심으로 설계했습니다.
기술 스택

문제도전 과제
서로 다른 네트워크/결제 타입에서도 결제 상태(요청→탐지→확정→정산)가 일관되게 유지되어야 했고, API 플로우 뿐 아니라 ‘월렛 직접 전송’ 케이스까지 탐지/연결해야 했습니다. 또한 스토어(가맹점) 온보딩/공개 목록, 통합 결제 UX(위젯/세션/커스텀 결제), 커스터디 월렛, 인증/권한, 웹훅 신뢰성까지 운영 단위로 묶어야 했습니다.
해결해결 방식
스토어 페이지에서 사용할 수 있는 가맹점 공개 목록(`public-list`)과 Developer Site 전용 상점 등록(`register`, 자동 승인) 흐름을 구현하고, API Credential을 SSOT로 관리했습니다. 결제 오케스트레이터에서 Strategy/Adapter 선택 및 QR 데이터 SSOT 저장, 조건부 체인 스캔(직접 전송 탐지)과 캐시 기반 호출 제한을 구성했습니다. 결제 제품(통합 결제/위젯/커스텀 결제) API와 세션/상태 조회를 제공하고, 커스터디 월렛 관리 및 서명 서비스 구조를 포함했습니다. 모니터링/정산을 큐 분리 워커/프로세서로 비동기 처리하고, HMAC 서명 + 재시도/기록을 포함한 웹훅 전달 시스템을 구현했습니다.
구현 범위
1인 개발로 진행한 암호화폐 결제 게이트웨이 모노레포입니다. NestJS API + 체인별 모니터링 워커 + HMAC 서명 웹훅 + Admin/Merchant 대시보드로 구성했고, Strategy/Adapter 기반 결제 오케스트레이터를 중심으로 설계했습니다.
증빙 자료
공개 가능한 증빙 자료가 등록되지 않았습니다.
SYSTEM_COMPONENTS
Backend API
Payment Engine & Settlement기술 스택
하이라이트
- →Unified payment orchestrator (Strategy/Adapter)
- →Chain-specific workers & processors
- →Settlement queues & controllers
Dashboards
Admin & Merchant UI기술 스택
하이라이트
- →Admin dashboard
- →Merchant dashboard
- →Operational tooling
Payment Products
Widget / Session / Custom Payment기술 스택
하이라이트
- →Integrated payment sessions
- →Payment widget config
- →Custom payment flows
개요
- ▶1인 개발로 진행한 암호화폐 결제 게이트웨이 모노레포입니다.
- ▶API(결제/정산) + 네트워크 모니터링 워커 + 웹훅 + 운영 대시보드로 구성했습니다.
핵심 구성
0) 스토어(가맹점) 온보딩
- ▶스토어 페이지 등에서 가맹점 선택을 위한 공개 목록과, Developer Site 전용 상점 등록 플로우를 제공합니다.
1) 결제 오케스트레이션(Strategy/Adapter)
- ▶체인/결제 타입별 차이를 Strategy/Adapter로 분리해 확장 가능한 결제 엔진을 구성했습니다.
- ▶QR 데이터는 SSOT로 저장하고, 체인 타입에 따라 ‘직접 전송’ 감지/스캔 흐름을 연결했습니다.
1-2) 결제 제품(통합 결제/위젯/커스텀 결제)
- ▶통합 결제창 생성/설정, 결제 세션 시작 및 상태 조회, 커스텀 결제 플로우 등 “결제 UX 레이어”를 API로 제공합니다.
1-3) 커스터디 월렛(운영 키/서명)
- ▶커스터디 월렛 생성/요청/관리와 서명 서비스 구성을 포함합니다.
2) 모니터링 워커(큐 분리)
- ▶네트워크별 트랜잭션 탐지/컨펌 모니터링을 워커로 분리하고, 큐를 분리해 장애 전파를 줄였습니다.
3) 웹훅 전달(HMAC 서명 + 재시도)
- ▶외부 시스템 연동을 위해 HMAC 서명 웹훅과 재시도 정책을 구현했습니다.
- ▶웹훅 전달 결과(성공/실패/재시도)를 기록해 운영 추적이 가능하도록 구성했습니다.
4) 정산/운영 UI
- ▶Admin/Merchant 대시보드로 트랜잭션/정산/상태를 운영 가능하게 제공했습니다.