세금계산서 메일 자동수집, 만들고 나서야 방향이 틀린 걸 알았습니다
왜 메일함에 다 있는 자료를 매달 다시 찾았나
네 개 법인의 매입 자료를 챙기다 보면 매달 초에 같은 일을 반복하게 됩니다. 메일함을 열고, 지난달에 받은 세금계산서 메일을 검색하고, 첨부파일을 내려받아 법인별 폴더에 옮기는 일입니다. 자료는 분명히 메일함 안에 다 있습니다. 그런데 매달 한 시간 넘게 그걸 다시 찾고 있었습니다. 발신자가 거래처마다 다르고, 제목 형식도 제각각이고, 어떤 곳은 발행 대행 서비스 명의로 보내오기 때문입니다.
이 반복이 아까워서 자동수집을 만들기로 했습니다. 그리고 두 번의 시도가 실패한 뒤에야, 문제는 수집 방법이 아니라 수집이라는 목표 자체에 있었다는 걸 알게 됐습니다.
첫 시도: 메일 규칙으로 분류
가장 쉬운 방법부터 갔습니다. 메일 프로그램의 규칙 기능으로 “세금계산서”가 제목에 들어간 메일을 전용 폴더로 옮기게 했습니다. 첫 주에는 잘 되는 것처럼 보였고, 월초에 폴더를 열어보니 구멍이 여럿이었습니다.
- 제목에 “전자세금계산서”가 아니라 “[발행완료]”나 거래 건명만 쓰는 거래처가 있었습니다. 규칙에 안 걸리니 그대로 받은편지함에 남았습니다.
- 반대로 세금계산서라는 단어가 들어간 안내 메일, 광고성 메일이 전용 폴더에 섞여 들어왔습니다.
- 가장 곤란한 건 세금계산서를 위장한 스팸이었습니다. 규칙이 이런 메일을 진짜 자료와 같은 폴더에 넣어주니, 분류가 오히려 위험을 한곳에 모아주는 꼴이 됐습니다.
규칙을 고쳐서 발신자 주소 목록으로 바꿨습니다. 이번에는 거래처가 발행 대행 서비스를 바꿀 때마다 목록이 깨졌습니다. 관리 대상이 메일에서 발신자 목록으로 옮겨왔을 뿐, 반복 작업은 그대로였습니다.
규칙이 이렇게 쉽게 깨진 데는 저희 거래 구조도 한몫했습니다. 저희는 법인 네 곳이 거래하는 곳이 수십 곳이 넘고, 그중 상당수가 발행 대행 서비스를 거쳐 메일을 보내다 보니 규칙 하나로 걸러지는 비율이 애초에 낮았습니다. 거래처가 적고 발신 방식이 고정돼 있는 곳이라면 메일 규칙만으로도 충분할 수 있는데, 저희 구조에서는 규칙을 아무리 다듬어도 한계가 있었습니다.

두 번째 시도: 첨부파일 자동 저장
분류를 포기하고 저장을 자동화하는 쪽으로 방향을 틀었습니다. 지정한 폴더의 메일에서 PDF 첨부를 꺼내 법인별 폴더에 저장하는 스크립트를 만들었습니다. 저장 자체는 됐습니다. 문제는 저장된 결과물이었습니다.
- 파일명이 중구난방이었습니다. “세금계산서.pdf”가 열두 개 생겨서 뒤에 숫자가 붙었고, 어느 거래처 건인지 파일명만으로는 알 수 없었습니다.
- 같은 계산서를 두 번 보내는 거래처가 있었습니다. 수정 발행이 아니라 단순 재발송인데, 폴더에는 두 건으로 쌓였습니다.
- 반대로 메일 본문에 링크만 있고 첨부가 없는 발행 방식도 있었습니다. 스크립트는 이런 건을 조용히 건너뛰었고, 건너뛰었다는 사실은 아무 데도 남지 않았습니다.
이 마지막 항목이 결정타였습니다. 자동수집의 목적은 손을 더는 게 아니라 빠짐없이 모으는 것인데, 이 방식은 빠진 걸 빠졌다고 말해주지 못했습니다. 모인 것만 보이는 수집은 다 모였다는 착각만 키웁니다.
손으로 메일함을 뒤지던 시절과 스크립트로 저장하던 시절을 시간으로 비교하면, 저장 자체는 스크립트 쪽이 훨씬 빨랐습니다. 다만 스크립트가 놓친 건을 나중에 홈택스와 대조하며 찾아내는 시간까지 더하면 순수 저장 시간의 이득이 그대로 남았다고 보기는 어렵습니다.

