결제 시스템 소개
계좌와 결제의 차이점
•
계좌는 이미 있는 계좌의 잔액을 변경
•
결제는 새로운 주문이 생성되면서 주문의 하위 거래(결제, 취소 등)도 생성됨
◦
결제 요청 저장을 위해 주로 2회 트랜잭션으로 처리
•
주문 : 거래(트랜잭션) = 1:N 관계
◦
결제 트랜잭션은 M개, 취소 트랜잭션은 N개
◦
트랜잭션의 종류로 구분 : 결제, 취소, 망취소
•
가맹점 - 결제 - 계좌 간 연동 관계
◦
가맹점의 가맹점 주문ID, 결제ID, 계좌거래ID
▪
대사(Reconciliation)란?
•
화해, 고해성사 등을 의미 → 문제가 되는 것을 확인하여 해결함
•
양자를 서로 비교 대조해서 차이를 없애고 같은 값이 되도록 하는 과정
결제 시스템 도메인
결제 사용자(PaymentUser)
•
결제 시스템의 고유한 사용자를 저장하는 테이블
•
계좌 시스템의 사용자 아이디와 계좌 번호를 알고 있어서 계좌 시스템에 거래 요청 시 필요
주문(Order)
•
사용자가 결제를 진행할 때 신규로 생성되는 테이블
•
결제와 환불 등 여러 거래의 마스터 테이블로 구성됨
주문의 세부 거래(Transaction)
•
주문의 세부 트랜잭션을 담는 테이블
•
거래의 타입과 상태, 금액을 저장
•
자체 거래번호(transactionId), 가맹점의 거래번호, 결제수단의 거래번호를 저장하여 대사와 정산 처리할 때 활용