수정세금계산서 작성방법 안내

2017.12.27

링크허브에서 제공하는 전자세금계산서 API 를 이용한 ‘수정세금계산서’ 작성방법을 안내해 드리도록 하겠습니다. 수정세금계산서 작성을 위해서는 임시저장(register) API 호출시 ‘수정사유코드(modifyCode)’ 와 원본 세금계산서의 ‘아이템키(ItemKey)’를 기재해야 합니다. 다음의 수정사유코드, 아이템키에 대한 설명과 언어별 임시저장 예제코드를 참조하여 수정세금계산서를 작성하시기 바랍니다.

수정세금계산서

국세청 전송이 완료된 전자세금계산서의 수정사유가 발생한 경우, 양자 간 폐기처분을 할 수 없으므로 반드시 세법에 적합한 수정세금계산서를 발행해야 합니다.『부가세법 시행령 제59조』 단, 발행장수가 2장인 경우에는 반드시 발행방법에 따라 2장 모두 발행해야 합니다.

구분 작성 · 발행장수 · 작성월일 발행기한
방법 발행장수 작성월일 비고란

기재사항

착오정정

부(-)의 세금계산서 1장 추가하여 정확한 세금계산서 1장 발행 2장

원본 세금계산서

작성일

착오사실을 인식한 날
공급가액 변동 증감되는 분에 대하여 정(+)/부(-)의 세금계산서 발행 1장

변동사유발생일

원본 세금계산서 작성일 기재

변동사유 발생일

다음달 10일

환 입 환입금액분에 대하여 부(-)의 세금계산서 발행 1장

환입된 날

원본 세금계산서 작성일 기재

환입된 날

다음달 10일

계약의 해제 부(-)의 세금계산서 발행 1장

계약 해제일

원본 세금계산서 작성일 기재

계약 해제일

다음달 10일

착오에 의한

이중발행

부(-)의 세금계산서 발행 1장

원본 세금계산서

작성일

착오사실을 인식한 날

내국신용장

사후개설

부(-)의 세금계산서1장과 추가하여 영세율 세금계산서발행 2장

원본 세금계산서

작성일

내국신용장 개설일자 기재

내국신용장 개설

다음달 10일

(단, 과세기간 종료 후 20일 이내 개설된 경우는 20일까지 발행)

수정사유코드(modifyCode)

세금계산서 임시저장(register) API 요청시 세금계산서 정보항목의 수정사유코드(modifyCode) 항목에 기재하는 1자리 숫자값 입니다. 아래에 설명되어 있는 수정사유에 해당하는 사유코드를 기재합니다. 수정사유별 설명을 참조하여 작성하시기 바랍니다.

수정사유 사유코드 설명
기재사항
착오정정
1

필요적 기재사항 등이 착오 또는 착오 외로 잘못 적힌 경우

원본 취소분 부(-)의 세금계산서 1장, 수정분 1장, 총 2장 세금계산서 발행

공급가액 변동 2

공급가액에 추가 또는 차감되는 금액이 발생한 경우

가감금액에 따라 원본 발행분에 대한 부(-) 또는 정(+)의 세금계산서 1장 발행

환입 3

원본 공급한 재화가 환입(반품)된 경우

환입(반품)된 금액만큼 부(-)의 수정세금계산서 1장 발행

계약의 해제 4

계약이 해제된 경우

원본 발행한 세금계산서의 내용대로 부(-)의 수정세금계산서 1장 발행

내국신용장
사후개설
5

내국신용장 등이 사후개설된 경우

개설된 금액만큼 부(-)로 1장, 영세율로 1장, 총 2장 수정세금계산서 발행

착오에 의한
이중발행
6

착오로 이중으로 발행된 경우, 발행대상이 아닌 거래에 대하여 발행한 경우

원본 발급한 세금계산서의 내용대로 부(-)의 수정세금계산서 1장 발행

