0. 회사 ERP에 거래업체를 등록할 때마다 매번 국세청 사이트에 접속해서 사업자 번호로 사업자 상태를 조회해서 같이 입력을 해줘야 함
1. 국세청 사이트는 IE 전용이라 날 귀찮게 함.
2. 참고 또 참고 했지만, 역시 결국 귀찮음.
3. 에라이 개발해보자!!
4. 일단 있는거 있음 날로 먹기로 결심
5. 절라 구글링 해도 안나오거나, 뭔 놈의 유료로 파는 것만 발견.
6. 국세청 사이트의 해당 서비스를 분석
7. 결국은 서블릿 호출 + XML 전문통신
8. 간단하게 하기 위해서 ASP로 개발. (Java도 마찬가지 임.. 귀찮아서 개발 안함.)
9. 이하 소스
10. 퍼갈땐 출처 좀 밝혀 주길..(혹시 알어... 출세할지.. 불펌하면.. 혼내줄꺼임!)
11. git 에도 추가 (
https://github.com/jaymz9634/retcompanystatus)
--------------------------------------------------------------------
2020-03-03 내용 추가:
국세청에서 과도한 접근에 대한 금지를 해놨음.
자체 테스트 해봤을때 한번에 30건 정도 조회하고 1분 쉬었다가 요청하면 문제없이 처리 됨을 확인.
내 경우에는 java로 구현해서 thread.sleep 으로 30건 마다 1분씩 쉬게해서 처리 완료.
<%
Session.CodePage = 949
Response.Charset = "euc-kr" '결과가 한글이기에 안 깨지게...'
'On Error Resume Next'
txprDscmNo = Request("txprDscmNo")
xmldata = xmldata & "<map id='ATTABZAA001R08'><pubcUserNo/><mobYn>N</mobYn><inqrTrgtClCd>1</inqrTrgtClCd><txprDscmNo>"&txprDscmNo&"</txprDscmNo><dongCode>05</dongCode><psbSearch>Y</psbSearch><map id='userReqInfoVO'/></map>"
set api = createobject("msxml2.serverXmlhttp")
api.open "POST", "https://teht.hometax.go.kr/wqAction.do?actionId=ATTABZAA001R08&screenId=UTEABAAA13&popupYn=false&realScreenId=", false
api.setRequestHeader "content-type","text/xml; charset=utf-8"
api.send xmldata
if api.status = 200 Then
Response.ContentType="text/xml"
Response.Write(api.ResponseText)
else
Response.Write("[statusCode : "&api.status&"]" & "<br/>")
Response.Write("<hr/>")
Response.Write(xmldata & "<br/>")
Response.Write("<hr/>")
Response.Write(api.responseText & "<br/>")'
End if
If Err.number <> 0 Then '오류 발생 시 이 부분 실행
Response.Write "<b3>" & Err.Source & "<hr noshade></h3>"
Response.Write "오류 번호 : " & Err.number & "<br>"
Response.Write "내용 : " & Err.Description & "<br>"
End If
Set api = nothing
%>