영수증 엑셀 노가다 탈출

안녕하세요, 15년 차 SCM 및 자동화 전문가 에이드네(Aidne)입니다. 매월 말일이 되면 기업의 재무팀과 영업팀 책상 위는 각종 영수증과 송장(Invoice) 더미로 뒤덮입니다. 이른바 ‘김 대리의 엑셀 노가다’가 절정에 달하는 시기죠. 공급사마다 제각각인 송장 양식을 보며 일일이 날짜, 금액, 부가세, 거래처명을 엑셀에 타이핑하는 작업은 엄청난 시간 낭비일 뿐만 아니라 휴먼 에러를 유발하는 주범입니다.

과거에는 특정 양식만 읽어내는 템플릿 기반의 구형 OCR(광학 문자 인식) 솔루션을 사용했지만, 양식이 조금만 바뀌어도 오류를 뿜어내는 ‘예쁜 쓰레기’로 전락하기 일쑤였습니다. 하지만 이제는 다릅니다. 문맥을 이해하는 ChatGPT API(GPT-4o Vision)와 노코드 자동화 툴인 Make를 결합하면, 마치 숙련된 실무자가 눈으로 읽고 입력하듯 완벽한 데이터 파이프라인을 구축할 수 있습니다. 오늘은 현업에서 즉시 적용 가능한 송장/영수증 OCR 자동화 워크플로우를 단계별로 깊이 있게 파헤쳐 보겠습니다.

송장 및 영수증 데이터 수기 입력의 한계와 AI 자동화의 필요성

실무에서 마주하는 영수증과 송장은 결코 정형화되어 있지 않습니다. 구겨진 영수증 폰카 사진, 삐뚤어진 스캔본, 각기 다른 표 구조를 가진 PDF 송장 등 변수가 무한합니다. 기존의 룰(Rule) 기반 시스템은 이러한 비정형 데이터를 처리하는 데 명확한 한계를 보였습니다.

반면, ChatGPT API를 활용한 AI 자동화는 ‘시각적 문맥 이해(Visual Context Understanding)’를 통해 이 문제를 해결합니다. 양식이 달라도 “총 결제 금액을 찾아줘”, “공급가액과 부가세를 분리해 줘”라는 자연어 프롬프트 하나면 충분합니다. 이는 단순한 업무 효율화를 넘어, 기업의 데이터 입력 오류율을 0%에 가깝게 만들고 실시간 비용 트래킹을 가능하게 하는 핵심 경쟁력이 됩니다.

ChatGPT API와 Make를 활용한 송장 OCR 자동화 워크플로우 구축 (Deep-Dive)

OCR 자동화 핵심 3단계

지금부터 수박 겉핥기식 소개가 아닌, 실제 현업에서 작동하는 Make(구 Integromat) 기반의 자동화 파이프라인 세팅 방법을 3단계로 나누어 구체적으로 설명하겠습니다. 이 파이프라인은 잘 설계된 공장의 컨베이어 벨트처럼 이메일 수신부터 ERP 입력까지의 전 과정을 통제합니다.

1단계: Gmail 트리거 설정 (이메일 수신 및 첨부파일 인식)

자동화의 첫 단추는 데이터가 들어오는 입구를 통제하는 것입니다. 대부분의 송장과 영수증은 이메일 첨부파일 형태로 수신됩니다. Make에서 Gmail의 ‘Watch Emails’ 모듈을 트리거로 배치합니다.

  • 필터링 설정: 제목에 ‘송장’, ‘Invoice’, ‘영수증’, ‘청구서’가 포함된 이메일만 감지하도록 Query를 설정합니다.
  • 첨부파일 다운로드: 이메일에 첨부된 PDF, JPG, PNG 파일을 인식하여 다음 모듈로 넘겨주는 데이터 패스(Data Pass)를 구성합니다. 이 과정에서 파일 용량이 너무 크면 API 호출 오류가 날 수 있으므로, 필요시 이미지 리사이징 모듈을 중간에 삽입하는 것도 실무 팁입니다.

2단계: ChatGPT API (Vision) 연동 및 프롬프트 엔지니어링

