연간 80,000줄, 한 장의 스프레드시트SPED 레이아웃 파일을 일괄 처리하여 연도별 분석하는 방법

중견 브라질 기업은 연간 약 80,000~150,000줄의 디지털 회계 장부(ECD) 데이터를 제출합니다. 3년 비교 기간 동안 이는 파이프로 구분된 Registro 코드가 세 개의 개별 텍스트 파일에 담긴 25만 줄에 달합니다 — 각 파일은 Receita Federal의 기계 검증을 위해 구조화되어 있으며, 인간의 분석을 위한 것이 아닙니다. 모든 줄은 필요할 수 있는 레코드입니다: 시산표 항목, 분개 줄, 또는 e-Lalur 세무 조정입니다. 그러나 여러 연도에 걸쳐 필요한 특정 계정을 추출하려면 각 파일을 열고, Registro 코드로 필터링하고, 열을 수동으로 정렬하고, 결과를 새 스프레드시트에 이어 붙여야 합니다. 이 작업은 누군가가 연도별 질문을 할 때마다 반복됩니다.

수작업 입력은 그만 — AI가 대신 읽어드립니다
이미지나 PDF를 업로드하세요 — 10초 만에 정형 데이터로
지금 체험하기 →
연간 80,000줄, 한 장의 시트라는 제목과 재사용 가능한 열 정의 하나, C155 및 M300 레지스터 읽기, 연도별 나란히 비교라는 세 개의 아이콘이 있는 블로그 히어로 이미지.

이 글은 대안적 접근 방식에 관한 것입니다. 여러 연도의 SPED 파일을 단일 배치로 처리하고, 출력 열을 한 번만 정의한 다음, 필요한 데이터만 추출하여 하나의 분석 준비 완료 테이블로 만드는 방식입니다. 소스 데이터가 두 개의 ECD 파일, 하나의 ECF 파일, 또는 서로 다른 Leiaute 버전의 세 개의 과세 연도에 걸쳐 있어도 마찬가지입니다. 이 접근 방식은 모든 Registro 유형에 대한 파서를 요구하지 않습니다. 연도, 레이아웃 버전, 그리고 ECD↔ECF 경계를 넘어 작동합니다.

"파일을 한 번에 하나씩 여는" 방식이 교차 연도 분석에 적합하지 않은 이유

두 개의 열 비교: 왼쪽은 앰버색 카드로 X 배지와 함께 PVA가 한 번에 한 연도씩 검증하고 하루 종일 수작업이 필요함을 보여주고, 오른쪽은 초록색 카드로 체크 배지와 함께 교차 연도 배치와 연도별 나란히 비교를 보여줍니다.

공공 디지털 회계 장부 시스템(Sistema Público de Escrituração Digital, SPED)은 Receita Federal이 회계 기록을 수신하기 위한 단일 표준화된 파이프라인을 제공하도록 설계되었습니다. 그 목적은 달성했습니다. 그러나 한 연도의 데이터를 다른 연도의 데이터와 비교할 수 있는 내장 메커니즘은 제공하지 않습니다. 각 과세 연도는 자체 ECD 파일과 자체 디지털 세무 회계(Escrituração Contábil Fiscal, ECF) 파일을 생성합니다. 검증 및 서명 프로그램(PVAs)은 개별 파일을 검증하고 전송합니다. 두 파일을 나란히 열지 않습니다.

즉, 모든 교차 연도 분석은 동일한 수동 절차를 따릅니다. PVA에서 1년차 ECD를 내보내고, 2년차 ECD를 내보내고, 각각을 Excel에서 텍스트 가져오기 마법사(파이프 구분자)로 열고, 관련 Registro 코드로 필터링하고, 열 이름을 다시 지정하고(필터링한 Registro에 따라 위치가 바뀜), 비교 테이블을 처음부터 만들고, ECF의 세무 조정 데이터에 대해 반복합니다. 이 작업은 기술적으로 어렵지 않지만, 기계적으로 반복적이고 오류가 발생하기 쉬우며 매번 몇 시간이 걸립니다.

