Skip to content

가격 규칙 ​

Leysys의 모든 제품이 요금을 계산할 때 따르는 공통 규칙입니다. 이 문서는 계산 규칙만 다룹니다. 금액은 플랫폼과 프로덕트마다 있는 가격표가 소유하며 이 문서에는 금액이 없습니다. 모듈·Core·플랫폼 같은 말의 뜻은 제품 구조와 용어를 따릅니다.

상태

  • 규칙: 2026-09-22 KST 오너 확정. 결정 기록은 저장소의 docs/decisions/PRICING-RULES-2026-09-22.md입니다.
  • 구현 확인 범위: 2026-09-22 KST leyve-center-proto의 프로토타입 계산기(src/domain/billing/product-billing.ts)에서 요금 규칙과 단가 대체만 확인했습니다. 최신 채택은 제품 문서·코드가 소유합니다. 공통 가격 규칙은 특정 결제 서버의 채택을 요구하지 않습니다(현재 제공 상태).
  • 설계 제안(2026-10-22 KST): P1의 축을 가격표 SKU의 구조화된 필드(지표 · 귀속 범위 · 주기 · 일할)와 콘솔이 기간마다 남기는 과금 지표 스냅샷으로 옮기는 제안이 저장소의 docs/decisions/BILLING-METRICS-RATE-CARDS-2026-10-22.md에 있습니다. 오너가 방향을 승인했지만 아직 규칙이 아니며, 구현 전까지 이 문서의 규칙을 그대로 따릅니다. 지금의 과금 구조는 과금 구조에 정리했습니다.

적용 범위 ​

이 문서가 소유다른 곳이 소유
요금을 어떻게 계산하는가얼마인가 — 각 가격표
계약 기간·청구 기간·일할 정책의 구분 — 청구 기간 정책유형의 실제 채택·만기 예외·청구 실행 — 각 제품
할인·할증을 어떻게 적용하는가 — 가격 조정어떤 쿠폰·프로모션을 운영하는가 — 각 플랫폼·브랜드
추가 요금과 정산 방식 — 추가 요금결제·구독의 상태 전이 — 결제 구현 참고
용어약관·환불 조건의 법적 문안 — 정책 센터

한눈에 ​

  • 요금 한 항목은 수량 × 단가이고 합계는 그 합입니다: y = Σ(수량 × 단가).
  • 무엇에(대상) 무엇을 세어(과금 지표) 얼마를(요율) 받는지와 지금 받는 요금은 과금 구조에 있습니다.
  • 기본료는 수량이 1인 항목입니다. 기본료와 사용량 요금을 별도 종류로 만들지 않습니다.
  • 모듈의 가격은 요금 규칙의 묶음입니다. 기본료만, 사용량 요금만, 또는 둘 다(ax + b)일 수 있고, 기본료가 조직·워크스페이스·자원 중 어디에 붙는지는 가격표가 정합니다.
  • 가격표의 필수 기본 항목은 하나입니다. 월 가격표는 Core(코어), 회의당 가격표(LeyVote · ArenVote)는 회의 개설비이고, 별도의 조직 기본료를 두지 않습니다.
  • 옵션과 모듈은 요금 규칙을 더합니다. 이미 있는 규칙의 단가를 바꾸지 않습니다.
  • 등급·패키지 이름은 모듈 묶음에 붙인 이름입니다. 계산기는 그 이름을 모릅니다.
  • 계산은 네 층입니다: ① 요금 규칙 → ② 가격 조정 → ③ 부가세 → ④ 결제·정정.
  • 할인과 할증은 같은 구조이고 방향만 다릅니다.
  • 도입비·외부 실사용료·배송비는 할증이 아니라 별도 요금 규칙입니다.
  • 같은 대상은 한 번만 셉니다.

용어 ​

회사 가격표(Pricebook)의 용어를 그대로 씁니다. 새 말을 만들지 않습니다.

