SAP 선불 상품권 미행사분 수익인식 점검 — IFRS 15, 안 쓴 상품권 잔액은 유효기간과 이력부터 맞춰본 뒤 수익으로 옮긴다
발행분별 유효기간·법정 이전 의무·이력으로 미행사분 처리 방식을 판정하고 원장 금액과 대사합니다
상품권이나 선불충전금은 팔린 날 대가를 받지만, 고객이 끝까지 다 쓰지 않는 금액이 반드시 남습니다. 받은 대가는 쓰이기 전까지 계약부채이고, 이 안 쓰고 남는 금액(미행사분)을 언제 수익으로 옮기는지가 결산 때마다 쟁점이 됩니다. IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호)의 미행사 부분 요구사항은, 미행사 금액을 받을 권리가 있다고 예상되면 고객이 권리를 행사하는 방식에 비례해 수익으로 인식하고, 그렇지 않으면 고객이 권리를 행사할 가능성이 희박해질 때 인식하도록 다룹니다. 미행사 금액의 추정에도 변동대가 추정치의 제약이 적용되고, 법에 따라 국가 등에 넘겨야 하는 금액은 수익이 아니라 부채로 둡니다.
실무에서는 발행 다음 날 예상 미행사율만큼을 한꺼번에 수익으로 올리거나, 유효기간이 지났는데도 잔액이 계약부채에 그대로 남는 일이 생깁니다. 원장 데이터를 그대로 이어받아 발행분마다 유효기간·법정 이전 의무·유사 발행분 이력을 보고 처리 방식을 다시 판정한 뒤 원장 금액과 나란히 놓는 과정을 OpenUI5 화면으로 확장했습니다. 실제 구동 화면 6종을 함께 공개합니다.
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI) |
| 관련 기준서 | IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) — 고객이 행사하지 않는 권리(미행사 부분) |
| Namespace | zui5.breakage |
| 셸 구조 | 단일 페이지 + 5개 탭 |
| 화면 수 | 메인 1 · 상세 다이얼로그 1 |
| SAP 표준 T-code | FAGLL03 · FBL3N · FS10N · FB03 |
| 데이터 연동 방식 | OData V2 (조회조건 전부 $filter) |
| 성격 | 조회·대사·점검형 |
| 테마 | sap_horizon · 한국어 |
| 요약 | 내용 |
|---|---|
| 점검 대상 | 발행분별 유효기간·법정 이전 의무·유사 발행분 이력, 미행사 수익·계약부채·지급의무의 기대 금액과 원장 금액 |
| 핵심 산식 | 미행사 수익 누계 = 사용액 × B ÷ (발행 순액 − B) · B = 발행 순액 × 예상 미행사율 · 발행 순액 = 사용액 + 미행사 수익 + 계약부채 + 지급의무 |
| 결과 표시 | 정상 / 점검 필요 / 확인 필요 |
실제 화면 6종 둘러보기






