AI가 NF-e XML에서 데이터를 추출할 수 있을까?가능합니다 — 스마트 파싱, OCR이 아닙니다

네. AI는 브라질 NF-e(Nota Fiscal Eletrônica) XML 파일에서 공급업체 CNPJ, 제품 NCM 코드, ICMS/IPI 세금 값 및 라인 항목 세부 정보를 추출할 수 있습니다. 하지만 NF-e는 특별한 경우입니다. 데이터가 이미 XML로 구조화되어 있습니다. 여기서 추출이란 XML 스키마를 지능적으로 파싱하고 필드를 읽기 쉬운 스프레드시트 열에 매핑하는 것을 의미하며, OCR이 아닙니다. 각 공급업체의 NF-e는 동일한 정부 스키마를 따르지만, 서로 다른 선택적 필드, 세금 구성 및 버전별 요소를 포함하고 있어 수십 개의 공급업체를 수동으로 통합하는 것은 반복적인 골칫거리입니다.

수작업 입력은 그만 — AI가 대신 읽어드립니다
이미지나 PDF를 업로드하세요 — 10초 만에 정형 데이터로
지금 체험하기
회원가입 불필요 · 카드 불필요 · 10초 내 결과
AI가 브라질 NF-e XML 세금 문서에서 데이터를 추출하여 구조화된 스프레드시트로 변환

핵심 요약

  1. 정부 표준화된 NF-e XML 데이터는 기계가 쉽게 읽을 수 있어야 하지만, 대부분의 브라질 재무팀은 여전히 각각 다른 ERP를 사용하는 30개 공급업체의 필드를 수동으로 통합하는 데 매달 이틀을 소비합니다.
  2. 버전 4.0에서 완벽하게 작동하는 NF-e 파싱 스크립트는 버전 2.0에서 조용히 실패합니다. 동일한 필드가 단순히 존재하지 않기 때문입니다. XML은 유효하지만 필드가 없으며, 스크립트는 찾을 수 없는 것을 보고할 방법이 없습니다.
  3. 의미론적 추출은 필드가 XML 트리에서 어디에 위치하는지가 아니라 의미(공급업체 CNPJ 또는 ICMS 값)를 기준으로 읽기 때문에, 하나의 열 정의 세트로 어떤 공급업체가 보냈거나 어떤 버전을 사용했는지에 관계없이 모든 NF-e에서 동일한 데이터를 추출합니다.

NF-e XML 추출 작동 방식 — 그리고 여전히 "추출"이 필요한 이유

NF-e 데이터가 이미 XML에 있다면, XSLT 스타일시트를 작성해서 끝내면 되지 않을까요? 그 이유는 단 한 가지 형식의 NF-e만 받는 경우가 없기 때문입니다.

브라질의 NF-e 시스템은 Ajuste SINIEF 07/05에 의해 만들어졌으며 현재 사실상 모든 B2B 거래에 필수입니다. 이 시스템은 정부 표준 XML 스키마(현재 버전 4.0)를 정의합니다. 모든 전자 송장은 동일한 기본 구조를 갖습니다: 발행자 CNPJ 및 회사명, 수취인 데이터, NCM 분류 및 CFOP 코드가 포함된 품목, 그리고 ICMS(주 부가가치세), IPI(연방 소비세), PIS, COFINS의 네 가지 개별 세금 블록입니다.

문제는 한 달에 30개 공급업체로부터 XML을 받을 때 발생합니다. 각 업체는 TOTVS, Sankhya, Omie, SAP Business One 등 서로 다른 ERP를 사용하며, 각각 다른 선택 필드를 채웁니다. 한 곳은 운송 세부 정보를 포함하지만 다른 곳은 생략합니다. 한 곳은 확장된 합계 기능이 있는 NF-e 4.0을 사용하는 반면, 다른 곳은 여전히 3.10을 운영합니다.

기존 XML 파싱 방식(XSLT, Python 스크립트, Power Query 가져오기)은 필드가 없거나 네임스페이스가 변경되면 작동이 중단됩니다. AI는 XML을 의미적으로 읽어 트리 내 위치가 아닌 표현하는 내용을 기준으로 필드를 식별합니다. 이는 구조화된 데이터에 적용된 사용자 정의 열 추출입니다. 원하는 출력 열("공급업체 CNPJ", "NCM 코드", "ICMS 값")을 정의하면 AI가 선택 필드나 버전 차이에 관계없이 일치하는 데이터를 찾습니다.

