diff --git a/card-settlement-migration/README.md b/card-settlement-migration/README.md new file mode 100644 index 0000000..8c13c0d --- /dev/null +++ b/card-settlement-migration/README.md @@ -0,0 +1,41 @@ +# Card Settlement Migration Module + +카드 정산 마이그레이션 모듈 + +## 개요 + +card-settlement-migration은 카드 정산 업무 규칙을 Spring 전환 시 보존하기 위한 불변식 정의 및 계산 로직을 포함합니다. + +## 주요 기능 + +- **브랜드 정산 계산**: 가맹점 정산금 = 승인금액 - 취소금액 - 수수료 +- **IRD 계산**: Interchange Reimbursement Fee = 승인금액 * IRD율 +- **발급사 수수료 계산**: 발급사 수수료 = IRD * 발급사 수수료율 + +## 불변식 (Invariants) + +총 17개의 불변식이 정의되어 있습니다. 자세한 내용은 `INVARIANTS.md`를 참조하세요. + +### 카테고리별 불변식 + +| 카테고리 | 불변식 수 | +|---|---| +| 브랜드 정산 | 4 | +| IRD | 3 | +| 발급사 수수료 | 5 | +| 공통 금액 검증 | 3 | +| 금액 정밀도 | 2 | + +## 빌드 및 테스트 + +```bash +mvn clean test +``` + +## Spring 전환 체크리스트 + +- [ ] SettlementCalculator Bean 등록 +- [ ] 정산요율, IRD율, 발급사 수수료율 기본값 설정 +- [ ] 금액 검증 어노테이션 적용 +- [ ] 반올림 정책 Bean 또는 Util 분리 +- [ ] 단위 테스트 및 통합 테스트 실행