두 과세 제도(첫 해에는 Lucro Real, 두 번째 해에는 합병)에 걸쳐 3년치 ECD 데이터를 처리하는 contabilidade 팀은 단일 분석 질문을 위한 입력 데이터를 준비하는 데만 하루 종일을 쉽게 보낼 수 있습니다.

연도 간 SPED 분석에 실제로 필요한 것

재무 관리자나 세무 관리자가 다년간 비교를 요청할 때, 일반적으로 다음 중 하나의 관점을 원합니다:

"지난 3년간 모든 계정의 기초 잔액, 기말 잔액, 순변동을 나란히 보여주세요."

이를 위해서는 각 연도 ECD에서 C155 Registro(시산표)를 추출하고, C050 계정과목표의 계정 코드를 정렬한 다음, 각 행이 참조 계정과목표(Plano de Contas Referencial) 코드이고 각 연도의 잔액이 인접한 열에 표시되는 가로 비교 테이블을 구축해야 합니다.

"e-Lalur의 영구적 차이 중 연도별로 크게 변한 것은 무엇인가요?"

이는 각 연도 ECF에서 M300 Registro(e-Lalur Part A 조정)를 추출하고, 조정 유형(가산, 차감, 보전)별로 필터링한 다음, 연간 값을 나란히 비교하는 것을 의미합니다. 특정 조정 유형에서 30% 변동이 발생하면 사업 변화 또는 분류 오류가 있는지 조사할 가치가 있습니다.

"3년간 실효세율이 어떻게 변했고, 어떤 조정이 그 변동을 주도했나요?"

이를 위해서는 ECD 데이터(ECF의 Bloco E에서 회계 이익 기준)와 ECF 데이터(Bloco M의 e-Lalur 조정)를 여러 연도에 걸쳐 결합해야 합니다 — 서로 다른 두 파일 유형, 서로 다른 두 Registro 구조, 하나의 분석 질문입니다.

공통점: 모든 질문은 여러 파일, 여러 Registro 유형, 여러 연도에 걸쳐 있습니다. 병목 현상은 데이터가 존재하는지 여부가 아닙니다 — 데이터는 상세하게 존재합니다. 병목 현상은 SPED 생태계의 파일 중심 레이아웃에서 질문 중심 레이아웃으로 재구성하는 것입니다.

일괄 처리 전략: 파일 형식이 아닌 출력 열을 기준으로 생각하기

SPED 파일을 일괄 처리할 때 핵심 통찰은 Registro 구조가 — 난해하지만 — 내부적으로 일관적이라는 점입니다. 작년 시산표를 담당했던 동일한 C155 Registro 레이아웃이 올해도 사용됩니다. 작년 영구적 차이를 설명했던 동일한 M300 필드가 올해도 사용됩니다. 레이아웃 변경은 드물고 필드 수준에서 발생하며(ECD의 Leiaute 8에서 9로, ECF의 11에서 12로의 전환), Registro 유형과 그들이 나타내는 회계 개념 간의 근본적인 관계는 변경되지 않습니다.

이러한 일관성 덕분에 출력 구조를 한 번 정의하고 여러 연도에 걸쳐 적용할 수 있습니다. "2024 ECD를 열고, C155를 필터링하고, 필드를 매핑한 다음 2025년에도 반복해야 한다"고 생각하는 대신, "2024년과 2025년의 계정 잔액을 나란히 비교해야 한다"고 생각하고 — 추출 계층이 파일별 재구성을 처리하도록 맡기면 됩니다.

맞춤 열 추출은 정확히 이러한 시나리오를 위해 설계되었습니다. 원하는 열 이름("계정 코드", "계정 이름", "기초 잔액", "기말 잔액")을 지정하면 AI가 SPED 파일을 읽고 관련 Registro 레코드에서 해당 값을 찾아 추출합니다. 어느 연도의 파일을 가리키든 상관없습니다. 2023 ECD에서 깔끔한 시산표를 생성한 동일한 열 정의가 2024년과 2025년 ECD 파일에서도 동일한 구조를 생성합니다. Registro C155와 "시산표" 개념 간의 의미적 관계가 연도 간에 변경되지 않았기 때문입니다.