이 워크플로우의 핵심인 데이터 추출 단계입니다. Make에서 OpenAI의 ‘Analyze Image (Vision)’ 모듈 또는 ‘Make an API Call’ 모듈을 연결하고, 1단계에서 넘겨받은 첨부파일을 매핑합니다. 여기서 가장 중요한 것은 AI가 뱉어내는 결과물이 즉시 엑셀이나 ERP에 들어갈 수 있도록 JSON 포맷으로 강제하는 프롬프트 엔지니어링입니다.

[현업용 프롬프트 예시]
“너는 15년 차 전문 회계 담당자야. 첨부된 송장/영수증 이미지를 분석해서 다음 정보를 정확히 추출해. 결과는 반드시 마크다운이나 부연 설명 없이 오직 JSON 형식으로만 출력해.
{ ‘Date’: ‘YYYY-MM-DD’, ‘VendorName’: ‘문자열’, ‘TotalAmount’: ‘숫자만’, ‘TaxAmount’: ‘숫자만’ }
만약 부가세(TaxAmount)가 명시되어 있지 않다면 TotalAmount의 10%를 계산해서 넣어줘.”

3단계: 추출 데이터 구글 시트 및 ERP 자동 입력 (데이터 파이프라인)

마지막으로, ChatGPT가 깔끔하게 파싱(Parsing)해 준 JSON 데이터를 우리가 원하는 목적지에 적재합니다. 가장 접근하기 쉬운 Google Sheets의 ‘Add a Row’ 모듈을 연결합니다.

앞선 모듈에서 추출된 JSON 데이터를 Make의 ‘Parse JSON’ 모듈로 한 번 변환한 뒤, 구글 시트의 각 열(A열: 날짜, B열: 거래처명, C열: 총금액 등)에 드래그 앤 드롭으로 매핑합니다. 만약 사내에 자체 ERP나 슬랙(Slack)을 사용 중이라면, HTTP 모듈을 추가해 ERP API 엔드포인트로 데이터를 쏘아주거나, 슬랙으로 “[알림] A거래처의 1,500,000원 송장이 자동 입력되었습니다”라는 메시지를 보내도록 분기(Router)를 태울 수도 있습니다.

전사적 AI 워크플로우 도입: B2B 의사결정권자를 위한 제언

개인과 소상공인이라면 위에서 설명한 3단계 워크플로우만으로도 매월 수십 시간의 엑셀 노가다를 줄일 수 있습니다. 하지만 전사적 차원의 도입을 고민하는 B2B 의사결정권자라면 시야를 더 넓혀야 합니다.

수천 장의 송장을 처리할 때 발생하는 API 요금 최적화, 환율 변동이 적용된 다국어 인보이스 처리, 그리고 AI가 데이터를 인식하지 못했을 때 사람이 개입하는 ‘Human-in-the-loop’ 예외 처리 프로세스 등은 단순한 툴 연결을 넘어선 ‘아키텍처 설계’의 영역입니다. 고도화된 SCM 데이터 파이프라인과 에러 핸들링 로직이 뒷받침되지 않으면, AI 자동화는 결국 또 다른 관리 포인트를 낳는 골칫거리가 될 수 있습니다. 전문가의 컨설팅을 통해 기업 맞춤형 노코드/로우코드 시스템을 구축해야 하는 이유가 바로 여기에 있습니다.

💡 3줄 요약 & 다음 스텝

  • 비정형 영수증/송장 데이터는 ChatGPT API(Vision)를 통해 정확한 텍스트로 자동 추출이 가능합니다.
  • Make(구 Integromat)를 활용해 Gmail 수신부터 구글시트/ERP 입력까지 무인화 파이프라인을 구축할 수 있습니다.
  • 전사적 도입 시에는 단순 툴 연결을 넘어 예외 처리가 포함된 견고한 자동화 아키텍처 설계가 필수적입니다.

이 내용이 도움이 되셨다면, 실무자의 단순 반복 업무를 근본적으로 해결하는 아래 글도 반드시 읽어보세요!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다