용어뜻
정가 (List Price)요금표의 단가. 모든 할인·정산의 기준
쿠폰가 (Promo Price)쿠폰 조정이 적용된 결과. 별도의 가격 컬럼으로 두지 않습니다
파트너 정산가 (Partner Price)채널 파트너의 매입가. 가격표의 채널 축이며 고객에게 노출하지 않습니다
과금 유형 (Charge Type)기본료(Base) · 모듈(Module) · 부가 서비스(Add-on) · 사용량(Usage)
기본료 (Base Fee)활성화하면 사용량과 무관하게 과금 주기마다 붙는 고정 금액
Core가격표마다 하나인 필수 기본료 항목. 공통 모듈과 공통 서비스 이용을 포함하며, 부과 단위는 가격표의 판매 단위입니다
사용량 요금 (Usage Fee)부과 단위 1개당 붙는 변동 금액
부과 단위 (Billing Unit)요금이 곱해지는 대상: 조직·계약·관리 대상·직원·세대·유권자·회의·문서
과금 주기 (Billing Cycle)요금이 산정·청구되는 기간: 월 · 일 · 1회
외부 실사용료 (Pass-through Cost)문자·알림톡·전자문서 발행 등 제3자 비용이 드는 사용료. 문자·알림톡 발송은 Pricebook 발송 비용 가격표의 건당 단가(공급가)로 유상 · 무상 크레딧에서 차감하고(선결제 차감형), 그 밖의 것은 실비로 받습니다
가격 조정정가를 바꾸는 할인·할증·단가 대체
단가 대체한 계약만을 위해 합의한 금액. 요금표를 고치지 않습니다
공급가모든 표시가는 부가세 별도 공급가입니다

계산의 네 층 ​

층내용결과
①요금 규칙 × 대상 × 기간 → 청구 항목항목별 정가 금액
②가격 조정: 항목 수준 → 주문 수준항목별 순액(공급가)
③부가세세금 포함 합계
④결제, 그다음 사후 정정납부액

②까지가 가격이고 ③은 세금, ④는 결제와 정정입니다. 층을 넘나드는 규칙을 만들지 않습니다. 섞으면 세금계산서·환불·대상별 회계가 맞지 않습니다.

이 네 층은 청구형 요금의 순서입니다. 유상 · 무상 크레딧에서 바로 차감하는 요금은 추가 요금 — 정산 방식을 따릅니다.

규칙 ​

P1. 요금 규칙의 축 ​

청구 항목 하나는 수량 × 단가입니다. 요금 규칙은 다음 축으로 정의합니다.

축뜻값
귀속 범위어디에 붙는가조직 · 워크스페이스 · 자원(관리 대상, 회의 등) · 주문
부과 단위무엇을 세는가유닛 · 사람 · 문서 · 대상 자체
과금 유형고정인가 변동인가기본료(수량 1) · 사용량 요금(측정 수량)
과금 주기언제 붙는가월 · 일 · 1회
측정 방식수량을 어떻게 세는가P4
요율 함수수량이 금액으로 바뀌는 방식P5
단가요금표의 정가통화 최소 단위의 정수
정책 버전이 규칙을 승인한 정책미정이면 견적은 보류

귀속 범위와 부과 단위는 서로 독립입니다. 직원 수 × 단가는 조직에 귀속될 수도, 워크스페이스에 귀속될 수도 있습니다. 상위·하위 관계라는 이유로 요금을 자동으로 만들거나 상속하지 않습니다. 계약이 명시한 규칙만 합산합니다.

P2. 기본료는 수량 1인 항목 ​

기본료와 사용량 요금은 같은 계산을 씁니다. 기본료는 "대상 자체를 1로 세는" 항목입니다.

P3. 요금표는 불변이고 버전을 가집니다 ​

가격을 바꾸려면 새 가격 버전을 만듭니다. 기존 버전과 그 버전으로 만든 기록은 고치지 않습니다. 확정된 기록은 당시의 가격 버전·조건·단가·수량·기간·정책 버전을 복사해 보존합니다.

P4. 측정 방식 ​

사용량 요금은 수량을 어떻게 세는지를 규칙에 이름으로 남깁니다.

방식뜻예
LICENSED계약서에 적은 수량계약 유닛 수
SUM기간 중 값의 합발송 건수의 합
COUNT기간 중 발생 건수문서 발행 건수
LAST기간의 마지막 값월말 직원 수
MAX기간 중 최대치월 중 최대 직원 수
UNIQUE기간 중 고유 대상 수회의 기간 중 투표자 수

계산기는 달력이나 원장을 읽지 않습니다. 호출자가 승인된 정책으로 해석을 끝낸 수량과 정책 버전을 전달합니다. 시작일·종료일에서 과금일을 임의로 추론하지 않습니다. 확정된 기록에 들어간 수량은 고치지 않고 정정으로 처리합니다.

P5. 요율 함수 ​

지금은 선형(수량 × 단가)만 구현합니다. 아래는 가격표가 필요로 할 때 도입하며, 도입해도 요금 규칙의 식별자와 청구 식별자는 바꾸지 않습니다.

요율계산
구간 합산구간마다 다른 단가를 적용해 합산합니다
구간 단일전체 수량에 해당 구간의 단가 하나를 적용합니다
구간 정액구간에 고정 금액을 더합니다
묶음수량을 묶음 크기로 나눈 뒤 올림 또는 내림합니다
최소 기간 + 증분최소 기간을 채운 뒤 증분 단위로 올림합니다
기본 제공 후 초과첫 구간의 단가가 0인 구간 합산입니다