AI가 NF-e XML에서 잘하는 점

NF-e XML의 구조화된 특성 덕분에 AI 추출 정확도는 이미지 기반 문서보다 높으며, 핵심 표준화 필드의 경우 종종 99%를 초과합니다. 형식 제약 조건은 세 가지 방식으로 AI에 유리하게 작용합니다.

CNPJ 및 CPF 세금 ID

모든 NF-e XML에는 <emit> 블록 내 고정 위치에 발행자의 CNPJ(브라질 법인 등록번호 — 14자리 연방 세금 ID)가 포함됩니다. 엄격한 XX.XXX.XXX/XXXX-XX 형식과 예측 가능한 XML 경로 덕분에 추출이 사실상 오류 없이 이루어집니다. NF-e 3.10 및 4.0 XML의 CNPJ 추출 정확도는 99.5%를 초과합니다. 구조화된 형식은 스캔된 종이 송장을 괴롭히는 문자 인식 모호성을 제거합니다.

NCM 코드

NCM(Nomenclatura Comum do Mercosul) 코드는 메르코수르 회원국에서 사용하는 8자리 제품 분류 코드로, 각 라인 항목 내 자체 <NCM> 태그에 위치합니다. SPED Fiscal(브라질 디지털 세무 장부 시스템)을 신고하는 기업의 경우, 매입 NF-e에서 정확한 NCM을 추출하는 것이 매우 중요합니다. 잘못된 코드는 세무 감사를 유발합니다. AI는 전용 XML 태그 내 엄격한 8자리 숫자 패턴을 따르기 때문에 98-99%의 정확도를 달성합니다.

세금 값(ICMS, IPI, PIS, COFINS)

단일 NF-e에는 각각 고유한 계산 기준, 세율 및 최종 값을 가진 4개의 개별 세금이 포함될 수 있으며, 이는 다른 국가의 인보이스에 비해 비정상적으로 세금 항목이 많습니다. 세금 섹션은 깔끔하게 분리된 XML 블록이며, AI는 이를 높은 신뢰도로 출력 열에 매핑합니다. 모든 세금 섹션이 채워진 NF-e의 경우 ICMS 값 정확도는 99% 이상에 도달하며, 이는 전위 오류가 발생하는 수동 데이터 입력보다 높습니다.

AI가 NF-e XML에서 어려움을 겪는 부분

NF-e 추출을 정확하게 만드는 구조는 동시에 예외 사례도 만듭니다. 세 가지 시나리오에서 신뢰도가 낮아집니다.

버전 간 스키마 차이

NF-e는 여러 버전(1.0, 2.0, 3.10, 4.0(현행))을 거쳐 발전했습니다. 각 개정판에서 XML 태그가 추가, 제거 또는 이름이 변경되었습니다. AI가 필드가 존재하지 않는 이전 버전 NF-e 2.0 XML을 처리할 때는 셀을 올바르게 비워두지만, 값이 있을 것으로 예상하는 다운스트림 스프레드시트 수식이 깨질 수 있습니다. 해결 방법: 이전 버전 XML을 별도로 일괄 처리하고 추출 후 검증을 적용하여 누락된 필드를 표시합니다.

선택 필드 및 서비스 전용 NF-e

많은 NF-e 필드는 선택 사항입니다. 서비스 인보이스는 제품 관련 필드(NCM 코드, IPI 등)를 완전히 생략합니다. AI가 혼합 배치를 처리할 때는 적용 불가능한 열을 올바르게 비워두지만, 스프레드시트가 모든 행에 NCM 코드가 있다고 가정하면 서비스 행이 불완전하게 보입니다. 두 시나리오를 모두 포괄하는 열(예: "NCM 코드(제품 NF-e 전용)")을 정의하여 기대치를 설정하십시오.

XML + DANFE 혼합 워크플로우

DANFE(Documento Auxiliar da NF-e)는 NF-e의 인쇄용 보조 PDF입니다. 많은 중소 브라질 공급업체는 원본 XML이 아닌 DANFE만 보냅니다. DANFE PDF는 이미지 기반 AI 추출이 필요하며 정확도는 90-95%로, 직접 XML 파싱의 99%+보다 낮습니다. 모범 사례: 모든 공급업체에 XML을 요청하고 DANFE 전용 파일은 별도의 신뢰도가 낮은 배치로 처리하세요.

