전담지원 신청
API Reference > 현금영수증 > 조회

현금영수증 조회 API

현금영수증 조회 API는 발급된 현금영수증의 등록 상태와 발급·취소 이력을 조회하는 API입니다.
현금영수증 발급 응답으로 받은 cash_no를 tno에 설정하고,
가맹점 개인키로 생성한 kcp_sign_data와 서비스 인증서를 함께 전송합니다.
조회 결과는 res_cash_info 배열로 리턴되며, 발급 후 취소된 거래는 발급과 취소 정보가 각각 포함될 수 있습니다.

요약

HTTP Method

POST 방식으로 요청합니다.

Content-Type

application/json; charset=utf-8 형식으로 요청합니다.

통신 보안

TLS 1.2 이상 환경에서 통신합니다.

테스트 URL

https://stg-spl.kcp.co.kr/std/inquery

운영 URL

https://spl.kcp.co.kr/std/inquery

정상 응답 기준

res_cd 값이 0000이면 정상 처리입니다.

요청 정보

현금영수증 조회는 현금영수증 거래번호로 요청합니다. 발급 응답으로 받은 cash_no 값을 tno에 설정하세요.
조회 요청에는 서명데이터가 필요하며, 가맹점 개인키로 생성한 kcp_sign_data를 함께 전송합니다.

Request Body 예시

{
	"site_cd": "T0000",
	"kcp_cert_info": "-----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----",
	"kcp_sign_data": "OehQsMb7S8KTCrp6Bi6fEVft...Y7ZX1BI3A==",
	"pay_type": "CASH",
	"tno": "25834156556924"
}

요청 파라미터

site_cd필수 string5
길이 5자리로 영문대문자 또는 영문대문자+숫자로 구성됩니다. 모든 서비스에 사용합니다.ex) site_cd: T0000
kcp_cert_info필수 string가변
NHN KCP에서 발급하는 서비스 인증서입니다.
파트너관리자 인증센터에서 다운로드한 PEM 파일 내용을 직렬화하여 사용합니다.ex) kcp_cert_info: -----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----
kcp_sign_data필수 string가변
가맹점의 부인방지와 요청 데이터의 무결성 검증을 위한 서명데이터입니다.
site_cd + "^" + tno + "^" + pay_type 규칙으로 문자열을 생성한 뒤, 개인키를 사용하여 SHA256withRSA 방식으로 서명합니다.ex) kcp_sign_data: OehQsMb7S8KTCrp6Bi6fEVft...Y7ZX1BI3A==
pay_type필수 string4
현금영수증 조회 대상 결제수단입니다. CASH 고정값을 사용합니다.ex) pay_type: CASH
tno필수 string14
현금영수증 조회 대상 거래번호입니다. 현금영수증 발급 응답으로 받은 cash_no 값을 입력합니다.ex) tno: 25834156556924

응답 정보

현금영수증의 발급·취소 상태가 res_cash_info 배열로 리턴됩니다.
발급 후 취소된 거래는 발급 건과 취소 건이 각각 배열 항목으로 포함될 수 있으므로, 각 항목의 tx_type과 reg_stat을 기준으로 처리하세요.
조회 실패 시 res_cd와 res_msg 외의 조회 응답 데이터는 리턴되지 않습니다.

Response Body 예시

{
	"res_cd": "0000",
	"res_msg": "정상처리",
	"res_en_msg": "processing completed",
	"res_cash_info": [
		{
			"cash_no": "25834156556924",
			"receipt_no": "591482610",
			"trade_time": "20251231115951",
			"proc_time": "20251231143944",
			"reg_stat": "NTRW",
			"reg_desc": "KCP 등록 완료",
			"tx_type": "A"
		},
		{
			"cash_no": "25834156556924",
			"receipt_no": "591320760",
			"trade_time": "20251231115951",
			"proc_time": "20251231144001",
			"reg_stat": "NTRW",
			"reg_desc": "KCP 등록 완료",
			"tx_type": "P"
		}
	]
}

응답 파라미터

res_cd string4
결과 코드입니다. 정상 처리된 경우 0000을 리턴합니다.ex) res_cd: 0000
res_msg string100
결과 메시지입니다. 현금영수증 조회가 정상 처리되면 정상처리가 리턴됩니다.ex) res_msg: 정상처리
res_en_msg string100
영문 결과 메시지입니다. 정상 처리 시 processing completed가 리턴됩니다.ex) res_en_msg: processing completed
res_cash_info array가변
현금영수증 발급·취소 상태를 담은 조회 결과 목록입니다. 상태 변경 이력이 여러 건이면 배열 항목이 여러 개 리턴됩니다.ex) res_cash_info: [{"cash_no":"25834156556924",...}]
res_cash_info[].cash_no string14
조회한 현금영수증 거래번호입니다. 요청한 현금영수증 거래번호가 리턴됩니다.ex) res_cash_info[].cash_no: 25834156556924
res_cash_info[].receipt_no string9
현금영수증 승인번호입니다. 발급·취소·부분취소 항목별 승인번호가 리턴됩니다.ex) res_cash_info[].receipt_no: 591482610
res_cash_info[].trade_time string14
현금영수증의 원 거래시각입니다. YYYYMMDDHHMMSS 형식으로 리턴됩니다.ex) res_cash_info[].trade_time: 20251231115951
res_cash_info[].proc_time string14
해당 발급 또는 취소 요청이 처리된 시각입니다. YYYYMMDDHHMMSS 형식으로 리턴됩니다.ex) res_cash_info[].proc_time: 20251231143944
res_cash_info[].reg_stat string4
현금영수증 등록 상태 코드입니다. 등록 상태 코드 표를 참고합니다.ex) res_cash_info[].reg_stat: NTRW
res_cash_info[].reg_desc string20
현금영수증 등록 상태에 대한 설명입니다.ex) res_cash_info[].reg_desc: KCP 등록 완료
res_cash_info[].tx_type string1
현금영수증 거래 상태입니다. 승인 건은 A, 취소 건은 C, 부분취소 건은 P로 리턴됩니다.ex) res_cash_info[].tx_type: A

구현 참고사항

조회 요청 구현 포인트 보기

현금영수증 조회 서명 대상 문자열은 site_cd + "^" + tno + "^" + pay_type 순서로 구성합니다.

// 현금영수증 조회 서명데이터 생성
String targetData = siteCd + "^"
                  + tno + "^"
                  + payType;

Signature signature = Signature.getInstance("SHA256WithRSA");
signature.initSign(privateKey);
signature.update(targetData.getBytes(StandardCharsets.UTF_8));

String kcpSignData =
    Base64.getEncoder().encodeToString(signature.sign());

kcp_cert_info와 개인키는 웹이나 클라이언트에 노출하지 말고 가맹점 서버의 안전한 저장소에서 관리하세요.

res_cash_info는 배열이므로 단일 객체로 가정하지 말고 전체 항목을 순회하여 발급·취소·부분취소 상태를 처리하세요.

현금영수증 등록 상태 코드

상태 코드설명
NTRWKCP 등록 완료
NTNW국세청 등록 대기
NTNC국세청 등록 완료
NTNE국세청 등록 오류
NTNF국세청 거절