복기: 원본은 메일함에 없었습니다
멈추고 나서 처음으로 “전자세금계산서의 원본이 어디에 있는가”를 따져봤습니다. 답은 메일함이 아니라 국세청 홈택스(hometax.go.kr)였습니다. 전자세금계산서는 발행되면 국세청에 전송되고, 매입 내역은 홈택스에서 법인별로 조회와 일괄 내려받기가 됩니다. 거래처가 메일을 안 보냈어도 발행됐다면 거기 있고, 메일이 두 번 왔어도 거기에는 한 건입니다.
그러니까 제가 자동화하려던 메일 수집은, 원본이 따로 있는 자료의 사본을 힘들게 긁어모으는 일이었습니다. 메일함을 뒤지던 매달의 한 시간도 같은 일이었습니다. 도구가 아니라 절차의 방향이 틀려 있었고, 자동화는 그 틀린 방향을 더 빨리 달리게 해줄 뻔했습니다.
“더 다듬겠다”가 아니라 “그만두겠다”였습니다
두 번의 시도가 실패한 뒤 방향을 바꾸겠다고 보고할 때, “메일 자동화를 더 다듬겠다”가 아니라 “메일 수집 자체를 그만두고 홈택스 조회로 기준을 바꾸겠다”고 말씀드렸습니다. 자동화를 고도화하는 이야기가 아니라 자동화 대상을 바꾸는 이야기라서 처음에는 되묻는 질문을 몇 번 받았습니다. 그때 썼던 설명이 “원본이 있는 곳에서 가져오면 메일이 몇 번을 오든, 안 오든 상관이 없어진다”는 말이었고, 이 한 줄로 정리가 됐습니다.