실질적인 효과: 3년치 ECD 데이터를 처리하려면 열을 한 번만 정의하면 되고, 세 번 정의할 필요가 없습니다. 작업이 "150,000줄을 세 번 필터링하고 정렬하는 것"에서 "하나의 열 정의로 세 개의 파일을 가리키는 것"으로 전환됩니다.

단계별 가이드: 여러 연도 ECD 데이터를 일괄 처리하여 연도 간 시산표 만들기

ECD 파일에서 연도 간 시산표까지의 4단계 수평 흐름도: ECD 파일 수집, PDF로 인쇄, 열 정의, 모든 연도 처리 및 Excel에서 병합.

다음은 2~3년치 ECD 파일을 연도별 계정 비교표로 전환하는 워크플로우입니다. 동일한 로직이 ECF 데이터 또는 ECD+ECF 혼합 분석에도 적용됩니다.

1
비교하려는 연도의 ECD 파일을 수집합니다.

ERP(Omie, Conta Azul, Senior, Domínio, SAP TDF 또는 SPED 생성에 사용하는 시스템) 또는 PVA 아카이브에서 검증된 .txt 파일을 내보냅니다. 초안이 아닌 최종 전송 버전이 필요합니다. 전송된 파일이 Receita Federal이 수신한 파일과 일치하기 때문입니다. 모든 연도의 파일을 단일 폴더에 저장합니다.

2
각 .txt 파일을 추출 도구가 읽을 수 있는 형식으로 변환합니다.

ImageToTable.ai는 PDF, JPG, PNG 및 WebP 입력을 지원합니다. .txt 파일의 경우 각 ECD를 텍스트 뷰어나 PVA의 파일 뷰어에서 열고 PDF로 인쇄합니다. SPED 형식의 고정 폭 레이아웃(파이프 구분자, 정렬된 열)은 시각적으로 일관되므로 PDF가 AI가 읽는 구조를 보존합니다. 이 단계는 파일당 약 30초가 소요됩니다.

3
시산표 추출을 위한 출력 열을 정의합니다.

모든 연도 ECD의 시산표를 캡처하는 열 정의 하나를 설정합니다. 열: 연도, 계정 코드, 계정 이름, 기초 잔액, 차변 발생액, 대변 발생액, 기말 잔액. "연도" 열을 추가하면 여러 연도의 결과를 단일 테이블로 통합할 수 있습니다. 계정 코드는 연도 간 표준화를 위해 C050의 참조 계정과목표(Plano de Contas Referencial)에 매핑해야 합니다.

4
동일한 열 정의를 사용하여 각 연도 파일을 처리합니다.

1년차 PDF를 업로드하고 열 정의로 추출을 실행합니다. 2년차와 3년차에도 반복합니다. 열 정의는 의미론적이므로 — AI가 "계정 코드", "기말 잔액" 등을 바이트 오프셋이 아닌 의미로 찾도록 요청합니다 — PVA가 연도별로 레이아웃을 약간 다르게 내보냈더라도 파일 간에 동일하게 작동합니다. 각 실행은 헤더가 포함된 깔끔한 테이블을 생성합니다.

5
결과를 단일 연도 간 스프레드시트로 통합합니다.

각 연도 결과를 .xlsx로 내보내고 "연도" 열을 사용하여 각 행의 출처 기간을 식별하면서 하나의 파일로 쌓습니다. 비교 테이블을 만듭니다: 계정 코드로 필터링하고 각 연도의 기초 및 기말 잔액을 인접 열에 배치합니다. 전년 대비 변동(절대값 및 백분율)을 위한 계산 열을 추가하고 20% 또는 R$100,000과 같은 임계값을 초과한 계정을 표시하는 조건부 서식을 적용합니다.