P6. 계약 전용 금액은 단가 대체입니다 ​

한 계약만을 위한 금액은 요금표를 고치지 않고 그 계약에 둡니다. 단가 대체가 없는 항목은 정가를 따르고 요금제 변경을 그대로 반영합니다. 단가 대체가 있는 항목은 요금제를 바꿔도 유지됩니다. 0원은 명시적으로 합의한 금액이며 미설정과 다릅니다.

P7. 추가 요금은 별도 요금 규칙입니다 ​

도입비, 데이터 이관비, 교육비, 외부 실사용료, 배송비는 가격 조정이 아닙니다. 각각 자기 귀속 범위·부과 단위·과금 주기를 가진 요금 규칙입니다. 자세한 내용은 추가 요금과 정산 방식에 있습니다.

P8. 금액과 끝수 ​

금액은 통화 최소 단위의 정수 공급가입니다(KRW는 원). 부동소수점으로 화폐를 계산하지 않습니다. 끝수는 청구 항목마다 한 번 처리합니다. 단가에서 처리하면 오차가 수량만큼 곱해집니다.

P9. 최소 수량과 최소 기간 ​

판매 조건에 "최소 N 단위"나 "최소 N일"이 있으면 그 값을 요금 규칙에 둡니다. 화면이나 영업 안내문에만 두지 않습니다.

  • 최소 수량은 청구 수량의 하한입니다. LICENSED 수량은 계약할 때 최소 수량 이상이어야 하고, 미달이면 계약을 사유와 함께 거부합니다. 측정하는 수량은 max(측정 수량, 최소 수량)으로 청구하고 청구 항목에 두 수량을 모두 기록합니다.
  • 계약 수량이 실제 수량보다 작을 수 없다는 조건도 같은 자리에 둡니다.
  • 최소 수량의 기준이 조직 합계인지 자원마다인지는 요금 규칙이 명시합니다.
  • 최소 기간은 요율 함수의 "최소 기간 + 증분"입니다.
  • 기본료에 딸린 한도(자원 수, 안건 수 등)는 요금이 아니라 이용 조건입니다. 한도를 넘을 때 차단할지 추가 요금을 받을지는 가격표가 정하고, 추가 요금이면 별도 요금 규칙입니다.
  • 금액 기준의 최소 요금("미달 차액")과 약정은 1차 범위 밖입니다. 필요해지면 미달 차액 항목을 만드는 요금 규칙으로 추가합니다.

P10. 같은 대상은 한 번만 셉니다 ​

같은 부과 단위의 대상이 여러 모듈에 걸쳐 있어도 사용량 요금은 한 번만 계산합니다. 대상의 식별자와 계약 수량은 워크스페이스를 옮기거나 이름을 바꿔도 유지되며, 이동은 새 요금의 발생이 아닙니다.

P11. 미정은 0원이 아닙니다 ​

등록되지 않은 수량과 정해지지 않은 단가·정책은 0이 아닙니다. 그런 견적은 보류 상태이고 금액을 확정하거나 결제를 시작할 수 없습니다. 불명확한 배분을 자동으로 균등 분배하지 않습니다.

P12. 청구 식별자는 안정적입니다 ​

청구 식별자는 계약·항목(Core·모듈·부가 서비스)·요금 규칙·대상·발생 구간으로 정합니다. 같은 기록의 재시도는 중복되지 않습니다. 같은 식별자의 금액을 바꾸려면 원본을 두고 정정 기록을 더합니다.

P13. 모듈의 가격은 요금 규칙의 묶음입니다 ​

Core·모듈·부가 서비스의 가격은 요금 규칙 하나 이상으로 이루어집니다.

구성식예
기본료만b조직당 월 정액인 업무 모듈
사용량 요금만a·x유권자당 요금인 부가 서비스
복합a·x + b회의당 Core + 유권자·일 요금

기본료가 어디에 붙는지는 가격표가 정합니다. 계산 구조는 같고 값만 다릅니다.

귀속 범위기본료가 붙는 대상
조직그 모듈을 쓰는 조직. 몇 개의 워크스페이스에서 켜든 한 번
워크스페이스그 모듈을 켠 워크스페이스마다
자원그 모듈을 쓰는 자원(관리 대상, 회의 등)마다
  • 활성화 범위와 과금 귀속 범위는 다른 것입니다. 활성화는 권한이고 귀속 범위는 요금입니다. 모듈을 워크스페이스에서 켜더라도 과금이 조직 기준이면 조직당 한 번만 붙습니다.
  • 기본료 항목의 대상은 "그 모듈이 활성화된 범위 안에서 귀속 범위에 해당하는 대상"입니다. 계산기는 활성화 상태를 추론하지 않습니다. 호출자가 요금 규칙마다 적용 대상을 전달합니다.
  • 사용량 요금은 모듈 전용일 수도, 여러 모듈이 공유할 수도 있습니다. 공유하는 사용량 요금은 P10에 따라 같은 대상을 한 번만 셉니다.
  • 한 가격표 안에서 귀속 범위를 섞을 수 있습니다. 섞을 때에는 모듈마다 귀속 범위를 가격표에 명시합니다.