홈택스 조회를 기준으로 삼은 세 줄 절차
지금은 세 줄로 정리된 절차를 씁니다.
- 매입 세금계산서 집계의 기준은 홈택스 조회분입니다. 월초에 법인별로 내려받아 그 목록을 원본으로 삼습니다.
- 메일함은 수집처가 아니라 보조 확인처입니다. 홈택스 목록에 있는데 처리 근거가 필요한 건, 거래명세서나 계약 조건이 딸린 건만 메일에서 찾습니다.
- 종이 계산서와 카드 매입처럼 홈택스 목록 밖의 예외만 별도 목록으로 관리합니다. 예외 목록은 짧아야 정상이고, 길어지면 거래 방식을 바꿀 신호로 봅니다.
메일 규칙과 저장 스크립트는 둘 다 지웠습니다. 남긴 건 위장 스팸을 걸러내는 차단 규칙 하나뿐입니다. 자동화를 만들기 전에 “이 자료의 원본이 어디인가”를 먼저 물었다면 두 번의 시도는 필요 없었을 겁니다. 그 질문이 이 실패에서 건진 기준이고, 이후로 어떤 수집 자동화든 원본의 위치를 확인한 다음에 시작합니다.
홈택스 조회 권한이 회사에 없다면
이 절차는 홈택스에서 매입 세금계산서를 법인별로 조회하고 일괄 내려받을 권한이 회사 안에 있어야 돌아갑니다. 그 권한을 가진 사람이 매달 조회를 직접 할 수 있어야 하고요. 저희는 법인 네 곳 모두 홈택스 사업자 계정에 접근할 수 있는 구조라서 이 절차가 그대로 맞았는데, 만약 홈택스 조회 권한이 세무 대리인에게만 있고 회사 쪽에는 없다면 이 절차의 첫 단계부터 막힙니다. 그 경우에는 대리인에게 매달 매입 목록을 받는 일정부터 다시 정해야 할 겁니다.
조회 시간은 오히려 조금 늘었습니다
메일함을 뒤지던 시절과 지금의 홈택스 기준 절차를 시간으로 비교하면, 조회와 내려받기 자체는 비슷하거나 오히려 지금이 조금 더 걸립니다. 법인별로 로그인을 새로 해야 하고 조회 조건도 매번 맞춰야 하기 때문입니다. 그런데 그 뒤에 빠진 걸 다시 찾으러 메일함을 뒤지는 시간이 통째로 없어졌습니다. 체감상 줄어든 건 조회 시간이 아니라 뒤에 남는 불안과 재확인 시간 쪽이었습니다.
만든 스크립트는 버렸습니다
“메일 자동화를 열심히 다듬는 대신, 애초에 메일을 안 보는 쪽으로 바꿨다”고 하면 다른 법인 재무 담당자들은 대개 한 번 되묻습니다. “그럼 지금까지 만든 스크립트는 버리는 거냐”는 질문을 받았습니다. 맞습니다. 버렸습니다.
로그인 네 번과 예외 건의 메일함
법인 네 곳을 각각 로그인해서 조회해야 하니 한 번에 넷을 오가는 시간이 듭니다. 그리고 홈택스 목록과 메일의 거래명세서를 대조해야 하는 예외 건에서는 결국 메일함도 열어봐야 해서, 메일함을 완전히 안 보는 절차가 된 건 아닙니다. 다만 예전처럼 메일함이 시작점이던 것과, 지금처럼 홈택스가 시작점이고 메일함이 보조로 쓰이는 것은 순서가 다르고, 그 순서 차이가 매달 걸리는 시간의 차이를 만들었습니다.
메일 자동화 자체가 다 헛일은 아니었습니다
메일 규칙과 스크립트를 지웠다고 해서 그 시간을 통째로 버렸다고는 생각하지 않습니다. 두 번의 시도를 거치면서 거래처별 발신 방식과 발행 대행 서비스 목록을 정리하게 됐고, 이 목록은 홈택스 기준으로 바꾼 뒤에도 예외 건을 확인할 때 그대로 쓰고 있습니다. 실패한 자동화가 남긴 게 코드는 아니었지만, 거래처 사정을 정리한 목록은 남았습니다.
지난달 목록과 나란히 놓고 봅니다
홈택스 목록을 기준으로 삼기 시작한 뒤로 매달 하는 확인이 하나 늘었습니다. 지난달 조회분과 이번달 조회분을 나란히 놓고 갑자기 빠진 거래처가 있는지 보는 일입니다. 거래가 끊겨서 빠진 것과, 발행이 늦어져서 아직 안 보이는 것은 이번달 목록만 봐서는 구분이 안 됩니다. 이 확인이 매달 몇 분 더 드는데, 메일함을 뒤지던 시절에는 이런 비교 자체를 해본 적이 없었습니다. 원본을 기준으로 삼고 나서야 비교할 대상이 생긴 셈입니다.
이 비교 작업을 시작한 뒤로 실제로 발행이 늦어진 거래처를 두 번 발견했습니다. 예전 같으면 다음 달에 몰아서 두 건이 들어와도 그런가보다 하고 넘겼을 텐데, 지난달과 이번달을 나란히 대조하는 습관이 생긴 뒤로는 빠진 시점에 바로 거래처에 확인 연락을 넣게 됐습니다.
지금은 이 대조 결과를 매달 짧게 기록으로 남깁니다. 몇 월에 어느 거래처가 늦게 발행됐는지 적어두면, 같은 거래처가 반복해서 늦으면 그때는 거래처 쪽에 아예 발행 주기를 물어보는 계기로 삼습니다.
이어서 읽을 기록