솔루션 홈
S_P00_07000134 · 세무

SAP 원천징수세 내역 조회 — 영수증까지 발급됐는가

원천징수 유형별 지급 건의 세액을 조회하고, 신고 여부와 원천징수영수증 발급 여부를 함께 점검하는 화면입니다.

원천징수는 세금을 떼고 내는 것으로 끝나지 않습니다. 소득을 받은 사람에게 원천징수영수증을 발급해야 그 사람이 종합소득세 신고를 할 수 있습니다.

신고는 했는데 영수증을 안 보낸 경우가 생각보다 많고, 연말에 문의가 몰립니다. 표준 원천징수 항목 구조를 그대로 이어받아 신고와 발급 두 상태를 함께 보도록 OpenUI5 화면으로 확장한 것이 이 앱입니다. 실제 구동 화면 3종을 함께 공개합니다.

SAP 표준 기능을 그대로 이어받은 부분

  • 원천징수 유형 — 표준 유형 코드(WithholdingType)와 텍스트
  • 세율 — 유형별 적용 세율(TaxRate)
  • 금액 — 기준금액(BaseAmount) · 원천세액(WTAmount) · 실지급액(NetAmount)
  • 전표 — 전표번호 · 라인 · 지급일(PaymentDate)
  • 지급처 — 공급업체 코드(Lifnr)와 명칭
항목내용
대응 T-codeS_P00_07000134 (Generic Withholding Tax Reporting)
업무 영역재무회계(FI) · 원천세 관리
Namespacezui5.wtax
셸 구조조회조건 영역(우측 조회·초기화) + 원천세 내역, 행 선택 시 상세
화면 수조회 화면 1개 + 상세
데이터원천세 46건 · 지급처 12건
성격조회형(Read-Only) — 전기와 발급은 표준·외부 절차가 담당
UI 테마sap_horizon 단일 적용

실제 화면 3종 둘러보기

회사코드·원천징수유형·기간으로 조회하면 지급 건이 세액과 함께 나옵니다 → 신고 여부와 영수증 발급 여부를 확인하고 → 누락된 건을 처리합니다.

아래는 실제로 앱을 실행해 기능을 눌러 가며 캡처한 화면입니다. 이미지를 클릭하면 원본 크기로 확대됩니다.

S_P00_07000134 — Main.view.xml
초기 진입 화면 — 조회조건과 안내 메시지
초기 진입 화면 — 조회조건과 안내 메시지 — 회사코드·원천징수유형·기간·지급처를 고르는 화면입니다. 조회·초기화 버튼은 조회조건 영역 오른쪽 끝에 있습니다.
S_P00_07000134 — 원천세 내역
메인화면 — 세액과 두 가지 상태
메인화면 — 세액과 두 가지 상태 — 전표번호·지급일·지급처·원천징수유형·세율과 함께 기준금액·원천세액·실지급액이 놓이고, 신고 여부와 영수증 발급 여부가 별도 열로 표시됩니다.
S_P00_07000134 — 상세
상세 다이얼로그 — 지급 건 상세
상세 다이얼로그 — 지급 건 상세 — 행을 고르면 신고일과 발급 정보, 전표 연계가 펼쳐집니다. 어느 단계에서 멈췄는지 확인할 수 있습니다.

조작 방법

  1. 회사코드기간을 고릅니다.
  2. 원천징수유형으로 사업소득·기타소득·이자소득 등을 나눕니다.
  3. 조회조건 입력필드에서 값을 바꾸거나 Enter 를 누르면 즉시 조회됩니다.
  4. 신고 여부가 미신고인 건을 먼저 처리합니다.
  5. 영수증 발급이 안 된 건을 확인합니다. 신고와 별개 절차입니다.
  6. 행을 선택하면 신고일과 발급 정보가 열립니다.
  7. 결과는 CSV 다운로드로 내려받습니다.

세액 산식과 두 상태

계산은 간단하고, 관리할 것은 두 가지 상태입니다.

원천세액(WTAmount) = 기준금액(BaseAmount) × 세율(TaxRate)
실지급액(NetAmount) = 기준금액 − 원천세액

신고 여부(Filed)          →  세무서 신고 완료 여부
영수증 발급 여부           →  소득자에게 교부 완료 여부

둘은 독립적 — 신고했어도 발급이 안 됐을 수 있음

두 상태를 따로 두는 이유

신고는 우리 의무이고 발급은 소득자를 위한 의무입니다. 신고만 챙기면 연말정산이나 종합소득세 신고철에 영수증 요청이 몰려 한꺼번에 처리하게 됩니다. 두 열을 나란히 두면 지급 시점에 둘 다 마무리하는 습관이 생깁니다.

원천징수 유형별 특징

유형대상세율주의점
사업소득인적용역 대가3.3%가장 빈번
기타소득일시적 소득필요경비 차감 후경비율 확인 필요
이자소득비영업대금 이익27.5%세율이 높음
비거주자 소득국내원천소득조세조약 적용제한세율 확인

조회조건

필드필수설명
회사코드 Bukrs필수대상 회사코드
기간 PaymentDate필수지급일 From~To
원천징수유형 WithholdingType선택사업소득 · 기타소득 등
지급처 Lifnr선택공급업체 코드·명칭
신고 여부 Filed선택신고완료 / 미신고
영수증 발급선택발급완료 / 미발급

결과 컬럼

컬럼의미 · 표시
전표번호 Belnr · 라인 Buzei · 연도 Gjahr근거 전표
지급일 PaymentDate원천징수 시점
지급처 Lifnr · Name1코드와 명칭
원천징수유형 WithholdingType · WithholdingTypeText사업소득 등
세율 TaxRate적용 세율(%)
기준금액 BaseAmount세액 계산 기준
원천세액 WTAmount기준금액 × 세율
실지급액 NetAmount기준금액 − 세액
통화 Currency지급 통화
신고 여부 Filed · 신고일 FilingDate세무서 신고 상태
영수증 발급 여부소득자 교부 상태

