Italian Partita IVA Validator
Validate Italian Partita IVA (VAT) numbers in real time using the Luhn algorithm.
Italian Partita IVA Validation
Validates the 11-digit structure and calculates the Luhn modulo 10 checksum over the first 10 digits.
Crucial for verifying electronic invoicing (FatturaPA/SDI) and B2B corporate registrations.
Anatomy & Structure of Italian Partita IVA (11 Digits)
The Partita IVA is the VAT identifier for companies and freelancers in Italy:
| Position | Field | Length | Meaning & Rule | Example |
|---|---|---|---|---|
| 1 to 7 | Progressive Record | 7 digits | Sequential business registration number assigned by local office | 1234567 |
| 8 to 10 | Province / Office Code | 3 digits | Provincial tax office code (001 to 100, or 999 for non-residents) | 058 |
| 11 | Check Digit | 1 digit | Checksum digit verified via Luhn Modulo 10 algorithm | 5 |
Partita IVA Validation Algorithm (Luhn Modulo 10)
Validation of the 11th digit follows the standard Luhn algorithm with alternating weights 1 and 2:
DV = (10 - (sum(even_direct + odd_doubled) % 10)) % 10
- 1. Process left-to-right (0-indexed 0 to 9):
- 2. Even index digits (0, 2, 4, 6, 8): add direct value to sum.
- 3. Odd index digits (1, 3, 5, 7, 9): double the digit; if doubled value > 9, subtract 9 from it.
- 4. Compute grand total of all terms.
- 5. Calculate remainder modulo 10: Remainder = Total % 10.
- 6. Check digit: DV = (10 - Remainder) % 10. Must match the 11th digit.