블로그로 돌아가기
가이드

현금영수증 API 테스트, 이것만 확인하세요

등록부터 취소, 재처리까지 현금영수증 API의 필수 테스트 케이스와 검증 포인트를 알아봅니다.

2025-03-12
7분
#현금영수증#테스트#QA
현금영수증 API 테스트, 이것만 확인하세요 썸네일 이미지

현금영수증 연동, 제대로 테스트하고 계신가요?

"현금영수증 발행은 잘 되는데, 취소는 테스트 안 해봤어요."

QA 단계에서 자주 듣는 얘기예요. 현금영수증은 정상 발행만 테스트하고 넘어가기 쉬운데요, 실제 운영에서는 취소, 재처리, 오류 조회 같은 예외 상황이 더 많이 발생해요.

이번 글에서는 현금영수증 API의 필수 테스트 시나리오 17가지를 소개할게요. 실무에서 바로 활용할 수 있도록 요청값, 기대 결과, 검증 포인트까지 정리했어요.


1. 등록 테스트

등록 CASE 1: 일반 과세 발행

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
assort0발행/취소 구분 (0: 발행)
taxTnN과세 유형 (N: 일반과세)
amt9090공급가액
vat910부가세

기대 결과: resultCd: 0000 - 정상 발행

등록 CASE 2: 면세 발행

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
taxYnY과세 유형 (Y: 면세)
amt10000거래 금액

기대 결과: resultCd: 0000 - 면세 발행 성공

등록 CASE 3: 복합과세 발행

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
taxYnG과세 유형 (G: 복합과세)
amt15000공급가액
vat500부가세

기대 결과: resultCd: 0000 - 복합과세 성공

등록 CASE 4: 자동 과세 판정

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
taxYn(공백)과세 유형 미입력
amt10000거래 금액

기대 결과: resultCd: 0000 - 자동과세 판정 성공


2. 등록 실패 검증

검증 CASE 1: 금액 올림 체크

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
amt올림된 값소수점 포함된 금액
vat올림된 값소수점 포함된 부가세

기대 결과: resultCd: 1010 - 금액검증로직 확인

검증 CASE 2: 필수값 누락

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
transNo(공백)거래번호 미입력

기대 결과: resultCd: 1112 - 필수값 제공

검증 CASE 3: 중복 등록 차단

전제 조건: 등록 CASE 1 성공 후

API: 현금영수증 등록

핵심 파라미터:

파라미터설명
transNo등록 CASE 1과 동일중복된 거래번호

기대 결과: resultCd: 1115 - 중복등록


3. 취소 테스트

취소 CASE 1: 전체 취소

전제 조건: 정상발행건 존재

API: 현금영수증 취소

핵심 파라미터:

파라미터설명
assort1발행/취소 구분 (1: 취소)
authNo원거래 authNo원거래 승인번호
orgTrOt원거래 정보원거래 일시

기대 결과: resultCd: 0000 - 전체취소 성공

취소 CASE 2: 부분 취소

전제 조건: 정상발행건 존재

API: 현금영수증 취소

핵심 파라미터:

파라미터설명
assort1발행/취소 구분 (1: 취소)
amt부분금액원거래보다 작은 금액

기대 결과: resultCd: 0000 - 취소 확인 성공

취소 CASE 3: 취소 금액 초과

전제 조건: 부분취소 누적

API: 현금영수증 취소

핵심 파라미터:

파라미터설명
amt초과 금액원거래 금액보다 큰 금액

기대 결과: resultCd: 1116 - 취소금액 초과


4. 상태 조회

상태 조회 CASE 1: 정상 조회

API: 현금영수증 발급상태 조회

핵심 파라미터:

파라미터설명
trDt20250312100000발행 요청일시 (YYYYMMDDHHmmss)
assort0발행/취소 구분 (0: 발행)

기대 결과

  • resultCd: 0001 또는 0021
  • 검증 포인트: 상태확인

상태 조회 CASE 2: 존재하지 않는 거래

API: 현금영수증 발급상태 조회

핵심 파라미터:

파라미터설명
trDt임의값존재하지 않는 일시

기대 결과: resultCd: 1113 - 거래내역 없음, trDt 검증실패 확인


5. 오류 조회

오류 조회 CASE 1: D+1 조회

전제 조건: D+1 13시 이후

API: 현금영수증 발급오류내역 조회

핵심 파라미터:

파라미터설명
trDtGb1조회 구분 (1: 거래일자)
trDt120250312조회 시작일 (YYYYMMDD)

기대 결과

  • resultCd: CSV 또는 2000
  • 검증 포인트: 오류목록 또는 없음

오류 조회 CASE 2: 시간 제약

전제 조건: D+ 이전 시간

API: 현금영수증 발급오류내역 조회

핵심 파라미터:

파라미터설명
trDt1D+ 이전 날짜조회 불가 시간대

기대 결과: resultCd: 2001 - 결과없음


6. 재처리

재처리 CASE 1: 정상 재처리

전제 조건: 오류건 존재

API: 현금영수증 재처리

핵심 파라미터:

파라미터설명
reYnY재처리 여부
reTrDt원거래 일시원거래 발행일시
reAuthNo원거래 authNo원거래 승인번호

기대 결과: resultCd: 0000 - 재처리 성공

재처리 CASE 2: 원거래 없음

API: 현금영수증 재처리

핵심 파라미터:

파라미터설명
reYnY재처리 여부
reAuthNo잘못된 authNo존재하지 않는 승인번호

기대 결과: resultCd: 1118 - 원거래없음

재처리 CASE 3: 결과 조회

전제 조건: 재처리요청 완료

API: 현금영수증 재처리 결과조회

핵심 파라미터:

파라미터설명
searGb1조회 구분

기대 결과: resultCd: CSV - 결과조회, 00/09/99 확인


7. 테스트 체크리스트

필수 테스트 (Must Have)

  • 등록 CASE 1: 일반 과세 발행
  • 등록 CASE 2: 면세 발행
  • 등록 CASE 3: 복합과세 발행
  • 취소 CASE 1: 전체 취소
  • 검증 CASE 3: 중복 등록 차단
  • 상태 조회 CASE 1: 정상 조회

권장 테스트 (Should Have)

  • 등록 CASE 4: 자동 과세 판정
  • 검증 CASE 1: 금액 올림 체크
  • 검증 CASE 2: 필수값 누락
  • 취소 CASE 2: 부분 취소
  • 취소 CASE 3: 취소 금액 초과
  • 오류 조회 CASE 1: D+1 조회
  • 재처리 CASE 1: 정상 재처리

선택 테스트 (Nice to Have)

  • 상태 조회 CASE 2: 존재하지 않는 거래
  • 오류 조회 CASE 2: 시간 제약
  • 재처리 CASE 2: 원거래 없음
  • 재처리 CASE 3: 결과 조회

마치며

현금영수증 API는 정상 케이스보다 예외 케이스가 더 많아요. 운영 중에는 취소, 재처리, 오류 조회가 빈번하게 발생하기 때문에 이런 시나리오를 미리 테스트하는 게 중요해요.

이번 글에서 소개한 17가지 테스트 케이스를 체크리스트로 활용하면, 안정적인 현금영수증 연동을 구현할 수 있어요.

❓

더 궁금한 내용이 있나요?

FAQ
💬

기술지원이 필요한가요?