📜 정책 문서

구독·결제 정책 v0.1.0

문서 버전 v0.1.0 · 발행일 2026-07-14 · 적용 대상 구독·결제 서버 v0.1.3 (요금제 변경 r02 포함)
독자: 서비스 운영자·담당자 — 기술 세부(API 명세)는 docs/user_manual 13장을 참고하세요.
목차
  1. 개요와 용어
  2. 서비스 등록과 인증
  3. 요금제 정책
  4. 구독 생명주기 정책
  5. 요금제 변경 정책
  6. 결제·환불 정책
  7. 운영자 개입과 기록
  8. 부록 — 기본값·상태표·문서 이력

1.개요와 용어

이 서버는 사내 여러 서비스가 공용으로 쓰는 구독·결제 처리 서버입니다. 각 서비스는 자기 요금제를 만들고, 자기 사용자의 구독과 결제를 이 서버에 위임합니다. 실제 카드 결제는 토스페이먼츠를 통해 처리됩니다.

용어의미
서비스이 서버를 이용하는 사내 서비스 한 개. 서비스마다 API 키와 토스 결제 키를 따로 가진다.
사용자각 서비스의 최종 고객. 이 서버에서는 이메일 주소만으로 식별한다(소문자로 정규화해 저장).
요금제서비스가 만든 구독 상품(가격·결제주기·할인 규칙).
구독사용자 한 명이 요금제 하나를 이용 중인 상태. 만료일마다 자동으로 결제·연장된다.
카드 보관함사용자별로 등록해 두는 결제 카드. 구독·결제는 항상 이 카드로 청구된다.
단건(일반) 결제구독과 무관한 1회성 결제.

2.서비스 등록과 인증

3.요금제 정책

결제 주기

가격과 할인

회차별 할인 적용 — 한 회차에는 한 종류만 (중첩 없음) 1회차 — 첫구독 혜택 정가 기준 · 무료/정액/정률 2회차 — 상시 할인가 정가 − 상시 할인 3회차 — 상시 할인가 매 갱신 동일 첫구독 혜택은 사용자당 평생 1회 — 재구독하면 2회차 규칙(상시 할인가)으로 시작합니다.
⚠️

구독이 남아 있는 요금제는 삭제할 수 없습니다. 신규 가입만 막으려면 보관(ARCHIVED) 처리하세요 — 기존 구독은 그대로 유지·갱신됩니다.

4.구독 생명주기 정책

기본 규칙

상태 흐름

서비스 이용 가능 이용 가능(주의) 이용 차단 체험 TRIAL 이용중 ACTIVE 연체 PAST_DUE 정지 SUSPENDED 만료 EXPIRED 첫 결제(카드 有) 결제 실패 재시도 소진 유예 초과 체험 만료 시 카드 미등록 — 결제 없이 즉시 만료 재시도 성공 · 수동 결제 수동 결제(복귀 · 기준일 리셋) 취소예약 CANCELED 만료일까지 이용 취소 재개(만료 전) 만료일 도래 ※ 운영자가 만료일을 수동 연장하면 연장처리(EXTENDED) 상태 — 이용 가능하며, 새 만료일에 자동결제로 갱신됩니다. ※ 만료(EXPIRED)는 최종 상태 — 보관 카드·빌링키가 제거되며, 다시 이용하려면 재구독합니다.
상태서비스 이용설명
체험 TRIAL허용결제 없이 시작 — 카드 등록도 필수가 아닙니다. 만료일에 카드가 있으면 첫 자동결제, 없으면 즉시 만료. 체험 중 취소하면 즉시 종료됩니다.
이용중 ACTIVE허용정상 상태. 만료일에 자동연장.
연체 PAST_DUE허용자동결제 실패 후 재시도 중. 이용은 유지됩니다.
정지 SUSPENDED차단재시도 소진. 자동결제 중지 — 수동 결제로만 복구.
취소예약 CANCELED허용취소했지만 만료일까지 이용 가능. 만료 전이면 재개할 수 있습니다.
연장처리 EXTENDED허용운영자가 만료일을 수동 연장한 상태. 새 만료일에 자동결제로 갱신.
만료 EXPIRED차단완전 종료(최종 상태). 보관 중이던 카드·빌링키도 제거됩니다. 다시 쓰려면 재구독.
💡

취소는 즉시 종료가 아닙니다. 이미 결제한 기간(만료일)까지는 그대로 이용하고, 만료일에 자동으로 종료됩니다. 별도 환불은 없습니다.

5.요금제 변경 정책 r02 신규

