< 작업 목록으로
HASH: 0x0003...2025.11
XRPL Payment Gateway
Payment System
시스템 설명
클라이언트가 서명한 XRPL 거래를 서버가 검증하고 전송하는 결제 게이트웨이입니다. XRP와 발행 자산을 지원하고 DestinationTag로 결제를 매칭해 워커에서 확정 상태를 추적합니다.
기술 스택
NestJSXRPL SDKPostgreSQLBullMQTypeORMDDD

ROLE: SOLO_DEVELOPERDOMAIN: BLOCKCHAIN
!
문제도전 과제
XRP(Native)와 Issued Currency 모두 지원하면서, 서명 키는 클라이언트에 두고 서버는 검증·전송·매칭을 안정적으로 수행해야 했습니다.
✓
해결해결 방식
tx_blob 디코딩/검증(수신 주소·금액·DestinationTag) 후 브로드캐스트하고, Payment ID 기반 DestinationTag(결정론적 생성)로 자동 매칭을 구성했습니다. BullMQ 워커로 validated/tesSUCCESS 및 태그 일치를 확인해 결제 확정 이벤트를 발행하는 구조를 구현했습니다.
구현 범위
클라이언트가 서명한 XRPL 거래를 서버가 검증하고 전송하는 결제 게이트웨이입니다. XRP와 발행 자산을 지원하고 DestinationTag로 결제를 매칭해 워커에서 확정 상태를 추적합니다.
증빙 자료
공개 가능한 증빙 자료가 등록되지 않았습니다.
기술 상세
개요
- ▶1인 개발로 진행한 XRPL 결제 게이트웨이입니다.
- ▶클라이언트 서명(tx_blob)과 서버 브로드캐스트를 분리해 키를 서버에 두지 않는 구조를 채택했습니다.
핵심 흐름
1) 결제 요청 생성/매칭
- ▶결제 식별을 위한 DestinationTag를 결정적으로 생성해 자동 매칭에 활용합니다.
2) 클라이언트 서명 → 서버 검증/전송
- ▶서버는 tx_blob를 디코딩해 수신 주소/금액/태그 등 핵심 필드를 검증한 뒤 브로드캐스트합니다.
3) 컨펌 모니터링
- ▶큐/워커 기반으로 트랜잭션 컨펌을 추적하고 결제 상태를 갱신합니다.
운영 포인트
- ▶XRPL 특성상 상태 변화가 비동기이므로 컨펌 추적, 실패 케이스 처리, 재시도 정책을 분리해 운영 가능하게 구성했습니다.