전체 주기 — .txt 파일에서 구조화된 연도 간 테이블까지 — 열 정의가 저장되면 3년치 데이터 기준 약 30분이 소요됩니다. 텍스트 가져오기 마법사와 수동 정렬로 Excel에서 동일한 작업을 완전히 수행하는 경우, 수동 필터링 및 필드 매핑으로 인한 오류율이 높아 3~4시간으로 예상됩니다.

이 분석을 매년 반복한다면(ECF 준비 주기의 일부로 각 새 연도를 직전 연도와 비교), 열 정의를 템플릿으로 저장합니다. 다음 해에는 새 파일에 대해서만 4단계를 실행하고 결과를 기존 연도 간 스프레드시트에 추가합니다.

배치 확장: ECF 세무 조정 데이터 추가

동일한 배치 로직이 ECF 파일에도 적용됩니다. ECF의 Bloco M에는 IRPJ 및 CSLL 납부액을 결정하는 e-Lalur 조정이 포함되어 있으며, 이러한 조정을 연도별로 비교하면 세무 계획과 영구적 차이가 어떻게 변화하는지 파악할 수 있습니다.

ECF 데이터를 연도 간 분석에 추가하려면 ECF의 M300(e-Lalur Part A) 및 M350(e-Lacs Part A) Registro를 대상으로 하는 두 번째 열 정의를 생성합니다:

Year, Registro, Account Code, Adjustment Type (Addition/Exclusion/Compensation), Adjustment Amount, Reference Process Number

이 정의를 사용하여 각 연도의 ECF PDF를 처리하고, 내보낸 후 ECD 시산표 데이터와 함께 통합 스프레드시트에 병합합니다. 이제 ECD↔ECF 경계를 넘나드는 질문에 답할 수 있는 단일 파일이 생깁니다. 예: "영업권 상각에 대한 영구적 차이가 2024년과 2025년 사이에 변경되었으며, 해당 회계 충당금이 각 연도의 ECD에 올바르게 기록되었는가?"

핵심 통찰: ECF의 Bloco E(E010, E015)에는 ECD 회계 잔액을 ECF 세무 조정에 연결하는 매핑된 계정이 포함되어 있습니다. 이를 배치에 포함하면 ECF 조정을 원래 ECD 계정으로 추적하는 데 필요한 상호 참조 테이블을 얻을 수 있습니다. 이는 PVA가 수행하지 않는 검증입니다.

레이아웃이 변경될 때 발생하는 상황

ECD 및 ECF 레이아웃은 변경되지만 열 정의는 변경되지 않는다는 내용의 제목 카드. ECD Leiaute 8에서 9, ECF Leiaute 11에서 12, 정의 변경 0건 아이콘 포함.

브라질 SPED 레이아웃은 진화합니다. ECD는 2020년에 Leiaute 9로 전환되었습니다(이후 안정적이며, ADE Cofis 규정을 통한 필드 수준 업데이트 적용). ECF는 2026년에 2025년 귀속분 신고를 위해 Leiaute 12를 채택했습니다. 레이아웃이 변경되면 스크립트 기반 파서는 코드 업데이트가 필요합니다. 의미 기반 추출 접근 방식은 다르게 처리합니다. AI가 절대 바이트 위치가 아닌 의미로 읽기 때문입니다("이 고정 너비 블록은 시산표 항목을 설명합니다"). 따라서 Registro 코드와 레코드의 개념적 구조가 유지되는 한 동일한 열 정의가 여러 레이아웃 버전에서 자주 작동합니다. 실제로 ECD의 Leiaute 8에서 9로, ECF의 11에서 12로의 전환은 핵심 Registro 구조(C155, M300)가 안정적으로 유지되었기 때문에 시산표 또는 e-Lalur 추출을 위한 열 정의 변경이 필요하지 않았습니다.

자주 묻는 질문

Q: ECD와 ECF를 하나의 배치로 처리할 수 있나요?