[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

원본 세금계산서 아이템키(ItemKey) 확인방법

아이템키(ItemKey)란 고객이 작성한 세금계산서를 관리하기 위한 팝빌에서 생성한 식별번호로 상태/요약정보 조회(getInfo) API의 응답전문에서 확인할 수 있습니다. 수정세금계산서를 작성하기 위해서는 원본 세금계산서의 아이템키를 임시저장(register) API 호출시 ‘originalTaxinvoiceKey’ 값에 기재하면 수정세금계산서를 작성할 수 있습니다.

개발언어별 수정세금계산서 작성예시

고객사의 연동환경에 해당하는 언어별 수정세금계산서 작성 예제소스를 참조하시기 바랍니다.

Java(SpringMVC) 수정세금계산서 작성예제

“TaxinvoiceServiceExample.java” 파일의 임시저장 RequestMapping이 선언된 register() 함수의 ‘setModifyCode’, ‘setOriginTaxinvoiceKey’ 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 페이지를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

Java(JSP) 수정세금계산서 작성예제

예제폴더에 포함되어 있는 “register.jsp” 파일의 ‘setModifyCode’, ‘setOriginalTaxinvoiceKey’ 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 jsp 페이지를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

.NET 수정세금계산서 작성예제

예제폴더에 포함되어 있는 “frmExample.cs” 파일의 btnRegister_Click() 함수의 ‘taxinvoice.modifyCode’, ‘taxinvoice.originalTaxinvoiceKey’ 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 해당 버튼의 이벤트를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

PHP 수정세금계산서 작성예제

예제폴더에 포함되어 있는 “register.php” 파일의 ‘modifyCode’, ‘originalTaxinvoiceKey’ 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 php 페이지를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

Python 수정세금계산서 작성예제

예제폴더에 포함되어 있는 “register.py” 파일의 “modifiCode”, “originalTaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 register.py 파일을 실행합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

ASP 수정세금계산서 작성예제

예제폴더에 포함되어 있는 “TaxinvoiceExample/register.asp” 파일의 “newTaxinvoice.modifyCode”, “newTaxinvoice.originalTaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 ASP 페이지를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

Delphi 수정세금계산서 작성예제

예제폴더에 포함되어 있는 “Example.pas” 파일의 btnRegisterClick 프로시저에 선언되어있는 “taxinvoice.modifyCode”, “taxinvoice.originalTaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 버튼의 이벤트를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

Visual Basic 수정세금계산서 작성예제

예제코드의 “frmExample.frm” 파일의 btnRegister_Click() 함수에 선언되어있는 “Taxinvoice.modifyCode”, “Taxinvoice.originalTaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 버튼의 이벤트를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

VBA 수정세금계산서 작성예제

예제파일 “taxinvoice_example.accdb(mdb)”의 btnRegister_Click() 함수에 선언되어있는 “Taxinvoice.modifyCode”, “Taxinvoice.originalTaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 버튼의 이벤트를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

PowerBuilder 수정세금계산서 작성예제

예제코드의 examplewindow Form-등록 버튼의 “clicked()” 이벤트에 선언된 “l_taxinvoice.modifyCode”, “l_taxinvoice.originaltaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하고 해당 버튼의 click() 이벤트를 호출합니다.

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

Node.js 수정세금계산서 작성예제

예제코드의 ./routes/ 폴더에 taxinvoiceService.register 라우트핸들러 함수의 “modifyCode”, “originaltaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하여 호출합니다

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

Ruby – Rails 수정세금계산서 작성예제

예제코드의 /app/controllers 폴더에 taxinvoice_controller.rb 세금계산서 즉시발행(registIssue) 핸들러에 선언되어있는 항목중 “modifyCode”와 “originaltaxinvoiceKey” 변수값을 각각 수정사유코드와 원본 세금계산서의 아이템키(ItemKey)로 기재하여 호출합니다

[참고] 수정사유코드 확인하기   [바로가기]
[참고] 원본 세금계산서 아이템키 확인방법   [바로가기]
[참고] 팝빌블로그 – 수정사유별 수정세금계산서 작성방법 안내   [바로가기]

지금까지 전자세금계산서 API의 수정세금계산서 작성방법에 대해 안내해 드렸습니다. 수정세금계산서에 대한 자세한 사항은 [팝빌블로그 – 수정세금계산서 작성방법 안내] 참조하시기 바랍니다.

고객님들의 편의를 위하여 이메일, 전화 등 다양한 채널을 열어놓고 있으니 언제든지 연락주시기 바랍니다.

링크허브 개발팀 정요한 과장 / T.1600-9854 / D. 070-4304-2991/ E. code@linkhub.co.kr