NF-e XML 추출에서 최상의 결과를 얻는 방법

브라질 전자 송장 작업 시 측정 가능한 차이를 만드는 다섯 가지 단계입니다.

1
XML 경로가 아닌 의미 있는 열 이름을 정의하세요. /nfeProc/NFe/infNFe/emit/CNPJ 같은 XPath 문자열 대신 "공급업체 CNPJ", "NCM 코드", "ICMS 값"을 사용하세요. AI는 이를 의미적으로 해석하여 CNPJ가 NF-e 4.0 위치에 있든 약간 다른 NF-e 3.10 위치에 있든 찾아냅니다. 이는 구조화된 데이터에 적용된 사용자 정의 열 추출입니다.
2
DANFE PDF가 아닌 XML을 요청하세요. 이 한 가지 습관 변화만으로 정확도가 5-10% 포인트 향상됩니다. 브라질 법률은 공급업체가 XML을 제공하도록 요구합니다. 새 공급업체에 보낼 문구: "Por favor, enviar o arquivo XML da NF-e juntamente com o DANFE."
3
일괄 처리 시 NF-e를 버전별로 그룹화하세요. NF-e 4.0 XML을 이전 버전인 3.10 또는 2.0 파일과 분리하세요. 최신 스키마 버전은 더 많은 필드를 채웁니다. 함께 처리하면 이전 버전 행에 빈 셀이 더 많아져 추출 실패처럼 보일 수 있습니다. 버전별로 그룹화하면 각 배치를 올바른 기대치로 검토할 수 있습니다.
4
세금 검증을 위해 계산된 열을 사용하세요. 브라질 세금은 내장된 감사 확인 기능을 제공합니다. ICMS 값 ≈ ICMS 과세표준 × ICMS 세율을 확인하는 계산된 열을 정의하세요. AI가 추출 중 불일치를 표시하므로 나중에 회계 시스템에서 발견할 필요가 없습니다.
5
합계 블록을 점검하세요. <total> 섹션에는 최종 합계 값이 포함됩니다. 추출 후 라인 항목 합계가 XML의 선언된 총액과 일치하는지 확인하세요. 불일치는 모든 필드를 검토하는 것보다 빠르게 오류를 알려줍니다. 깨끗한 XML의 경우 2% 미만의 NF-e만 이 검사에 실패합니다.

실제 활용 사례

다중 공급업체 NF-e 통합으로 SPED Fiscal 대비

상파울루에 있는 중견 제조업체는 매월 원자재 공급업체로부터 30~50개의 NF-e XML을 받습니다. 철강은 Gerdau, 전장 부품은 WEG, 포장재는 지역 업체에서 공급받습니다. 각 NF-e는 발행지 주에 따라 7%~18%의 서로 다른 ICMS 세율과 다양한 필드 완성도를 가집니다. 수동 입력에는 경리 담당자가 월 2일을 전부 소비했습니다.

AI 추출을 사용하면 모든 XML 파일을 일괄 업로드하여 공급업체 CNPJ, NF-e 번호, 발행일, NCM 코드, 제품 설명, 수량, 단가, ICMS 과세표준, ICMS 금액, NF-e 합계 등의 열이 포함된 통합 스프레드시트를 생성합니다. 이 데이터는 회사의 TOTVS ERP로 바로 가져올 수 있습니다. 이틀 분량의 작업이 3분으로 줄어들고, ICMS 금액은 XML 합계 블록과 교차 검증되어 SPED에 도달하기 전에 오류를 잡아냅니다.

수입 관세 산출을 위한 NCM 추출

수입 물류를 담당하는 물류 회사는 수입 관세를 계산하기 위해 공급업체 NF-e에서 NCM 코드와 제품 가치가 필요합니다. 각 NF-e에는 5~20개의 품목이 서로 다른 분류로 포함되어 있습니다. AI는 각 품목을 초 단위로 한 행씩 추출하여 관세사의 신고 템플릿 형식으로 제공합니다.

자주 묻는 질문

AI가 동일한 NF-e에서 ICMS, IPI, PIS, COFINS를 구분할 수 있나요?