각 파일은 Registro 구조가 다르기 때문에 별도의 추출 과정이 필요합니다. 그러나 한 번 생성된 열 정의는 템플릿으로 저장하여 매년 재사용할 수 있습니다. ECD 처리는 한 번, ECF 처리는 두 번째로 진행되며, 두 파일을 내보낸 후 Excel에서 통합 작업을 수행합니다.

Q: ECD에 부문별 장부(Bloco K)가 있는 회사는 어떻게 처리하나요?

ECD에 Bloco K 기록이 포함된 경우, 정의에 "원가 중심" 또는 "부서" 열을 추가할 수 있습니다. AI가 ECD의 C100 및 K 관련 Registros에서 K 수준의 원가 중심 태그를 읽어 출력 테이블에 포함시킵니다. 이는 사업 단위별로 연도 간 수익성 분석을 수행할 때 특히 유용합니다.

Q: 합병이나 구조조정으로 인해 연도 간 계정 코드가 변경된 경우는 어떻게 하나요?

이는 데이터 추출 문제가 아니라 데이터 매칭 문제입니다. 각 연도 ECD에서 시산표 데이터와 함께 C050 계정과목표를 추출하세요. 회사 내부 계정 번호(변경될 수 있음) 대신 Receita Federal에서 표준화한 참조 계정과목표(Plano de Contas Referencial)의 참조 계정 코드를 연도 간 매칭 키로 사용하십시오.

Q: 배치 처리 시 파일 크기 제한이 있나요?

ImageToTable.ai는 ECD 파일을 PDF 또는 페이지 이미지 세트로 처리합니다. 일반적인 ECD 파일(80,000~150,000줄)의 경우 PDF 버전은 약 200~400페이지입니다. 도구는 페이지별로 처리합니다. 매우 큰 파일의 경우 페이지 범위 PDF 분할을 사용하여 Bloco별로 섹션을 나누어 처리할 수 있습니다(예: Bloco C는 한 번에, Bloco I는 다른 번에).

Q: 이 접근 방식이 Lucro Presumido 기업에도 적용되나요?

네, 그렇습니다. Lucro Presumido 기업도 동일한 Registro 구조로 ECD를 제출하며, 연도 간 계정 비교에 대한 동일한 요구사항이 있습니다. ECF 범위는 더 좁지만(영구적 차이가 있는 e-Lalur 없음), ECD 추출 및 연도 간 시산표 분석은 동일하게 작동합니다.

규제 준수의 부담에서 분석 자산으로

모든 SPED 제출은 어떤 의미에서 분석 잠재력의 낭비입니다. 회계 시스템이 1년 내내 생성한 데이터(모든 분개, 모든 계정 잔액, 모든 세무 조정)는 한 명의 독자(Receita Federal의 검증 시스템)에 최적화된 형식으로 재구성되며, 상당한 수동 작업 없이는 다른 목적으로 사실상 사용할 수 없습니다. 아이러니한 점은 이것이 회사의 회계연도 중 가장 완전한 재무 기록이며, ERP가 내보내는 어떤 관리 보고서보다 상세하다는 것입니다.

일괄 처리는 방정식을 바꿉니다. 단 한 번의 오후에 여러 연도의 시산표, 세무 조정, 원가 센터 데이터를 추출할 수 있게 되면, SPED 파일은 제출하고 잊어버리는 규제 준수 산출물에서 적극적으로 사용하는 분석 데이터셋으로 전환됩니다. 전년 대비 변동 분석, 실효세율 추세 추적, 부문별 수익성 추세선. 이 모든 것은 별도의 데이터 준비 주기가 필요한 별도의 프로젝트가 아니라, 동일한 추출 워크플로우의 결과물이 됩니다.

올해 작성하는 열 정의는 재사용 가능한 자산입니다. 내년에 새로운 ECD 파일이 책상 위에 도착하면, 동일한 정의로 실행하기만 하면 됩니다. 비교 결과는 몇 시간이 아닌 몇 분 안에 준비됩니다.

📮 contact email: [email protected]