전자세금계산서연동API로간단한쇼핑몰개발

안녕하세요 도치입니다. 최근 추진하고 있는 회사 프로젝트로 B2B 쇼핑몰 사이트를 개발 중입니다. 일반 사이트와 달리 사업자가 이용하는 쇼핑몰이기 때문에 세금계산서 발급 기능이 필요했습니다. 지금까지 개발해본 경험이 없는 기능이라 구글을 통해 관련 정보를 찾아봤습니다.

구글 검색을 통해 세금계산서 발급 기능을 알아보던 중 전자세금계산서 API를 제공하는 바로빌 개발자센터를 알게 되었습니다. 우리가 연동 검토 시 가장 중요하게 생각하는 부분은 API 기능과 견적 부분이었습니다. 기능은 테스트 진행하면서 알아보기로 했고 우선 단가 파악을 위해 견적서를 받아봤습니다. 마침 전자세금계산서 발행량이 많은 기업을 위한 대량형 요금제가 있어 대량형 요금제로 문의를 남겼습니다. 생각했던 단가와 비슷한 단가가 나오길 바라며 이메일을 열어보니 견적서와 제안서가 첨부되어 있었습니다.

회사 프로젝트라 혼자 결정할 수 없고 이메일로 받은 견적서는 위쪽에 보고하려고 출력했어요. 보고 결과 견적이 타사에 비해 저렴하다는 말이 나와서 바로 빌딩을 통해 하기로 결정했습니다.우리가 연동하고자 하는 전자세금계산서 API 상품은 전자세금계산서 발급과 홈택스 매입 매출 조회입니다. 참고로 ‘홈택스 매입 매출 조회’는 홈택스에 신고된 전자세금계산서 매입/매출 데이터를 조회하는 기능입니다.

Barlovil API는 이 외에도 매우 다양한 기능을 API로 제공하고 있어 관심 있는 기업이라면 참고해보셔도 좋을 것 같습니다. 제공 API 상품으로는 전자세금계산서 발행, 홈택스 매입 매출조회, 계좌조회, 전자문서, 현금영수증, 문자메시지, 팩스, 카드조회, 계좌조회 등이 있습니다.

사이트에서는 전자세금계산서 API 매뉴얼을 볼 수 있었고 샘플 소스를 다운로드할 수 있었습니다. 샘플 소스 코드를 알아본 결과 바로 빌딩 API를 연동시키는 데 어려움이 없다고 생각했습니다.테스트 진행 시 테스트 키가 필요한데 이메일/소셜 등록만으로 간편하게 자동 발급받을 수 있었습니다.바로빌 개발자 센터에서는 다양한 언어를 제공하고 있어 활용 범위가 넓어졌습니다. JAVA/ Node.js / .NET Framework / Visual Basic / Python / Power Builder / Delphi / PHP / ASP / 기타 언어 등 다양한 언어를 제공하고 있습니다. 이번 프로젝트에서는 JAVA 언어를 사용하고 IDE는 IntelliJ를 사용하여 진행하기로 했습니다.바로빌 개발 가이드 언어별 환경설정으로 회사에서는 jar 파일을 프로젝트에 추가하는 방식을 채택했습니다.설명에 따라 자바 샘플 소스 코드를 다운로드하고 jar 파일을 복사하여 진행 중인 프로젝트 내부에 넣었습니다.개발 작업에 앞서 전체적인 전자세금계산서 연동 구성도를 살펴봤습니다. 일단 테스트베드는 바로 빌딩에서 제공해준 포인트로 테스트가 가능하고(무료) 기한 제한이 없다고 해서 테스트를 시작했습니다.세금계산서에는 공급업체와 공급업체가 즉, 2개의 회사가 필요합니다. 따라서 정발급을 테스트하기 전에 Bill이 제공하는 API를 활용하여 회원사를 추가하면 되는데요. 바로빌 개발자 센터에서 다운로드한 샘플 소스를 기반으로 테스트를 수행했습니다. 코드를 열어본 결과 상세한 주석과 함께 작성되어 있었고 필자가 해야 할 일은 주석을 참고하여 빈칸에 값만 작성하면 되었습니다.로그인이 성공하여 API를 통해 간편하게 회원가입을 할 수 있었습니다.빌딩 API는 대부분의 경우 결과 값이 1이라면 성공입니다.에러의 경우 마이너스 값 5자리 숫자에서 반려됩니다.함수 검색 및 오류 코드 조회는 Baroulovil연동 API설명서에서 자세히 볼 수 있습니다.프로젝트 진행 중에 작성된 테스트 코드나 주석만 잘 모르는 경우, 함수 검색하고 설명을 보면 잘 이해할 수 있었습니다.또 API에서 개발할 경우, 에러가 자주 접할 수밖에 없는데 다른 API을 사용한 경우, 오류 설명이 굳어 뭘 잘못했는지 알기 힘든 부분도 많았지만 Barlovil매뉴얼은 에러 코드의 세분화가 잘 되어 있어서 내가 대체 무엇을 잘못했는지를 정확하게 일러 주고 프로젝트와 결합하기 쉬웠어요.이것만으로는 해결하지 못할 경우 바로 빌딩 개발자 센터의 기술 문의를 통해서 글로 써서 듣거나 전화를 직접 할 수도 있습니다.특히 기술에 관한 문의 전화는 실무 개발자들이 받고 며칠 걸린 에러가 전화 한통에 의해서 금방 해결되기도 했습니다.이에 따른 정규 발행의 테스트를 실시하기 위해서 프로바이더와 프로바이더의 2사람의 회원이 준비되었습니다.마침내 세금 계산서를 발행하기 위한 준비를 끝냈습니다.정규 발행도 빌딩 API샘플 코드에 있는 소스를 코피페하고 해당 주석에 맞추어 작성하면 좋겠네요.서플라이어 서플라이어 공급 가격, 품목 등을 입력하고 실행하면 성공 메시지가 표시됩니다.눈으로 직접 확인하기 위해 바로 빌테스 침대에 접속했습니다. 방금 API 테스트가 성공하여 전자세금계산서 정기발행으로 발행된 것을 볼 수 있습니다.정발행한 전자세금계산서를 클릭해보면 코드에 입력한 대로 적혀 있는 것을 확인할 수 있습니다.후기API는 날씨, 지도 등 정보만 뿌리는 작업만 한 경험이 있고 진행 중 삽도 여러 번 했습니다. 필자와 같이 전자세금계산서 API 연동을 알아보고 있는 개발자가 있다면 바로 빌딩개발자센터를 고려해 보는 것도 나쁘지 않을 것이며, 보다 자세한 내용은 아래 링크에서 확인하시기 바랍니다. 다음 게시물에서는 다른 API를 테스트한 내용을 기록할 예정입니다.API는 날씨, 지도 등 정보만 뿌리는 작업만 한 경험이 있고 진행 중 삽도 여러 번 했습니다. 필자와 같이 전자세금계산서 API 연동을 알아보고 있는 개발자가 있다면 바로 빌딩개발자센터를 고려해 보는 것도 나쁘지 않을 것이며, 보다 자세한 내용은 아래 링크에서 확인하시기 바랍니다. 다음 게시물에서는 다른 API를 테스트한 내용을 기록할 예정입니다.