구독 중에도 다른 요금제로 갈아탈 수 있습니다. 이용중(ACTIVE) 구독만 변경할 수 있으며, 방향 판정 기준은 상시 할인 적용가(실제 정기 결제액)입니다.

요금제 변경 결정 흐름 요금제 선택 새 금액 ≥ 현재? (상시할인가 비교) 예 — 업그레이드(즉시) ① 즉시 결제 실패 시 변화 없음 ② 전환 + 기간 리셋 지금부터 새 주기 ③ 미사용분 환불 지정액 또는 일할계산 아니오 — 다운그레이드(예약) 예약 저장 즉시 결제·환불 없음 다음 결제일 — 새 금액 자동 결제 · 전환 그때까지 현재 요금제 그대로 이용 ※ 같은 금액이면 업그레이드로 처리 · 예약은 덮어쓰기/취소 가능 · 갱신 결제 진행 중에는 잠시 거부(재시도)
구분조건처리
업그레이드
즉시 전환
새 요금제 금액 현재 금액
(같은 금액도 업그레이드)
① 새 요금제 금액을 즉시 결제 → ② 요금제 전환 + 이용기간을 지금부터 새로 시작 → ③ 기존 결제의 미사용분 환불
다운그레이드
예약 전환
새 요금제 금액 < 현재 금액 즉시 결제·환불 없음. 다음 결제일까지 현재 요금제를 그대로 이용하고, 결제일에 새(낮은) 요금제 금액이 자동 결제되며 전환

업그레이드 환불액 산정

일할계산 환불 예시 — 30,000원 · 30일 주기, 12일 사용 시점에 업그레이드 사용한 12일 남은 18일 → 환불 대상 결제일(시작) 변경 시점(오늘) 원래 만료일 환불액 = 30,000원 × 18일 ÷ 30일 = 18,000원 실제 계산은 초 단위 비례(원 미만 내림)이며, 해당 결제의 잔여 환불가능액을 넘지 않습니다.

안전 규칙

다운그레이드 예약 관리

🔍

어드민에서 확인: 구독 상세 화면에 요금제 변경 이력(전→후 요금제·결제액·환불액)과 결제 이력의 환불액이 표시되고, 예약 중이면 "요금제 변경 예약" 항목이 보입니다. 감사 로그에는 이름·금액·기간 변화·환불 결과까지 전부 기록됩니다.

6.결제·환불 정책

자동결제 실패 처리

결제 실패 처리 타임라인 (기본값 기준) 어느 시점이든 수동 결제 성공 → 즉시 이용중(ACTIVE) 복귀 연체 PAST_DUE — 이용 유지 12시간 간격 자동 재시도 (최대 4회) 실패 1차 2차 3차 4차 정지 SUSPENDED — 접근 차단 자동결제 중지 · 유예 30일 만료 EXPIRED 실패·정지 시점에 담당자 이메일 발송 · 재시도 횟수/간격/유예는 전체 설정에서 조정
🛡️

타임아웃은 실패가 아닙니다. 결제 결과를 알 수 없을 때는 실패 처리하지 않고 보류했다가, 10분 유예 후 정산 절차가 토스에 실제 결과를 확인해 확정합니다 — 이중결제를 막기 위한 규칙입니다.

단건(일반) 결제와 취소

7.운영자 개입과 기록

운영 기능정책
수동 재결제연체·정지 구독을 어드민에서 즉시 재청구. 성공 시 이용중 복귀 + 기준일 리셋.
만료일 연장운영자가 만료일을 지정 연장(상태: 연장처리). 새 만료일에 자동결제로 갱신. 만료된 구독은 연장 불가(재구독으로).
사용일 추가이용 중 구독의 만료일·결제일을 지정 일수만큼 미룸(1~3,650일, 상태 불변, 결제 없음).
강제 취소운영자가 구독을 취소예약 상태로 전환(사용자 취소와 동일하게 만료일까지 이용).

기록과 알림

8.부록

전체 설정 기본값

항목기본값비고
자동결제 재시도 횟수4회어드민 → 전체 설정에서 조정, 다음 배치부터 적용
재시도 간격12시간
정지 후 만료 유예30일
단건 결제 1회 상한100,000,000원
요금제 정가 상한900,000,000원
사용일 추가 상한3,650일
어드민 로그인 잠금연속 실패 5회일정 시간 후 자동 해제

정책 요약 한 줄씩

문서 이력

버전일자내용
v0.1.02026-07-14최초 발행 — 서버 v0.1.3 기준(요금제 변경 r02, 감사로그 완전 기록 포함). 같은 날 보강: 다이어그램 5종, 체험(trial) 카드 선택화 정책(카드 없이 시작 · 만료 시 무카드면 즉시 만료)