← All tools
// free tool

DATEV EXTF file validator

Drop a DATEV CSV file (EXTF_…csv) into the box. The tool checks the header, the column headings and every line against DATEV's format description, and tells you in plain words what would fail on import. The file never leaves your browser.

As of 25 September 2026. Based on DATEV's “DATEV-Format” description on developer.datev.de, DATEV's own format checker and the import messages in the DATEV Hilfe-Center.

This check doesn't replace a test import. DATEV releases and import paths (Stapelverarbeitung, Buchungsdatenservice) differ in the details.

What gets checked

The main rules from DATEV's “DATEV-Format” description (format version 13 for Buchungsstapel, 5 for Debitoren/Kreditoren), with the mistake that usually breaks them.

Field Rule Typical mistake
Line 1 (header) Starts with "EXTF";700; then format category, name and version, 31 fields in all Header missing because the file was saved from Excel without its first line
Berater / Mandant Berater 1001 to 9999999, Mandant 1 to 99999, matching the target client Old number after a change of Steuerberater or fiscal year
Sachkontenlänge 4 to 8, exactly as set for the client Export writes 4, the client uses 5
Datum vom / bis YYYYMMDD, within one calendar year and the fiscal year Batch spanning New Year (#REW04404)
Umsatz (amount) Positive, decimal comma, two decimals, no thousands separator 12.50 instead of 12,50, or a minus sign instead of H
Soll/Haben S or H, relative to the account Empty, or + / -
Konto / Gegenkonto Digits only; ledger accounts as long as the account length, customer/supplier accounts one digit longer Six-digit customer accounts with an account length of 4
BU-Schlüssel (tax key) One to four digits, quoted, not on automatic accounts Key 3 on top of automatic account 8400
Belegdatum DDMM; the year comes from the header A full date, or 501 instead of 0501 because Excel dropped the zero
Belegfeld 1 At most 36 characters: letters, digits and $ & % * + - / Invoice number with a space, dot or underscore
Buchungstext At most 60 characters, quoted An unquoted semicolon in the text shifts every field after it
Encoding Windows-1252 (ANSI); UTF-8 only with a BOM “Bürobedarf” arrives as “Bürobedarf”
Debitoren/Kreditoren Account exactly one digit longer than the account length, addressee type 0/1/2, valid IBAN Name in the company column while the addressee type says person

What the tool can't check

The tool knows the format rules, not your client file in DATEV. These errors only show up on import:

Run the checks in your own code

Building DATEV exports yourself? The same rules come as an open-source library for TypeScript and JavaScript. It validates files, writes Buchungsstapel and returns the messages in German and English. MIT licence, no dependencies. @seamless-engineering/datev-extf on npm →

Frequently asked questions

What is the EXTF format?
EXTF is the marker at the start of every file in “DATEV-Format”, the CSV format third-party software uses to hand bookings and master data to DATEV. Line 1 is a header with Berater, Mandant, fiscal year, account length and period, line 2 holds the column headings, and each line after that is one booking or one account.
Why does DATEV say there's no data when the file is full?
Usually the header doesn't match the client: a different Berater or Mandant number, a different fiscal year, or a period outside the client's data. File names that don't start with EXTF_ and files without the header line also keep the batch import from offering the file.
Which encoding does a DATEV import file need?
The default is Windows-1252 (also called ANSI or ISO-8859-1). DATEV Rechnungswesen only reads UTF-8 when the file starts with a byte order mark (BOM). Without it, umlauts turn into the wrong characters.
Why is the document date only four digits?
In a Buchungsstapel the Belegdatum is DDMM, day and month. The year comes from the period in the header, which is also why one batch can't span New Year.
Is my file uploaded?
No. The file is read and checked in your browser and nothing is sent anywhere. We only count that the tool was used, not what's in the file.
// scoping request

Your DATEV export breaks on something different every month? We build and operate the integration that creates batches, checks them and only hands them to your Steuerberater once they go through. Fixed-price scoping quote within 48 hours.

We reply within one working day. No newsletter, no sales sequence.