SAP 표준 기능 매핑

표준역할이 화면에서의 확장
S_P00_07000134Generic Withholding Tax Reporting신고와 발급 상태를 함께 관리
WITH_ITEM원천징수 항목세액 원천
BSEG · BKPF전표 라인과 헤더지급 건 정보
LFA1공급업체 마스터지급처 명칭
T059P · T059Z원천세 유형 · 코드 설정유형과 세율

도입 시 확인이 필요한 부분

영수증 발급 상태는 표준에 저장 필드가 없습니다. 발급 시스템과 연계하거나 별도 관리 테이블이 필요하므로 어디에 기록할지 먼저 정해야 합니다. 비거주자 지급은 조세조약 제한세율이 적용돼 거주지국 확인 서류가 있어야 하므로 별도 관리 항목이 붙습니다.

참고 CDS 뷰

@AbapCatalog.sqlViewName: 'ZCWTAX'
@EndUserText.label: '원천세 내역 조회 (Z)'
define view Z_C_WITHHOLDING_DETAIL
  as select from with_item as Wht
    inner join      bkpf  as Header on Wht.bukrs = Header.bukrs
                                  and Wht.belnr = Header.belnr
                                  and Wht.gjahr = Header.gjahr
    left outer join lfa1  as Vendor on Header.lifnr = Vendor.lifnr
    left outer join t059p as WhtType on Wht.witht = WhtType.witht
{
  key Wht.bukrs, key Wht.gjahr, key Wht.belnr, key Wht.buzei,
      Header.budat  as PaymentDate,
      Header.lifnr,
      Vendor.name1  as Name1,
      Wht.witht     as WithholdingType,
      Wht.wt_qbshb  as BaseAmount,
      Wht.wt_qbshh  as WTAmount,
      Header.waers  as Currency
      // 실지급액 = 기준금액 − 세액
      // 신고·발급 상태는 별도 관리 테이블과 조인
}

매핑 이해를 돕기 위한 참고용 설계입니다. 실제 도입 시에는 운영 환경 설정과 릴리즈에 맞춰 조정합니다.

OpenUI5 구성

기능사용 컨트롤
화면 골격sap.m.Page + 조회조건 영역 · 원천세 테이블
조회조건sap.m.Select · sap.m.DatePicker · sap.m.Input — 우측 끝에 조회·초기화
이벤트모든 버튼이 onPAI 단일 진입점, fcCode 로 분기
내역 테이블sap.m.Table — 두 상태 열을 오른쪽 끝에 배치
상태 표시sap.m.ObjectStatus — 신고 / 발급 각각
상세 화면sap.m.Dialog — 신고일과 발급 정보

상태 열을 끝에 둔 이유

금액을 먼저 읽고 마지막에 처리 상태를 확인하는 순서가 자연스럽습니다. 두 상태를 나란히 오른쪽 끝에 두면 목록을 훑을 때 미완료 건이 오른쪽 가장자리에 모여 보이고, 처리할 목록을 따로 뽑기도 쉽습니다.

파일 구성

경로역할
manifest.json앱 디스크립터 — 앱 ID(zui5.wtax) · ko 로케일
view/Main.view.xml조회조건과 원천세 테이블
controller/Main.controller.js조회 · 세액 검증 · 상태 판정 · CSV
model/ModelMock.jslocaldata JSON 읽기(Promise)
js/formatter.js금액 · 세율 · 상태 색 포맷터
localdata/wtax.json원천세 46건
localdata/vendorlist.json지급처 12건

검증 결과

검증 항목결과
원천세액 = 기준금액 × 세율 (전 건)통과
실지급액 = 기준금액 − 원천세액통과
신고완료 건은 신고일 존재통과
원천징수유형 코드와 텍스트·세율 정합통과
지급처 코드가 있으면 명칭도 존재통과
XML · JSON 전체 파싱오류 0건
화면 렌더링 — 실브라우저 조회 → 상세 실동작 후 캡처3/3
테마 런타임 확인sap_horizon

자주 묻는 질문

영수증은 언제까지 발급해야 하나요?

소득 유형에 따라 다르지만 사업소득은 다음 해 2월 말까지가 일반적입니다. 다만 소득자가 요청하면 즉시 발급해야 하므로 지급 시점에 처리해 두는 편이 좋습니다.

신고했는데 영수증이 미발급이면 문제인가요?

세무서 의무는 이행했지만 소득자 의무는 남아 있습니다. 소득자가 종합소득세 신고를 못 하게 되므로 민원으로 돌아옵니다.

비거주자 지급은 무엇이 다른가요?

조세조약에 따라 제한세율이 적용될 수 있습니다. 거주자증명서 같은 서류가 있어야 낮은 세율을 적용할 수 있어, 서류 수령 여부를 별도로 관리해야 합니다.

SAP 표준 기능과 어떻게 이어지나요?

원천징수 항목과 리포트는 표준이 제공합니다. 이 화면은 그 항목에 신고와 발급이라는 두 상태를 붙여, 세무서 의무와 소득자 의무를 함께 관리하게 하는 확장입니다.

원천세 관리, 지금 쓰는 SAP 위에서 확장해 보세요

신고와 발급이 한 줄에 있으면 연말에 몰리는 영수증 요청이 사라집니다. 현재 SAP 환경 기준으로 어떻게 적용되는지 함께 확인해 드립니다.

원천세WITH_ITEM원천징수영수증사업소득기타소득이자소득비거주자OpenUI5