사업자 등록 검증 API 설명 - Cake-ly/cake-ly-wiki GitHub Wiki
국세청 사업자 등록 정보 진위확인 및 상태 조회
주소
사용 기술
OpenFeign API
사업자 등록 정보 진위 확인 API
-
베이스
-
특징
- 1회 호출당 최대 100개 사업자 정보 처리
- 기본 JSON
-
메서드
- POST
-
API
/validate
-
역할
- 입력한 사업자 정보 일치 여부 확인
-
요청 본문
{ "businesses": [ { "b_no": "0000000000", // 사업자등록번호 (필수, 10자리 숫자) "start_dt": "20000101", // 개업일자 (필수, YYYYMMDD) "p_nm": "홍길동", // 대표자성명 (필수) "p_nm2": "", // 대표자성명2 (선택, 외국인 한글명) "b_nm": "(주)테스트", // 상호 (선택) "corp_no": "0000000000000", // 법인등록번호 (선택, 13자리 숫자) "b_sector": "", // 주업태명 (선택) "b_type": "", // 주종목명 (선택) "b_adr": "" // 사업장주소 (선택, v1.1부터 추가) } ] }
-
응답
-
일치
{ "status_code": "OK", "match_cnt": 1, "request_cnt": 1, "data": [ { "b_no": "0000000000", "valid": "01", // 일치 시 "rbf_tax_type": "부가가치세 일반과세자", // 직전 과세유형 (v1.1 추가) "rbf_tax_type_cd": "01" // 직전 과세유형 코드 (v1.1 추가) } ] }
-
불일치
{ "status_code": "OK", "match_cnt": 0, "request_cnt": 1, "data": [ { "b_no": "0000000000", "valid": "02", // 불일치 시 "valid_msg": "확인할 수 없습니다" } ] }
-
사업자 등록 상태 조회
-
베이스
- 동일
-
API
/status
-
요청
{ "b_no": ["0000000000"] // 사업자등록번호 배열 (필수, 10자리 숫자) }
-
응답
-
등록시
{ "status_code": "OK", "match_cnt": 1, "request_cnt": 1, "data": [ { "b_no": "0000000000", "b_stt": "계속사업자", "b_stt_cd": "01", // 01: 계속, 02: 휴업, 03: 폐업 "tax_type": "부가가치세 일반과세자", "tax_type_cd": "01", "end_dt": "20000101", "utcc_yn": "Y", "tax_type_change_dt": "20000101", "invoice_apply_dt": "20000101", "rbf_tax_type": "부가가치세 일반과세자", // 직전 과세유형 "rbf_tax_type_cd": "01" // 직전 과세유형 코드 } ] }
-
미등록시
등록되지 않은 경우: "tax_type": "국세청에 등록되지 않은 사업자등록번호입니다".
-
샘플 코드
var data = {
"b_no": ["0000000000"]
};
$.ajax({
url: "https://api.odcloud.kr/api/nts-businessman/v1/status?serviceKey=[서비스키]",
type: "POST",
data: JSON.stringify(data),
dataType: "JSON",
contentType: "application/json",
accept: "application/json",
success: function (result) {
console.log(result);
},
error: function (result) {
console.log(result.responseText);
}
});
요청 파라미터
- 공통:
- serviceKey: URL 쿼리스트링으로 전달 (공공데이터포털에서 발급).
- returnType: JSON (기본) 또는 XML.
- 진위확인:
- b_no: 10자리 숫자 (하이픈 제거).
- start_dt: YYYYMMDD 형식 (하이픈 제거).
- p_nm: 대표자 성명 (외국인: 영문명).
- p_nm2: 외국인 한글명 (선택, 비외국인은 빈 문자열).
- b_nm: 상호 (주식회사 관련 단어 위치 무관, 공백 무시).
- corp_no: 13자리 숫자 (하이픈 제거).
- b_sector, b_type, b_adr: 공백 무시.
- 상태조회:
- b_no: 10자리 숫자 배열 (하이픈 제거).
응답 코드
- 200: 정상 호출.
- 400: JSON 포맷 오류 (BAD_JSON_REQUEST).
- 411: 필수 파라미터 누락 (REQUEST_DATA_MALFORMED).
- 413: 100개 초과 요청 (TOO_LARGE_REQUEST).
- 500: 서버 오류 (INTERNAL_ERROR).
- 5: HTTP 오류 (HTTP_ERROR).