W-IdNr Generator (Germany)
Generate and format valid Wirtschafts-Identifikationsnummer (W-IdNr) for testing German tax and electronic invoicing systems.
About W-IdNr (Germany)
The Wirtschafts-Identifikationsnummer (W-IdNr) is Germany's unified business identifier, enacted under § 139c of the German Fiscal Code (AO) and issued by the Federal Central Tax Office (BZSt).
The format starts with prefix "DE" followed by 9 digits (with a check digit computed by ISO 7064 Mod 11, 10) and a 5-digit differentiator suffix (Unterscheidungsmerkmal) preceded by a hyphen to distinguish business units and branches (e.g. DE123456789-00001).
Anatomy & Structure of W-IdNr
The German Wirtschafts-Identifikationsnummer consists of 16 alphanumeric characters structured according to the WIdV Ordinance and § 139c AO:
| Position | Field | Length | Meaning & Specification | Example |
|---|---|---|---|---|
| 1 and 2 | Country (ISO) | 2 letters | Sovereign code for Germany in ISO 3166-1 alpha-2 standard | DE |
| 3 to 10 | Base Number | 8 digits | Main numerical business identifier assigned by the BZSt | 12345678 |
| 11 | Prüfziffer (Check Digit) | 1 digit | Check digit computed according to ISO/IEC 7064, Mod 11, 10 | 9 |
| 12 to 16 | Unterscheidungsmerkmal | 5 digits | Differentiator suffix for establishment/branch (00001 for main headquarters) | 00001 |
Validation Algorithm of W-IdNr (ISO/IEC 7064, Mod 11, 10)
The 9-digit base block follows the strict ISO 7064 recursive modular rules:
- 1. Isolate the DE prefix and the 5-digit differentiator suffix (separated by optional hyphen).
- 2. Initialize product variable P = 10 for the first 8 digits.
- 3. For each digit calculate S = (digit + P) % 10 (if 0, reset to 10) and P = (S * 2) % 11.
- 4. Calculate check digit C = 11 - P (if 10, the check digit is 0; otherwise equal to C).
- 5. The 9th digit must match C, and the suffix must be between 00001 and 99999.