Java 17 · Apache-2.0 · release 0.2.0

DATEV Buchungsstapel files, generated from Java.

datev-exporter turns already-mapped booking data into deterministic DATEV Buchungsstapel / EXTF import candidates—fixed v13 and v12 schemas, typed metadata, technical validation and forward-only streaming, with no third-party runtime dependency on the common path.

v13 · 125 columns v12 · 124 columns Windows-1252 · CRLF 99,999 rows per file

Where to go next

Pick a language, then a starting point.

Both documentation sets cover the same release and the same evidence. The German set uses the DATEV terminology as it appears in the output.

Install and export

Getting started

Gradle and Maven setup, a complete v13 file, buffered streaming for large exports and the deliberate v12 path.

English · Deutsch

Claims and evidence

Compatibility and limitations

The graded v12/v13 evidence matrix, what the pinned official checker schema does and does not prove, and where responsibility stays with you.

English · Deutsch

Modules and API

Reference

Which of the five modules owns your contract, the validation layers, and the versioned Javadoc for release 0.2.0.

English · Deutsch

Deep dives

The parts that generate the most questions.

Generated from the library itself, so the tables match what the exporters actually write.

Field reference

All 125 Buchungsstapel columns in output order, with official German headings, checker types, lengths and version-12 availability.

English · Deutsch

Validation errors

The six stable error codes, what raises each one, the paired fields and the three validation depths.

English · Deutsch

EXTF header

The 31-field management record: fixed identifiers, date and timestamp formats, quoting rules and the coded fields.

English · Deutsch

Encoding and umlauts

Windows-1252, CRLF, semicolons and quoting — which characters survive and how exports get corrupted afterwards.

English · Deutsch

Scope in one screen

What the library does, and what it deliberately does not.

It does

  • Emit the EXTF management record, the exact versioned heading and formatted booking rows.
  • Keep one ordered definition for all 125 v13 fields and the 124-field legacy v12 shape.
  • Encode Windows-1252 bytes with CRLF record separators.
  • Run deterministic structural checks, with optional semantic field validation.
  • Stream forward-only when retaining rows is unnecessary.

It does not

  • Map SKR03 or SKR04 accounts, or determine tax treatment.
  • Act as an accounting engine or a DATEV API client.
  • Certify an import or guarantee acceptance by any DATEV product.
  • Replace verification in the licensed, configured target environment.
Independent open-source project

This library is not affiliated with, endorsed by or supported by DATEV. DATEV is a trademark of DATEV eG. Generated files remain import candidates; acceptance must be verified in the licensed, configured target environment.