사용 방법
- 회계연도를 넣고, 회사와 발행 유형(모바일상품권·종이상품권·선불충전금·제휴상품권)은 필요할 때만 고릅니다. 비워 두면(전체) 전체가 조회됩니다.
- 조회 버튼은 조회조건 입력 필드 줄의 가장 오른쪽에 있습니다. 회계연도 입력란에서 Enter 키를 눌러도 같은 조회가 실행됩니다. 화면을 열면 기본 조건으로 자동 조회됩니다.
- 요약 줄에서 발행분 수, 점검·확인 필요 발행분, 판정 보류 발행분, 기대 미행사 수익·기대 계약부채·원장 계약부채 합계, 원장-기대 차이 절대값을 먼저 확인합니다.
- 탭을 옮겨 가며 발행분별 판정 → 기대값·원장 항목 대사 → 처리 방식별 집계 → 결과구분별 집계 → 대사 순으로 좁혀 봅니다.
- 발행분별 판정 탭에서 행을 누르면 발행·사용 현황과 산출 과정, 원장 대사, 단계별 결과, 항목 5행이 상세 다이얼로그로 열립니다.
- 각 탭의 CSV 내려받기(UTF-8 BOM)로 결과를 저장할 수 있습니다.
미행사분을 수익으로 옮겨도 되는지 — 다섯 갈래 판정
발행분마다 순서대로 조건을 봅니다. 앞의 조건에 걸리면 뒤 조건은 보지 않습니다.
| 판정 조건 | 처리 방식(결과 상태) | 사용자 조치 |
|---|---|---|
| 미청구 잔액을 국가 등 제3자에게 넘길 의무가 있음 | 법정이전 부채 — 잔액은 수익이 아니라 지급의무 | 지급의무에 남아 있는지, 수익으로 잡히지 않았는지 확인 |
| 유효기간 만료일이 회계연도 말 이전 | 소멸시 인식 — 잔액 전액 수익 | 만료 후에도 계약부채로 남았다면 소멸 처리 여부 점검 |
| 유효기간 안이고 유사 발행분 이력이 확인되지 않음 | 판정 보류(확인 필요) | 유사 발행분 이력을 확인한 뒤 다시 조회 |
| 이력 3회 이상, 변동폭 5%p 이내, 예상 미행사율 있음 | 비례인식 — 사용 비율에 맞춰 수익 인식 | 원장에 같은 방식·금액으로 계상됐는지 확인 |
| 그 밖(이력 3회 미만 또는 변동폭 5%p 초과) | 부채 유지 — 사용분만 수익, 잔액은 계약부채 | 추정 근거가 쌓이기 전에 앞당겨 수익으로 잡지 않았는지 확인 |
| 계상 방식이 판정 방식과 다름 또는 원장 금액이 기대 금액과 다름 | 점검 필요 | 계상 방식과 차이 금액의 전표·계정 확인 |
| 위에 걸리지 않고 계상 방식·금액이 일치 | 정상 | - |
이력 3회·변동폭 5%p 는 이 점검 화면이 쓰는 내부 점검 기준(가정)이며 기준서 수치가 아닙니다. 판정 결과는 확인 대상을 알리는 표시이고, 최종 판단은 회사와 감사인이 합니다.
발행 순액에서 계약부채까지 산출·대사 7단계
- 발행 순액 —
발행액 − 환불액 - 미사용 잔액 —
발행 순액 − 사용액, 사용률 = 사용액 ÷ 발행 순액 - 기대 미행사액 B —
발행 순액 × 예상 미행사율(비례인식만) - 미행사 수익 누계 —
사용액 × B ÷ (발행 순액 − B) - 계약부채 —
발행 순액 − 사용액 − 미행사 수익 − 지급의무 - 항등식 대사 —
발행 순액 = 사용액 + 미행사 수익 + 계약부채 + 지급의무 - 원장 대사 —
원장 − 기대 = 0(수익·부채·지급의무 각각). 0 이 아닌 발행분은 점검 필요, 판정 보류는 대사에서 제외
금액 단위는 천원입니다. 소멸시 인식은 잔액 전액이 수익, 법정이전 부채는 잔액 전액이 지급의무가 됩니다.
조회조건
| 조회조건 | 필수 | 설명 |
|---|---|---|
| 회계연도 | 필수 | 기본 2026 |
| 회사 | 선택 | 전체 선택 시 조건 없이 조회 |
| 발행 유형 | 선택 | 모바일상품권 · 종이상품권 · 선불충전금 · 제휴상품권, 전체 선택 시 조건 없이 조회 |
| 점검 결과 | 선택 | 발행분별 판정 탭 — 전체 / 정상 / 점검 필요 / 확인 필요 |
결과 컬럼
| 영역 | 내용 |
|---|---|
| 요약 | 발행분 수 · 점검·확인 필요 발행분 · 판정 보류 발행분 · 기대 미행사 수익 합계 · 기대·원장 계약부채 합계 · 원장-기대 차이 절대값 |
| 발행분별 판정 | 발행분 · 유형 · 점검 결과 · 판정·계상 방식 · 발행일 · 유효기간 만료일 · 법정 이전 의무 · 발행액·환불액·순액·사용액·사용률 · 예상 미행사율 · 유사 발행분 이력·변동폭 · 기대/원장 금액 · 차이 · ①~④ 단계 · 판정 근거·설명 |
| 기대값·원장 항목 대사 | 발행 순액·사용액·미행사 수익·계약부채·지급의무 5개 항목의 기대 금액 · 원장 금액 · 차이 |
| 처리 방식별 집계 | 방식별 발행분 수 · 발행 순액 · 기대/원장 금액 · 차이 절대값 |
| 결과구분별 집계 | 정상·점검 필요·확인 필요별 발행분 수 · 발행 순액 · 계약부채 · 차이 절대값 |
| 대사 | 대사식 · 산식 · 검사 건수 · 차이 건수 · 최대 차이 금액 · 의도적 예외 건수 |
SAP 표준 기능 매핑
- 원장 — 미행사 수익·계약부채·지급의무 금액(
ACDOCA), 전표 헤더·항목(BKPF·BSEG), 계정 마스터(SKA1), 회사 코드(T001)를 사용해 집계 - 표준 화면 — G/L 개별 항목(FAGLL03 · FBL3N) · 계정 잔액(FS10N) · 전표 조회(FB03)
| T-code | 이름 | 쓰임 |
|---|---|---|
FAGLL03 | G/L 계정 개별항목 | 수익·계약부채·지급의무 계정의 원장 금액을 확인합니다 |
FBL3N | G/L 계정 개별 항목 | 같은 금액을 전표 단위로 추적합니다 |
FS10N | G/L 계정 잔액 조회 | 계약부채 계정 잔액을 화면 원장 합계와 맞춰 봅니다 |
FB03 | 전표 조회 | 차이가 나는 전표를 열어 확인합니다 |
| 기준서 | 요구사항 | 화면 반영 |
|---|---|---|
| IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) | 선불로 받은 대가는 이행 전까지 계약부채로 인식 | 계약부채 산출·원장 대사 |
| IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) | 고객이 권리를 모두 행사하지 않을 것으로 예상되고 미행사 금액을 받을 권리가 있으면 고객의 권리 행사 방식에 비례해 수익 인식 | 비례인식 판정 · 미행사 수익 누계 산식 |
| IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) | 미행사 금액을 받을 권리가 예상되지 않으면 고객이 권리를 행사할 가능성이 희박해질 때 수익 인식 | 소멸시 인식 판정 |
| IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) | 변동대가 추정치 제약 — 미행사 금액 추정도 유의적 되돌림이 없을 정도로만 반영 | 부채 유지 판정(이력·변동폭 점검) |
| IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) | 법률에 따라 다른 당사자에게 넘겨야 하는 미행사 금액은 수익이 아니라 부채 | 법정이전 부채 판정 · 지급의무 |
참고 CDS 뷰
define view entity I_PrepaidLiabilityLedger
as select from acdoca
association [0..1] to ska1 as _Account
on _Account.saknr = acdoca.racct
{
key rbukrs as CompanyCode,
key gjahr as FiscalYear,
key racct as GLAccount,
_Account.xbilk as IsBalanceSheetAcct,
sum( hsl ) as LedgerAmount
}
group by rbukrs, gjahr, racct, _Account.xbilk뷰 이름과 계정 매핑은 스케치이며 실제 계정체계에 맞춰 확인이 필요합니다.
OpenUI5 구성
| 구성 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI) |
| 화면 구성 | 조회조건 영역(우측 조회) + 요약 줄 + 발행분별 판정·기대값·원장 항목 대사·처리 방식별 집계·결과구분별 집계·대사 5개 탭, 상세 Dialog |
| 데이터 모델 | OData V2 모델을 앱 설정(manifest)에서 선언하고, 표마다 해당 엔티티셋에 직접 바인딩 |
| 조회조건 처리 | 필터 객체로 만들어 서버 조회 조건($filter)으로 전달하며 "전체"는 조건을 만들지 않음 |
| 집계 | 요약 값은 컨트롤러 한 곳에서 계산하고 금액 문자열은 숫자로 변환해 합산 |
| 실패 안내 | 서비스 연결 실패와 요청 실패, 빈 응답을 구분해 사용자 메시지로 안내 |
| 테마 | sap_horizon · 한국어 |
파일 구성
| 구분 | 내용 |
|---|---|
| 앱 본체 | index.html · manifest.json · Component.js · controller · view · model · i18n · css |
| 데이터 서비스 | OData 서비스 정의와 엔티티셋별 데이터 |
| 검증 전용 | 앱 본체와 분리된 검증용 샘플 데이터 구성 |
| 설명서 | readme.html (13개 절) |
검증 결과
화면 구성에 쓴 검증용 샘플 데이터는 가상 회사 2곳의 발행분 30건(항목 150줄)을 기준으로 발행·사용·미행사 수익·계약부채·지급의무가 천원 단위로 맞물리도록 구성했습니다.
| 대사식 | 검사 | 결과 | 의도적 예외 |
|---|---|---|---|
| 유효기간·법정 이전 여부·이력으로 처리 방식 재산출 = 화면 판정 | 30 | 일치 | 2(판정 보류) |
| 발행 순액 = 사용액 + 미행사 수익 + 계약부채 + 지급의무 | 28 | 일치 | 0 |
| 미행사 수익 = 사용액 × B ÷ (순액 − B) | 14 | 일치 | 0 |
| 항목 대사 기대 합계 = 발행분별 기대 합계 | 28 | 일치 | 0 |
| 방식별·결과구분별 집계 합계 = 발행분 합계(건수·순액) | 30 | 일치 | 0 |
| 원장 − 기대 금액 = 0 (수익·부채·지급의무) | 28 | 차이 0건, 의도적 예외 10건 분리 기록 | 10 |
계상 방식 불일치, 소멸 미처리, 즉시 수익 계상, 법정이전 대상 수익 계상 등 원장 차이 10건과 유사 발행분 이력 미확인 2건은 점검 화면의 동작을 보이기 위해 의도적으로 구성한 케이스입니다. 화면 요약의 기대 미행사 수익 합계 3,041,566, 기대 계약부채 합계 19,738,434, 원장 계약부채 합계 19,817,497, 원장-기대 차이 절대값 2,143,874는 검증 스크립트 합계와 같습니다.
자주 묻는 질문
이 화면의 판정이 곧 기준서 충족 여부인가요?
아닙니다. 이 화면은 발행분마다 미행사 부분의 처리 방식을 분류하고 원장 금액과 대사해 살펴볼 발행분을 가려내는 점검 도구입니다. 미행사분을 수익으로 인식할 수 있는지와 금액의 최종 판단은 기준서 원문과 회사의 회계정책에 따라 회사와 감사인이 합니다.
적용 시기와 범위는 어떻게 되나요?
이 화면은 IFRS 15 고객과의 계약에서 생기는 수익(K-IFRS 제1115호) 가운데 선불로 받은 대가의 미행사 부분, 미행사 금액 추정의 제약, 법정 이전 의무가 있는 잔액의 처리 요구사항명을 대상으로 합니다. 이미 시행 중인 기준서이며, 문단번호와 경과규정은 원문으로 확인하지 못해 확인 필요로 남겼습니다.
이력 3회·변동폭 5%p 는 기준서가 정한 수치인가요?
아닙니다. 미행사율 추정을 얼마나 믿을 수 있는지 살펴보기 위한 점검용 가정값입니다. 회사의 정책과 발행분 특성에 맞게 조정해서 쓰며, 추정의 적정성 판단은 회사와 감사인이 합니다.
점검 필요와 확인 필요는 무엇이 다른가요?
점검 필요는 계상 방식이 판정 방식과 다르거나 원장 금액이 기대 금액과 다른 발행분이고, 확인 필요는 유사 발행분 이력이 확인되지 않아 기대 금액을 산출하지 못한 발행분입니다. 두 표기 모두 원인을 단정하지 않고 살펴볼 후보를 뜻합니다.
상품권 잔액, 결산 전에 수익으로 옮길 수 있는지부터 나눠 보세요
발행분마다 엑셀로 미행사율을 다시 계산하는 대신, 화면에서 유효기간과 이력, 원장 계상액을 미리 대사해 두면 결산과 감사 대응이 한결 가벼워집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.