Skip to main content
Skip to main content

Portugal NIF Validator

Online Portuguese NIF (Tax Number) validator. Perfect for software QA.

How does Portuguese NIF validation work?

Validation checks if the NIF has exactly 9 digits, starts with a valid category prefix, and computes a Modulo 11 sum of the first 8 digits using decrescent weights from 9 to 2.

If the weighted sum % 11 is 0 or 1, the check digit must be 0. Otherwise, it is 11 minus the remainder. Any discrepancy marks the document as invalid.

Anatomy & Structure of Portuguese NIF

The Tax Identification Number (NIF) consists of 9 digits issued by AT:

PositionFieldLengthMeaning & RuleExample
1Prefix / Category1 digitTaxpayer category (1/2/3 Individual, 5 Company, 6 Public Body, 8 Sole Trader, 9 Funds)5
2 to 8Sequential7 digitsSequential identifier assigned by the Tax Authority (AT)0123456
9Check Digit1 digitWeighted checksum digit calculated with Modulo 11 and weights 9 to 27

NIF Validation Algorithm (Weighted Modulo 11)

The Tax Authority calculates the check digit using descending weights from 9 to 2:

DV = 11 - (sum(d_i * [9, 8, 7, 6, 5, 4, 3, 2]) % 11) | if DV >= 10, DV = 0
  1. 1. Multiply first 8 digits by weights [9, 8, 7, 6, 5, 4, 3, 2].
  2. 2. Compute sum of products.
  3. 3. Calculate remainder modulo 11: Remainder = Sum % 11.
  4. 4. Preliminary check digit: DV = 11 - Remainder.
  5. 5. If DV is 10 or 11, set DV = 0; otherwise use the calculated number.

Validation FAQ