나우 스윙 결제 구현 공식 참고 내용
2026. 1. 20. 10:39ㆍ나의 참고 자료
반응형
1. 글로벌 표준 결제 계산 공식
글로벌 결제에서 가장 권장되는 할인 적용 순서는 **[수량 기반 총액 → 멤버십 할인 → 쿠폰 할인]**입니다.
최종 결제 금액 = ((판매가 × 수량) - 멤버십 할인 - 쿠폰 할인) + 세금 + 기타 수수료
2. 항목별 상세 로직 및 공식
① 멤버십 할인 (Membership Discount, Dm)
멤버십은 상시 혜택으로 가장 먼저 적용됩니다. **중간 계산 정밀도(4자리 이상)**를 유지하는 것이 핵심입니다.
- 공식: Dm = (Price × Qty) × Rm
- Price: 원래 판매가 (Base Price)
- Rm: 멤버십 할인율 (예: 10% = 0.1)
- Dm: 멤버십 할인 금액
② 쿠폰 할인 (Coupon Discount, Dc)
멤버십 할인이 적용된 후의 '잔액'에서 차감하는 방식이 일반적입니다.
- 공식 (정률): Dc = ( (Price × Qty) - Dm ) × Rc
- Rc: 쿠폰 할인율 (예: 5% = 0.05)
- 공식 (정액): Dc = 고정 할인 금액 (예: $10)
- 제약 조건: Dc는 설정된 '최대 할인 한도'를 초과할 수 없습니다.
③ 최종 결제 금액 (Final Payment)
모든 할인이 끝난 후 세금과 수수료를 더해 최종 금액을 산출합니다.
- 공식: 최종 금액 = ( (Price × Qty) - Dm - Dc ) + Tax + Fees
3. 통화별 소수점 규격 (Currency Precision)
글로벌 시스템에서는 통화 코드(ISO 4217)에 따라 최종 금액의 자릿수를 다르게 처리해야 합니다.
| 통화 유형 | 해당 국가/통화 (예시) | 소수점 자리수(Scale) | 처리 예시 |
| 0단위 통화 | KRW(한국), JPY(일본), VND(베트남) | 0 | 1,234.56 → 1,235 |
| 2단위 통화 | USD(미국), EUR(유럽), CNY(중국) | 2 | 12.3456 → 12.35 |
| 3단위 통화 | KWD(쿠웨이트), JOD(요르단), BHD(바레인) | 3 | 1.2345 → 1.235 |
4. 실무 구현 핵심 체크리스트
- 계산 정밀도 (The 4-Decimal Rule):
- 3자리 통화(KWD 등)가 존재하기 때문에, 모든 중간 할인 계산은 최소 소수점 4자리 이상에서 수행해야 반올림 오차를 완전히 방지할 수 있습니다.
- 연산 타입: double이나 float은 금지하며, Java의 BigDecimal이나 각 언어의 고정 소수점 라이브러리를 사용하세요.
- 최종 라운딩 (Final Rounding):
- 모든 할인은 기준 통화(예: USD)의 4자리 정밀도로 계산을 마칩니다.
- 실제 결제 요청 직전에만 해당 국가 통화의 자릿수(0, 2, 3)에 맞춰 반올림(HALF_UP) 처리합니다.
반응형
'나의 참고 자료' 카테고리의 다른 글
| 나우스윙 예약 할인 케이스 (0) | 2026.03.03 |
|---|---|
| 나우스윙 vpc cidr 서브넷팅 목록 (1) | 2026.01.21 |
| 크레이지 아케이드 최적화 설정 (0) | 2026.01.19 |
| 글로벌 골프 예약 플랫폼 결제 및 환율 운영 전략 (0) | 2026.01.16 |
| 직접 USD 변환 결제 vs 현지통화로 결제 (0) | 2026.01.15 |