네, 가능합니다. 각 세금은 고유한 XML 블록과 하위 요소를 가지고 있습니다. ICMS는 <orig><CST>, IPI는 <clEnq>를 사용합니다. XML 구조가 이를 명확히 구분하기 때문에 AI는 각 세금을 별도의 출력 열에 깔끔하게 매핑합니다. 이는 세금이 구분되지 않은 숫자 행으로 나타나는 이미지 기반 추출보다 AI에게 훨씬 쉽습니다.

AI는 ICMS 세율이 다른 브라질 각 주의 NF-e에서도 작동하나요?

네, 가능합니다. ICMS 세율(알리쿼타)은 각 NF-e의 <ICMS> 블록 내에 명시되어 있습니다. NF-e가 상파울루의 18%를 따르든 리우데자네이루의 19%를 따르든, AI는 XML에서 직접 세율을 읽어옵니다. 주 간 ICMS-ST(대체 납세) 시나리오도 XML이 ICMS-ST 금액을 명시적으로 태그하기 때문에 정확히 포착됩니다.

AI가 포르투갈어 NF-e XML에서 영문 컬럼 스프레드시트로 데이터를 추출할 수 있나요?

가능합니다. "Supplier CNPJ", "Invoice Total" 등 영문 출력 컬럼을 정의하면 AI가 포르투갈어 XML 필드를 영문 헤더에 매핑합니다. XML 태그는 언어에 구애받지 않으며, 의미 기반 매핑이 여러 언어에서 작동합니다. 자세한 내용은 AI의 다국어 데이터 추출 방식을 참조하세요.

NFS-e(시 서비스 청구서)는 어떤가요?

NFS-e(Nota Fiscal de Serviços Eletrônica)는 각 지방자치단체(시청)별로 별도의 스키마를 가진 별개의 시 차원 문서입니다. NF-e의 연방 표준화와 달리 NFS-e 형식은 지자체마다 다릅니다. AI가 NFS-e XML에서도 추출할 수 있지만, 시별 스키마 차이로 인해 더 많은 검증이 필요합니다. NF-e(연방, 상품용)가 신뢰할 수 있는 반면, NFS-e(시, 서비스용)는 변수가 더 많습니다.

NF-e XML의 AI 추출이 브라질 세무 기록 보관 규정을 준수하나요?

추출은 데이터 변환 단계일 뿐, 원본 XML을 변경하지 않으므로 원본 XML이 법적 세무 기록으로 유지됩니다. 브라질 세무 당국은 전자서명된 NF-e XML을 5년간(소멸시효, CTN 제173조) 보관하도록 요구합니다. AI 추출은 파생 스프레드시트를 생성할 뿐, 원본 전자서명 XML은 그대로 유지됩니다.

NF-e XML과 DANFE PDF 추출 간 정확도 차이는?

완전히 다른 범주입니다. NF-e XML 추출은 핵심 필드에서 99% 이상의 정확도를 달성합니다. 데이터가 명확한 XML 태그에 있기 때문입니다. 반면 DANFE PDF 추출(인쇄된 표현을 읽는 것)은 90-95%로 떨어집니다. 이는 이미지 인식 문제(글꼴 변형, 인쇄 품질, 열 정렬)로 인해 스캔 문서와 동일한 오류가 발생하기 때문입니다. 둘 다 사용 가능하다면 항상 DANFE보다 XML을 우선하세요.

결론

NF-e XML 추출은 AI의 능력 문제가 아니라 워크플로우 결정입니다. 구조화된 형식 덕분에 이미지 기반 문서보다 훨씬 정확하게 추출할 수 있지만, 그 구조가 오해를 불러일으킬 수 있습니다. "그냥 XML일 뿐"이라는 생각 때문에 통합 문제가 실제보다 단순해 보일 수 있습니다. 실제 작업인 30개 공급업체, 4가지 NF-e 버전, 여러 세금 구성에 걸친 불일치 필드 매핑은 반복적인 패턴 매칭이며, AI가 XSLT 스크립트나 Excel 매크로보다 훨씬 잘 자동화합니다.

질문은 AI가 NF-e XML을 추출할 수 있느냐가 아닙니다. 오후 내내 200개 파일에서 <ICMS><ICMSSN102><orig> 경로를 추적할지, 아니면 AI가 CNPJ, NCM 코드, ICMS 값을 1분 안에 스프레드시트로 매핑하게 할지의 문제입니다.

내 NF-e XML 파일로 시도해보기 →

📮 contact email: [email protected]