옵션은 요금 규칙을 더합니다 ​

옵션·부가 기능·모듈을 고르면 요금 규칙이 추가됩니다. 이미 있는 규칙의 단가는 바뀌지 않습니다.

  • "옵션을 켜면 단위당 단가가 오른다"는 가격은 단가 변경이 아니라, 같은 부과 단위에 붙는 그 옵션의 사용량 요금입니다. 청구 항목이 옵션별로 나뉘므로 무엇에 얼마가 붙었는지 드러납니다.
  • 옵션의 부과 단위는 그 옵션의 원가와 가치가 비례하는 단위로 정합니다. 사람마다 비용이 드는 기능은 사람당, 수량과 무관한 기능(외부 연동 등)은 조직 정액입니다. 건마다 제3자 비용이 드는 부분은 외부 실사용료로 분리합니다.
  • 어떤 모듈을 켰을 때만 발생하는 사용량 요금은 그 모듈의 요금 규칙입니다(예: 인사관리 모듈의 직원당 요금). 모듈을 끄면 함께 사라집니다.

Core, 단품, 추천 구성 ​

  • 가격표마다 필수 기본 항목이 하나 있습니다. 월 가격표는 Core(코어), 회의당 가격표(LeyVote · ArenVote)는 회의 개설비입니다(2026-10-22 KST). 필수 기본 항목은 모든 계약에 들어가고 고객이 뺄 수 없으며, 계산은 다른 기본료 항목과 같습니다. 별도의 조직 기본료를 두지 않고, 업무 모듈을 여러 개 켜도 필수 기본 항목은 판매 단위마다 한 번입니다.
  • 프로덕트 가격표는 떼어 낸 업무 모듈을 Core처럼 필수로 둘 수 있습니다(LeyCERP의 관리비관리, 2026-10-21 KST). 플랫폼 가격표의 모듈은 필수가 아닙니다.
  • 필수 기본 항목의 귀속 범위는 가격표의 판매 단위입니다. 플랫폼과 LeyCERP의 코어는 조직, LeyVote · ArenVote의 회의 개설비는 회의(자원)입니다.
  • 모듈은 Core와 함께 단품으로 팔 수 있습니다. 추천 구성에 들어 있다는 이유로 단품 판매를 막지 않습니다. 업무 모듈은 다른 업무 모듈을 필수로 요구하지 않으며, 모듈이 필요로 하는 공통 모듈은 Core에 들어 있습니다(의존 규칙).
  • 추천 구성(Preset)과 등급 이름은 모듈 묶음에 붙인 이름일 뿐 별도 가격이 아닙니다. 가격은 포함된 모듈의 합이고 계산기는 묶음의 이름을 모릅니다. 묶음에만 주는 혜택은 가격 조정의 자동 규칙(묶음 구매)으로 표현합니다.

구현 상태

프로토타입 계산기는 요금 규칙을 그 귀속 범위의 모든 대상에 적용합니다. 조직 기준 모듈은 지금도 맞게 계산되지만(조직은 하나), 워크스페이스·자원 기준 모듈은 "켠 곳에만" 붙일 수 없어 과다 계산됩니다. 그 기준의 모듈을 붙이기 전에 요금 규칙별 적용 대상이 필요합니다. 2026-09-22 KST 실측.

가격 단계의 위치 ​

가격 단계이 규칙에서의 위치
정가①층. 요금표의 단가
쿠폰가②층의 결과. 쿠폰은 가격 조정이며 가격표에 두 번째 가격 컬럼을 두지 않습니다
파트너 정산가①층의 채널 축. 할인으로 표현하지 않으며 금액과 비율은 공개하지 않습니다

가격 단계는 요금 규칙마다 있습니다. 묶음의 단계별 가격은 포함된 규칙의 같은 단계 금액을 더한 값이며, 묶음에만 따로 매긴 단계별 가격을 두지 않습니다. 그렇게 두면 단품으로 팔 때의 가격을 도출할 수 없습니다.

쿠폰가를 가격표의 두 번째 컬럼으로 두는 방식은 쿠폰이 하나일 때만 성립합니다. 쿠폰의 종류·기간·중복 규칙을 표현할 수 없으므로 쿠폰은 가격 조정으로 표현합니다.

다음 문서 ​