Cómo extraer datos de exportación de Handelsrechnung alemanas
para aduanas y contabilidad
Una factura comercial de exportación alemana contiene aproximadamente una docena de campos que una factura nacional (Rechnung) no incluye: el número EORI del exportador, el número de arancel aduanero de 11 dígitos (Zolltarifnummer) por línea de artículo, el país de origen (Ursprungsland) por posición, los Incoterms aplicables, el peso neto y el peso bruto, y la sección de confirmación de exportación (Ausfuhrbestätigung). Cada uno de estos campos fue escrito en la plantilla de factura por el departamento de exportación. Y cada uno de ellos debe volver a escribirse en al menos otros dos sistemas: la declaración de exportación ATLAS para aduanas y el ERP interno para contabilidad. El enfoque de extracción descrito a continuación reemplaza ambos pasos de reescritura con una única salida estructurada: una fila por Handelsrechnung, columnas definidas una vez, cada campo capturado del PDF.

Conclusiones clave
- Una Handelsrechnung alemana contiene aproximadamente una docena de campos exclusivos de aduanas — número EORI, código SA de 11 dígitos por línea de artículo, país de origen, Incoterms, peso neto y bruto — que una Rechnung nacional nunca requiere, y cada uno debe volver a escribirse desde el PDF en ATLAS y el ERP.
- Un exportador con 30 envíos mensuales transcribe alrededor de 240 campos aduaneros de PDFs a hojas de cálculo cada mes — cada pulsación de tecla es una posible discrepancia entre lo que ve aduanas y lo que registra contabilidad, una divergencia que el Finanzamt coteja durante las auditorías.
- Defina sus columnas de extracción una vez, suba los PDFs en lugar de volver a escribirlos, y ambos flujos — la declaración de exportación ATLAS y el asiento contable del ERP — se alimentan de una sola hoja de cálculo estructurada, eliminando la brecha de transcripción en su origen.
Qué hace que una Handelsrechnung sea diferente de una Rechnung nacional
Toda empresa alemana emite facturas. Una Rechnung (factura de venta) nacional debe incluir, según el §14 UStG, el nombre y la dirección del proveedor, la fecha y el número de factura, el nombre y la dirección del cliente, la cantidad y la descripción de los bienes o servicios, el importe neto, el tipo y el importe del IVA, y el total bruto. Esos son los campos que alimentan el sistema de cuentas por cobrar, la declaración de IVA (Umsatzsteuervoranmeldung) y los estados financieros de fin de año. Son los campos que todo software de contabilidad alemán — DATEV, Lexware, SAP — está diseñado para procesar.
Una Handelsrechnung contiene todos esos campos. Pero también incluye un conjunto adicional de campos que existen por una única razón: las mercancías cruzan una frontera aduanera. Estos son los campos que las autoridades aduaneras del país de destino requieren para evaluar los aranceles, verificar el origen y validar el valor declarado. Según el Código Aduanero de la Unión (UCC, Reglamento (UE) n.º 952/2013), toda factura comercial que acompañe a mercancías exportadas de la UE a un país no comunitario debe incluir:
| Campo (término alemán) | Descripción en inglés | Por qué lo necesita la aduana |
|---|---|---|
| EORI-Nummer | Número de identificación y registro de operadores económicos — formato: DE + 15 dígitos | Identifica al exportador en el sistema aduanero de la UE. Obligatorio según el art. 9 del Código Aduanero de la Unión (UCC) para todas las declaraciones de aduana. Sin él, ATLAS rechaza la declaración de exportación. |
| Zolltarifnummer (código SA) | Código arancelario alemán de 11 dígitos por línea de artículo — los primeros 6 dígitos = SA internacional, dígitos 7-8 = Nomenclatura Combinada de la UE, dígitos 9-10 = TARIC, dígito 11 = código nacional alemán | Determina la clasificación de control de exportación, las posibles restricciones de exportación y — para el importador — el tipo de arancel de importación en destino. Por línea de artículo, no por factura. |
| Ursprungsland | País de origen por línea de artículo — el país donde las mercancías se obtuvieron íntegramente o se sometieron a la última transformación sustancial (art. 60 del UCC) | Determina la elegibilidad para aranceles preferenciales en destino. Debe indicarse por línea de artículo porque un envío puede contener mercancías de varios orígenes. |
| Lieferbedingungen (Incoterms) | Cláusula Incoterms 2020 — p. ej. EXW Stuttgart, FOB Hamburgo, CIF Nueva York, DDP Tokio | Define quién asume el costo del transporte, el seguro y el riesgo aduanero en cada tramo. Determina qué incluye el valor en aduana declarado (flete + seguro, o no). |
| Nettogewicht / Bruttogewicht | Peso neto (solo mercancías) y peso bruto (mercancías + embalaje) por línea de artículo o por envío, en kilogramos | Requerido para documentos de transporte (CMR, AWB, B/L) y valoración aduanera. El peso bruto determina los gastos de flete y los requisitos de manipulación. |
| Ausfuhrbestätigung | Sección de confirmación de exportación — normalmente un área reservada para sellos aduaneros o la nota de salida electrónica de ATLAS (Ausgangsvermerk) | Prueba de que las mercancías salieron físicamente del territorio aduanero de la UE. Requerida para la exención del IVA según el §4 Nr. 1a UStG. Sin ella, el exportador no puede justificar la exención fiscal en la UVA. |
Cada uno de estos campos se introduce en la plantilla de la Handelsrechnung por el departamento de exportación. Los mismos campos deben aparecer luego en la declaración de exportación de ATLAS — y el departamento de exportación o un agente de aduanas los vuelve a teclear allí. Y después el departamento de contabilidad necesita un subconjunto (número de factura, total, EORI para el libro de exportación) tecleado una tercera vez en el ERP interno. La Handelsrechnung se crea una vez. Sus datos se introducen tres veces.

