정책 규칙이란?
**정책 규칙(Policy Rule)**은 조건 → 액션 쌍입니다. 입력 팩트가 조건을 만족하면 규칙의 액션이 실행됩니다. 규칙은 우선순위 순서로 평가됩니다 (0 = 최우선).조건 구문
조건은SINGLE과 GROUP 두 가지 노드 타입의 트리 구조를 사용합니다.
SINGLE 조건
GROUP 조건
연산자
| 연산자 | 호환 타입 | 설명 |
|---|---|---|
EQUALS | 전체 | 정확한 일치 |
NOT_EQUALS | 전체 | 부정 |
GREATER_THAN | NUMBER | > |
GREATER_THAN_OR_EQUAL | NUMBER | >= |
LESS_THAN | NUMBER | < |
LESS_THAN_OR_EQUAL | NUMBER | <= |
CONTAINS | STRING | 부분 문자열 일치 |
IN | STRING, NUMBER | 목록에 포함 |
NOT_IN | STRING, NUMBER | 목록에 미포함 |
위 예시의
customer_tier, region은 커스텀 팩트로 사용 전에 팩트 정의에서 등록해야 합니다. payment_amount는 시스템 팩트로 기본 제공됩니다.액션 타입
각 규칙은 여러 액션을 가질 수 있습니다. 조건 매칭 시 액션이 순차적으로 실행됩니다.| 타입 | 설명 | 핵심 파라미터 |
|---|---|---|
DISCOUNT | 기준 금액에 할인 적용 | refVar, method, rate 또는 value |
POINT | 기준 금액에 따라 포인트 적립 | refVar, method, rate 또는 value, integrationId |
COUPON_ISSUE | 쿠폰 발행 | couponId, integrationId |
BLOCK | 거래 차단 | reason |
NOTIFICATION | 알림 발송 | channel, templateId, integrationId |
WEBHOOK | 외부 URL 호출 | url, method |
SET_FACT | 출력 변수에 고정 값 설정 | key, value |
ADD_TAG | 결과에 태그 추가 | tag |
DISCOUNT — 비율 할인
payment_amount 기준 10% 할인:
SET_FACT — 출력 변수
Mutex — 규칙 간 충돌 해결
| 필드 | 설명 |
|---|---|
mutexGroup | 관련 규칙을 그룹화하는 키 (예: "best-discount") |
mutexMode | ALLOW_ALL (기본값) 또는 EXCLUSIVE |
mutexStrategy | FIRST_MATCH, HIGHEST_PRIORITY, 또는 MAX_BENEFIT |
EXCLUSIVE이면 승리한 규칙만 실행됩니다. 나머지는 의사결정 트레이스에 BLOCKED_BY_MUTEX로 기록됩니다.
전체 규칙 예시
다음 단계
팩트 정의
규칙이 기대하는 입력 변수를 정의하세요.
드라이런
발행 전에 규칙을 테스트하세요.

