SAP 기대신용손실(ECL) Stage 분류 현황 — IFRS 9, 연체 30일이 충당금을 가른다
연체일수·신용등급 변동·부도 여부로 Stage 1~3을 나누고, 손실충당금 증감을 재무상태표와 미리 맞춰보는 화면입니다.
IFRS 9 금융상품(K-IFRS 제1109호)의 기대신용손실(ECL) 손상모형은 매출채권·대여금 같은 금융자산을 최초 인식 이후 신용위험이 얼마나 늘었는지에 따라 세 단계(Stage)로 나누고, Stage에 따라 12개월 또는 전체기간 기대신용손실을 계산하도록 요구합니다. 이미 오래 시행돼 온 기준서지만, 거래처가 많아질수록 연체일수와 신용등급 변동을 거래처별로 추적해 Stage를 다시 매기고, 그 결과가 재무상태표 대손충당금과 맞는지 결산 때마다 새로 확인하기는 번거롭습니다.
SAP 표준 채권 원장 데이터를 그대로 이어받아 거래처별 연체일수·신용위험 참조 데이터를 신용위험의 유의적 증가(SICR) 기준과 비교해 Stage를 판정하고, Stage별 손실충당금 롤포워드를 재무상태표와 대사할 수 있도록 OpenUI5 화면으로 확장했습니다. 실제 구동 화면 3종을 함께 공개합니다.
SAP 표준 기능을 그대로 이어받은 부분
- 채권 원천 —
BSID(고객 미결항목 · 만기일ZFBDT),ACDOCA(매출채권·대여금 잔액) - 거래처 마스터 —
KNA1(고객명) - 표준 화면 — 고객 개별항목 조회(FBL5N) · 고객 연령분석(S_ALR_87012178)
| 항목 | 내용 |
|---|---|
| 업무 영역 | 재무회계(FI-AR) · 신용위험(기대신용손실) 점검 |
| 관련 기준서 | IFRS 9 금융상품(K-IFRS 제1109호) — 기대신용손실(ECL) 손상모형, 신용위험 3단계(Stage) 분류 |
| Namespace | zui5.eclstage |
| 셸 구조 | 조회조건 영역(우측 조회) + Stage 별 롤포워드 요약 + 거래처별 ECL Stage 분류 목록, ECL 산출근거 Dialog |
| 화면 수 | 조회 화면 1개 + ECL 산출근거 상세 다이얼로그 |
| SAP 표준 T-code | FBL5N · S_ALR_87012178 |
| 성격 | 조회·점검형 — 신용위험모형(PD·LGD) 산출 자체는 회사 신용위험관리의 영역 |
| UI 테마 | sap_horizon 단일 적용 |
실제 화면 3종 둘러보기
채권유형·Stage 조건으로 조회하면 Stage 별 롤포워드와 거래처별 분류 목록이 뜹니다 → Stage 3(신용손상)이나 이체 건을 필터로 좁히고 → 행을 눌러 ECL 산출근거와 Stage 판정 근거를 확인합니다.
아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.
조작 방법
- 채권유형(매출채권 국내·수출, 특수관계자 대여금)과 Stage로 범위를 좁힙니다.
- Stage 이체 건만 체크박스를 켜면 이번 보고기간에 Stage가 바뀐 거래처만 남습니다.
- 거래처 검색 입력란에서 값을 바꾸거나 Enter 를 누르면 바로 조회됩니다.
- 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
- 상단의 Stage 별 손실충당금 롤포워드와 재무상태표 대손충당금 검증 메시지를 먼저 확인합니다.
- 거래처별 ECL Stage 분류 내역 표에서 행을 클릭하면 ECL 산출식과 Stage 판정 근거가 다이얼로그로 열립니다.
- 결과는 CSV 다운로드로 내려받습니다. UTF-8 BOM 이 붙어 엑셀에서 한글이 깨지지 않습니다.
Stage 판정 규칙
IFRS 9 기대신용손실 손상모형의 신용위험 3단계 분류 요구사항에서 판정 규칙을 도출했습니다.
| 판정 조건 | 결과 Stage | 사용자 조치 |
|---|---|---|
| 회생절차 개시 등 채무불이행 객관적 증거 있음, 또는 연체일수 ≥ 90일 | Stage 3 — 신용손상(전체기간 ECL) | 손상 인식·상각 여부를 감사인과 함께 최종 판단 |
| 신용등급 하향 통보 등 정성적 SICR 지표 있음, 또는 연체일수 ≥ 30일 | Stage 2 — 신용위험 유의적 증가(전체기간 ECL) | 모니터링 강화, 회수 독촉 우선순위에 반영 |
| 그 밖의 경우 | Stage 1 — 유의적 증가 없음(12개월 ECL) | 정상 관리 |
기대신용손실 산출식
ECL = EAD(부도시노출액) × PD(Stage 1은 12개월 PD, Stage 2·3은 전체기간 PD) × LGD(부도시손실률).
Stage 3은 채무불이행이 이미 발생한 상태로 보아 전체기간 PD를 100%로 두고, EAD와 LGD로 손실 규모를 추정합니다.
기초충당금에서 기말충당금까지 5단계 산출
| 단계 | 내용 |
|---|---|
| 1단계 | 거래처별 전기말 Stage와 EAD로 기초 ECL(손실충당금) 산출 |
| 2단계 | 당기말 연체일수·정성적 SICR 지표·부도 여부로 Stage를 다시 판정 |
| 3단계 | 신규발생 / 상각·제거 / Stage 이체 / Stage 유지(재측정)로 거래처별 변동 유형 분류 |
| 4단계 | Stage 1~3별로 기초·신규발생·이체유입·이체유출·재측정·상각을 합산해 기말충당금 산출 — 이체유입·이체유출 합계는 항상 0 |
| 5단계 | Stage 1~3 기말충당금 합계와 재무상태표 대손충당금(손실충당금) 총액을 대사 |
조회조건
| 필드 | 필수 | 설명 |
|---|---|---|
| Company Code | 고정 | 대상 회사코드 |
| 채권유형 | 선택 | 매출채권(국내) · 매출채권(수출) · 특수관계자 대여금 |
| Stage | 선택 | Stage 1(12개월 ECL) · Stage 2(전체기간 ECL) · Stage 3(전체기간 ECL·손상) |
| Stage 이체 건만 | 선택 | 이번 보고기간에 Stage가 바뀐 거래처만 표시 |
| 거래처 검색 | 선택 | 거래처명 또는 판정근거 메모 부분 일치(Enter 조회) |
결과 컬럼
Stage 별 손실충당금 롤포워드
| 컬럼 | 의미 · 표시 |
|---|---|
| 기초충당금 · 기말충당금 | 전기말·당기말 Stage·잔액 기준 ECL 합계 |
| 신규발생 | 당기 중 신규 인식 익스포저의 ECL |
| 이체유입 · 이체유출 | Stage 간 이동분(이체 전 충당금 기준), 3개 Stage 합계는 0 |
| 재측정 | Stage 유지분의 위험파라미터·잔액 변동, 이체 후 Stage의 재측정분 포함 |
| 상각·제거 | 당기 중 회수불능이 확정돼 상각한 금액 |
거래처별 ECL Stage 분류 내역
| 컬럼 | 의미 · 표시 |
|---|---|
| 거래처 · 채권유형 · 신용등급 | 거래처명, 채권 구분, 내부 신용위험 참조 데이터상 등급 |
| 연체일수 · Stage(전기→당기) | 기준일 현재 연체일수(DPD), Stage 유지/신규발생/상각(제거)/이체 뱃지 |
| EAD · 적용 PD · LGD | 부도시노출액, Stage별 적용 PD(12개월 또는 전체기간), 부도시손실률 |
| ECL 충당금 | EAD × 적용 PD × LGD |
SAP 표준 기능 매핑
표준 실행은 SAP 표준 T-code 가 담당하고, 이 화면은 채권 원장 데이터에 신용위험 Stage 관점을 더해 기대신용손실을 점검하는 확장 관점을 더합니다.
| SAP 표준 T-code | 연관 기능 |
|---|---|
FBL5N | 고객 개별항목 조회 — 미결 채권의 만기일·잔액으로 연체일수(DPD) 산정 |
S_ALR_87012178 | 고객 연령분석 표준 리포트 — 연령 구간 대신 Stage 기준으로 재분류 |
IFRS 요구사항 매핑표
| 기준서 | 요구사항 | 이 화면의 대응 기능 | 원천 데이터 | 비고 |
|---|---|---|---|---|
| IFRS 9 (K-IFRS 제1109호) | 신용위험 3단계(Stage) 분류 | 연체일수·정성적 SICR 지표·채무불이행 객관적 증거로 Stage 1~3 자동 판정 | BSID(만기일·잔액), KNA1 | 신용등급·SICR 지표·부도 플래그는 표준 원장이 아닌 내부 신용위험 참조 데이터. SICR·채무불이행 정의 기준은 회사가 별도로 정함 |
| IFRS 9 (K-IFRS 제1109호) | 기대신용손실(ECL) 측정 | Stage에 따라 12개월 또는 전체기간 PD를 선택해 EAD × PD × LGD 산출 | ACDOCA(EAD 잔액 원천, 대체 가능) | PD·LGD는 회사 신용위험모형 산출값을 전제로 하며, 이 화면은 값을 받아 계산만 수행 |
| IFRS 7 (금융상품 공시) | 손실충당금 Stage별 증감(조정) 내역 공시 | 기초·신규발생·이체·재측정·상각으로 분해한 Stage별 롤포워드와 재무상태표 대사 | ACDOCA(대손충당금 계정) | 이체·재측정 구분 방식은 이 화면의 적용 예시이며 회사 공시 양식에 맞춰 조정 가능 |
도입 시 확인이 필요한 부분
신용등급·PD·LGD·SICR 판정 기준은 회사의 신용위험관리 정책과 신용위험모형에서 가져와야 하는 영역으로, 이 화면이 대신 정할 수 없습니다. 실제 도입 때는 회사의 신용위험 관리 체계와 Stage 판정 기준을 감사인과 협의해 확정해야 합니다.
참고 CDS 뷰
운영 서비스로 연결할 때를 가정해 새로 스케치한 집계 뷰 예시입니다(운영 반영 시 권한 체크와 회사 신용위험 참조 데이터 테이블과의 조인이 필요합니다).
@AbapCatalog.sqlViewName: 'ZCECLSTAGE'
@EndUserText.label: 'IFRS 9 ECL Stage 분류 (참고)'
define view entity ZC_IFRS9_EclStage
with parameters p_keydate : dats
as select from I_CustomerLineItem as Item
association [0..1] to I_Customer as _Customer
on Item.Customer = _Customer.Customer
{
key Item.CompanyCode,
key Item.Customer,
_Customer.CustomerName,
Item.AmountInTransactionCurrency as Ead,
// 연체일수 = 기준일 − 만기일
dats_days_between( Item.NetDueDate, :p_keydate ) as Dpd
// 신용등급·SICR 지표·부도 플래그·PD·LGD는 회사 신용위험관리 참조 테이블에서 별도 조인
}
OpenUI5 구성
| 기능 | 사용 컨트롤 |
|---|---|
| 화면 골격 | sap.m.Page + 조회조건 영역 · Stage 별 롤포워드 · 거래처별 분류 목록 |
| 조회조건 | sap.m.Select · sap.m.Input · sap.m.CheckBox — 우측 끝에 조회 버튼, Enter 조회 |
| 롤포워드 표 | sap.m.Table — Stage 1~3 + 합계 행 |
| 거래처별 분류 목록 | sap.m.Table — 행 클릭 시 ECL 산출근거 다이얼로그 |
| ECL 산출근거 | sap.m.Dialog + sap.m.Table |
| 공통 처리 | CSV 다운로드 공통 컨트롤러, 전역 오류 처리기 |
파일 구성
| 경로 | 역할 |
|---|---|
index.html | OpenUI5 부트스트랩 — sap_horizon · lodash · moment |
Component.js | 조회조건 모델 · 결과 모델 초기화, 전역 오류 처리기 연결 |
manifest.json | 앱 디스크립터 — zui5.eclstage · ko 로케일 |
view/Main.view.xml | 조회화면 + Stage 별 롤포워드 + 거래처별 분류 목록 |
view/DetailDialog.fragment.xml | ECL 산출근거 · Stage 판정근거 다이얼로그 |
controller/Main.controller.js | 조회 · 필터 · 다이얼로그 · CSV 로직 |
controller/BaseController.js | CSV 다운로드 공통 처리 |
controller/ErrorHandler.js | 전역 오류 처리 |
model/ModelMock.js | localdata JSON 읽기(Promise) + Stage 판정 · 롤포워드 집계 로직 |
model/formatter.js | 금액 · 비율 · Stage 표시 포맷 |
i18n/i18n_ko.properties | ko 로케일 리소스 |
localdata/eclstage.json | 거래처 12건 + Stage 롤포워드 원천 데이터 |
운영 전환 시에는 ModelMock 내부만 실제 서비스 호출로 바꾸면 화면과 판정 로직은 그대로 씁니다.
검증 결과
화면 구성에 쓴 데이터는 거래처 12건 기준입니다.
| 검증 항목 | 결과 |
|---|---|
| Stage 별 롤포워드 항등식(기초+신규발생+이체유입+이체유출+재측정+상각=기말) 전수 검사 | 통과(차이 0) |
| Stage 간 이체유입 + 이체유출 합계 = 0(제로섬) | 통과 |
| Stage 1~3 기말충당금 합계 = 재무상태표 대손충당금 총액 | 일치(차이 0) |
| 화면 표시값(Stage 검증 메시지) ↔ 검증 스크립트 산출값 대조 | 일치 |
| 화면 렌더링 — 실브라우저에서 조회 → Stage 필터 → 상세 다이얼로그 실동작 후 캡처 | 3/3 |
거래처명·금액·연체일수는 모두 검증용으로 구성한 가상 데이터입니다.
자주 묻는 질문
이 화면이 Stage 판정과 충당금 설정을 자동으로 전표까지 처리하나요?
아니요. 이 화면은 거래처별 연체일수·신용등급 변동·부도 여부로 IFRS 9 Stage를 점검하고 기대신용손실(ECL)을 계산해 손실충당금 증감을 대사하는 조회 도구입니다. 실제 Stage 확정과 손상 인식, 전표 처리는 회사와 감사인이 결정합니다.
신용등급·PD·LGD 값은 이 화면이 직접 산정하나요?
아니요. 신용등급과 부도율(PD)·부도시손실률(LGD)은 회사의 신용위험관리 정책과 신용위험모형에서 산출한 값을 전제로 하며, 이 화면은 그 값을 받아 Stage 판정과 ECL 계산만 수행합니다.
기존 경과기간별 대손충당금 화면과 무엇이 다른가요?
경과기간별 대손율 방식은 연령 구간에 고정 대손율을 곱하지만, 이 화면은 신용위험의 유의적 증가(SICR) 여부로 Stage를 먼저 판정하고 Stage별로 다른 기간(12개월 또는 전체기간)의 PD를 적용하며, Stage 이체 효과를 손실충당금 롤포워드에서 별도로 추적합니다.
IFRS 9은 언제부터 적용되나요?
IFRS 9 금융상품(K-IFRS 제1109호)은 2018년 1월 1일 이후 개시하는 회계연도부터 적용되는, 이미 시행 중인 기준서입니다. 이 화면은 새로 도입되는 기준이 아니라 기존에 적용 중인 기대신용손실 손상모형의 적용 현황을 결산 전에 미리 재확인하는 용도로 씁니다.