El problema del doble flujo: una factura, dos sistemas, cero conexión

Un exportador alemán que envía 30 consignaciones al mes crea 30 Handelsrechnungen. Cada una pasa por dos flujos de datos completamente separados, y ninguno de los dos se comunica con el otro.
Flujo 1: Aduanas (ATLAS AES). El departamento de exportación o un Zollspediteur toma los datos de la Handelsrechnung y los introduce en la declaración de exportación ATLAS AES (Ausfuhranmeldung). Esta declaración requiere el número EORI, los códigos HS por línea de artículo, el país de origen por línea de artículo, los Incoterms, el valor en aduana y el peso neto/bruto. La declaración se presenta mediante software compatible con ATLAS (AEB Export Filing, DAKOSY GE, MIC-CUST, SAP GTS) o a través del sistema propio del agente de aduanas. ATLAS la procesa, realiza un análisis de riesgo y, si se acepta, emite el Documento de Acompañamiento de Exportación (EAD, Ausfuhrbegleitdokument) con un Número de Referencia de Movimiento (MRN) de 18 caracteres. Cuando las mercancías salen de la UE, el exportador recibe la confirmación de salida (Ausgangsvermerk), la prueba de que las mercancías salieron físicamente, que respalda la exención del IVA.
Flujo 2: Contabilidad (ERP). El departamento de contabilidad recibe la misma Handelsrechnung, normalmente como PDF del departamento de exportación o del sistema de gestión documental. El contable debe registrar la venta de exportación: el número de factura, la fecha de factura, el nombre del cliente, el valor total, los Incoterms para la asignación de costes (el flete y el seguro se contabilizan en cuentas distintas del valor de las mercancías) y el número EORI para el libro de exportación (Ausfuhrbuch). Para la declaración de IVA (Umsatzsteuervoranmeldung o UVA), el contable debe cotejar cada Handelsrechnung con su Ausgangsvermerk para respaldar los ingresos de exportación exentos de impuestos conforme al §4 Nr. 1a UStG. Para la declaración Intrastat (estadísticas comerciales intracomunitarias, obligatorias según la Außenhandelsstatistikgesetz), el contable necesita los códigos HS, el país de destino y el valor estadístico por código de mercancía.
La brecha. El flujo 1 recibe sus datos del departamento de exportación, que los introduce directamente en el software ATLAS o los envía por correo a un agente. El flujo 2 recibe sus datos del PDF de la Handelsrechnung, que llega a la bandeja de entrada de contabilidad como un documento plano: todos los campos visibles, ninguno estructurado. El contable abre el PDF y vuelve a teclear el número de factura, la fecha, el total, el EORI, los Incoterms y los códigos HS en el ERP. Para 30 Handelsrechnungen al mes, con aproximadamente 8 campos relevantes para aduanas cada una, eso supone 240 campos transcritos manualmente de PDF a hoja de cálculo, al mes. Cada pulsación de tecla es un posible error de transcripción. Cada error se propaga: un código HS mal tecleado en el libro de contabilidad podría no coincidir con el código HS presentado en ATLAS, creando una discrepancia que sale a la luz durante una auditoría aduanera (Zollprüfung) o una auditoría de IVA (Umsatzsteuer-Sonderprüfung).
Esta es la misma brecha estructural descrita en el análisis de por qué ATLAS crea la brecha de reingreso de datos que fue diseñado para cerrar — el sistema que digitalizó las declaraciones de aduanas devuelve los datos al importador como PDF, y el paso de transcripción manual llena la brecha entre la salida de ATLAS y la entrada del ERP. La Handelsrechnung es el punto de partida de ese mismo flujo en el lado de exportación: los datos se crean como entrada estructurada, se entregan internamente como PDF y se vuelven a teclear en cada sistema que los necesita.
Cómo Configurar la Extracción: Defina Sus Columnas una Vez, Procese Cada Handelsrechnung
La solución no es cambiar cómo el departamento de exportación crea las Handelsrechnungen. Ellos ya teclean los datos una vez. La solución es capturar esos datos del PDF en el punto donde entran en cada flujo posterior — eliminando el paso de reescritura que se encuentra entre el PDF y el sistema.
La Extracción de Columnas Personalizadas funciona definiendo un conjunto de nombres de columnas que describen lo que desea extraer de cada documento. La IA lee cada PDF, comprende el contenido semánticamente y localiza el valor correspondiente para cada columna — sin importar dónde se encuentre el valor en la página ni cómo varíe el diseño entre facturas. Usted define las columnas una vez. Cada Handelsrechnung que suba después completa la misma estructura de hoja de cálculo.
Paso 1: Defina las Columnas Aduaneras Principales
Estos son los campos que requiere el Pipeline 1 — la declaración de exportación ATLAS. Defina cada columna usando la terminología alemana exacta que usa su equipo de exportación, para que la IA coincida correctamente con el contexto semántico:
| Nombre de la Columna | Lo que Extrae la IA |
|---|---|
Handelsrechnung Nummer (Commercial Invoice Number) | El número de factura — normalmente con prefijo "HR-" o "EX-" en las facturas de exportación alemanas, distinto de la numeración de Rechnung nacional |
Handelsrechnung Datum (Invoice Date, DD.MM.YYYY) | La fecha de emisión de la factura en formato de fecha alemán |
EORI-Nummer (DE + 15 digits) | El número EORI del exportador — debe coincidir con la entidad que presenta la declaración ATLAS |
Kunde (Customer Name and Address) | El nombre completo y la dirección del comprador extranjero, incluido el país |
Zolltarifnummer (11-digit Customs Tariff Code) per Position | El código arancelario alemán completo de 11 dígitos para cada línea de artículo de la factura |
Ursprungsland (Country of Origin, ISO Code) per Position | El país de origen por línea de artículo — p. ej. DE para mercancías de origen alemán, CN para mercancías de origen chino |
Lieferbedingungen (Incoterms 2020) | La cláusula Incoterms — p. ej. FOB Hamburgo, CIF Nueva York, EXW Stuttgart, DDP Tokio |
Nettogewicht pro Position (Net Weight per Line Item, in kg) | Peso neto por línea de mercancía |
Bruttogewicht Gesamt (Total Gross Weight, in kg) | Peso bruto total del envío, incluido todo el embalaje |
Paso 2: Agregar Columnas Inferidas para Verificación Cruzada
Las columnas inferidas permiten que la IA derive información de lo que ya ha leído, produciendo valores que la Handelsrechnung puede indicar implícitamente, pero que la declaración de aduanas requiere explícitamente. Agregue estas columnas debajo de sus columnas de extracción directa:
| Nombre de Columna Inferida | Qué Deriva la IA |
|---|---|
Capítulo SA (derivar de Zolltarifnummer: generar número de capítulo de 2 dígitos con descripción, p. ej. "84 — Maquinaria y Aparatos Mecánicos") | Convierte el código de 11 dígitos en el capítulo SA legible — útil para la agrupación de mercancías Intrastat y para detectar clasificaciones erróneas donde el capítulo del código no coincide con la descripción del producto |
Bestimmungsland (País de Destino, de la Dirección del Cliente) | Extrae el país de destino de la dirección del cliente — el país al que se envían físicamente las mercancías, que puede diferir de la dirección de facturación |
Paso 3: Agregar una Columna Calculada para la Validación del Valor en Aduana
Un error común en las declaraciones de exportación alemanas es la discrepancia del valor en aduana — el valor declarado en la Handelsrechnung (que puede indicarse como EXW, FOB o CIF según los Incoterms utilizados) difiere del valor que requiere la declaración ATLAS. La declaración de exportación ATLAS necesita el valor estadístico en la frontera alemana — típicamente el valor FOB o EXW más el transporte interior hasta el puerto o aeropuerto de salida alemán.
Agregue una Columna Calculada para señalar cualquier diferencia entre el total de la factura y la suma de las partidas, que es un precursor del cálculo del valor en aduana:
| Nombre de Columna Calculada | Qué Calcula la IA |
|---|---|
Verificación de Total de Factura vs Suma de Partidas (Rechnungssumme menos Summe aller Positionen — generar "OK" si coincide dentro de €1, "CHECK" si la diferencia supera €1) | Suma todos los montos de las partidas y los compara con el total de la factura — detecta errores aritméticos antes de que los datos lleguen a la declaración ATLAS o al asiento contable |
Positionen Anzahl (Número de Partidas, contar el total de líneas de mercancías en esta factura) | Cuenta el número de partidas — útil para verificar que la extracción capturó todas las filas y para el informe Intrastat, donde cada código de mercancía es una entrada estadística separada |
Los archivos se procesan de forma segura y no se almacenan.
Paso 4: Sube cada Handelsrechnung de cada envío de exportación
Sube los PDF de Handelsrechnung — del mes actual, del trimestre actual o de un año fiscal completo. La IA procesa cada factura de forma independiente dentro del lote. Una factura con un diseño diferente (plantilla distinta, posiciones de columnas distintas, colocación de Incoterms distinta) se maneja igual que la plantilla estándar — porque la IA localiza los campos por su significado semántico, no por su posición en la página.
Para exportadores alemanes que también mantienen Rechnungen nacionales junto a Handelsrechnungen, el enfoque de extracción maneja ambos tipos de documentos en el mismo lote — define las columnas relevantes para aduanas (EORI, códigos HS, origen, Incoterms, pesos) como tus columnas, y para Rechnungen nacionales (que carecen de estos campos), esas celdas simplemente quedarán vacías. Los campos comunes — número de factura, fecha, cliente, total — se completan en ambos tipos de documentos, dándote una hoja de cálculo de exportación consolidada independientemente de si la factura es una Rechnung nacional o una Handelsrechnung de exportación.
Qué obtiene: una fila por Handelsrechnung, cada campo en su lugar

El resultado es una hoja de cálculo (Excel, CSV o directamente en Google Sheets mediante el Complemento de Google Sheets) con una fila por Handelsrechnung. Las columnas son las que usted definió. Los valores de cada celda son los que la IA extrajo del PDF.
Esta hoja de cálculo alimenta ambos flujos de trabajo simultáneamente:
El número EORI, los códigos SA, los países de origen, los Incoterms y los pesos que requiere la declaración ATLAS ya están en la hoja de cálculo. El departamento de exportación o el agente de aduanas los introduce directamente en el software ATLAS desde la hoja de cálculo, sin necesidad de abrir cada PDF y reescribirlos. Si su software ATLAS (AEB, DAKOSY, MIC-CUST) admite importación CSV o Excel para declaraciones masivas, los datos alimentan la declaración directamente. Si utiliza un agente de aduanas, le envía la hoja de cálculo en lugar de los PDF; el agente introduce los datos más rápido y con menos errores de transcripción porque copia de una tabla, no lee de un PDF.
El número de factura, la fecha, el cliente, el total, el EORI y los Incoterms alimentan el libro de exportación (Ausfuhrbuch) y la declaración de IVA (UVA). Los capítulos SA y los países de destino alimentan la declaración Intrastat. En lugar de que el contador abra 30 PDF y reescriba 240 campos, abre una hoja de cálculo, verifica los valores contra los PDF e importa los datos en DATEV, Lexware o SAP. La verificación detecta errores. La transcripción los crea.
La hoja de cálculo se convierte en la fuente única de verdad para los datos de la Handelsrechnung. Filtre por número EORI para confirmar que cada declaración de exportación utiliza el identificador de exportador correcto. Filtre por capítulo SA para agrupar el volumen de exportación por mercancía para el informe Intrastat trimestral. Compare la columna calculada "Verificación de total de factura vs. suma de líneas" para detectar discrepancias aritméticas antes de que lleguen a la declaración ATLAS. El mismo conjunto de datos que alimenta la declaración de exportación alimenta el asiento contable: datos de origen coherentes en ambos flujos, lo que elimina el hallazgo de auditoría habitual en el que el valor declarado en aduanas difiere del valor contabilizado.
FAQ — Extracción de datos de Handelsrechnung alemanas
¿Puede manejar Handelsrechnungen con múltiples partidas, cada una con diferentes códigos HS y países de origen?
Sí. Cada partida se extrae con su propio código HS y país de origen. La salida conserva la estructura de una fila por factura — si necesita una fila por partida, defina sus columnas con el prefijo "per Position" y la IA tratará cada línea de mercancía como una unidad de extracción independiente. Para la mayoría de los flujos de exportación, sin embargo, una fila por factura con los códigos HS y orígenes agregados o representados por la mercancía principal es suficiente, porque la declaración ATLAS ya contiene el detalle de las partidas y el asiento contable solo necesita el resumen a nivel de factura.
¿Cómo maneja la extracción los diferentes Incoterms — específicamente la diferencia entre los valores EXW, FOB y CIF en la misma factura?
La IA extrae los Incoterms tal como figuran en la factura — FOB Hamburgo, CIF Nueva York, EXW Stuttgart. No calcula los suplementos de transporte o seguro. Para el cálculo del valor en aduana (el valor que se introduce en la declaración ATLAS), debe ajustar el valor de la factura según los Incoterms: valor EXW + transporte interior hasta la frontera de la UE = valor estadístico; el valor FOB suele ser suficiente tal cual para la declaración de exportación ATLAS; el valor CIF incluye flete y seguro que deben separarse para la declaración de exportación. La columna calculada "Comprobación de total de factura vs. suma de partidas" valida la aritmética de la factura, pero el ajuste de Incoterms a valor en aduana sigue siendo un paso de cálculo manual — o puede automatizarse con una columna calculada si sus costos de flete y seguro se conocen por envío.
¿Esto reemplaza la presentación de la declaración de exportación ATLAS AES?
No. La extracción produce los datos de entrada para la declaración ATLAS. La presentación de la declaración sigue requiriendo software compatible con ATLAS (AEB, DAKOSY, MIC-CUST, SAP GTS o el sistema del agente de aduanas) y un registro de participante ATLAS activo ante la administración aduanera alemana (Generalzolldirektion). La extracción reemplaza el paso de entrada manual de datos — leer el PDF de la Handelsrechnung y escribir los campos en el software ATLAS — no el software en sí. Para el flujo completo desde la declaración aduanera hasta un conjunto de datos estructurado, la guía para extraer datos de declaraciones aduaneras alemanas a Excel cubre el equivalente del lado de importación.
¿Cómo encaja la Ausfuhrbestätigung / Ausgangsvermerk en este flujo de trabajo?
La Ausfuhrbestätigung (confirmación de exportación) es la prueba de que las mercancías salieron físicamente del territorio aduanero de la UE. La emite la oficina aduanera de salida a través de ATLAS después de que las mercancías se presenten y se despachen. No es un campo de la propia Handelsrechnung — es un mensaje electrónico o sello separado que llega después de que se procese la declaración de exportación. En el flujo de extracción, los datos de la Handelsrechnung se extraen primero (produciendo la entrada para la declaración ATLAS). Después de presentar la declaración y de que las mercancías salgan, se recibe el Ausgangsvermerk. En ese momento, puede añadir una columna a su hoja de cálculo — Ausgangsvermerk erhalten (J/N) — y marcar manualmente cada fila cuando llegue la confirmación, dando a su equipo de contabilidad una vista única de qué exportaciones están respaldadas para la exención de IVA y cuáles están pendientes.
¿Puede la misma configuración de columnas extraer datos de Rechnungen nacionales alemanas?
Sí: los campos comunes (número de factura, fecha, cliente, importes) se completan desde cualquier formato de factura. Las columnas específicas de aduanas (EORI, códigos SA, origen, Incoterms, pesos) quedarán vacías para las Rechnungen nacionales. Esto significa que puede cargar un lote mixto — 20 Handelsrechnungen y 40 Rechnungen nacionales — y obtener una única hoja de cálculo unificada. Ordene por la columna EORI para separar las facturas de exportación de las nacionales. El mismo principio se aplica a la extracción de datos de formularios fiscales ELSTER: defina las columnas una vez y complételas desde los documentos fuente — la guía para extraer datos de formularios fiscales alemanes ELSTER a Excel aplica el mismo enfoque de definición de columnas a un tipo de documento diferente.
La Handelsrechnung ya contiene todos los campos que su declaración aduanera y su sistema contable necesitan. El cuello de botella no son los datos faltantes — es un PDF donde debería haber hojas de cálculo.
Extraer una Handelsrechnung