nif.mod11
NIF português — algoritmo Mod-11 e prefixos
Número de identificação fiscal português de 9 dígitos; dígito de controlo calculado por Mod-11 com pesos 9..2.
O que é um NIF
O NIF (Número de Identificação Fiscal) é o número fiscal português de 9 dígitos emitido pela AT a particulares, empresas e outras entidades. Os ficheiros SAF-T referenciam NIFs em três sítios obrigatórios: Header.TaxRegistrationNumber, cada Customer.CustomerTaxID e cada Supplier.SupplierTaxID.
O algoritmo Mod-11
O 9.º dígito é um dígito de controlo calculado a partir dos primeiros oito:
- Multiplique o dígito 1 por 9, o dígito 2 por 8, …, o dígito 8 por 2.
- Some os produtos.
- Calcule o resto da divisão por 11.
- Se o resultado for 0 ou 1, o dígito de controlo é 0.
- Caso contrário, o dígito de controlo é 11 − resultado.
# Exemplo: 503504564
# dígitos 5 0 3 5 0 4 5 6
# pesos 9 8 7 6 5 4 3 2
# produtos 45 0 21 30 0 16 15 12 → soma 139
# 139 mod 11 = 7
# 11 - 7 = 4
# controlo = 4 → corresponde ao dígito 9 ✓
Primeiros dígitos permitidos
| Gama | Usado por |
|---|---|
| 1, 2, 3 | Particulares (residentes) |
| 5 | Empresas (LDA, SA, etc.) |
| 6 | Administração pública |
| 8 | Empresário em Nome Individual (ENI) |
| 9 | Outras entidades |
| 45, 70-79, 90, 91, 98, 99 | Casos específicos (ex.: herança, condomínio, residente no estrangeiro) |
Casos especiais
999999990é o placeholder reservado pela AT para "Consumidor final" (comprador retalhista anónimo). É permitido emCustomer.CustomerTaxIDpara faturas de tipo retalho.- Qualquer NIF que falhe o Mod-11 é rejeitado, mesmo que os dígitos pareçam plausíveis.
Como corrigir
A correção depende de onde está o dígito errado:
- Header.TaxRegistrationNumber errado — o seu próprio NIF está mal configurado no ERP. Atualize o perfil da empresa e volte a exportar — ou, se precisar de despachar só este ficheiro, use o editor inline para corrigir o valor no lugar.
- NIF de Cliente ou Fornecedor errado — erro tipográfico ou registo desatualizado. Corrija nos dados mestre e volte a exportar — ou corrija a ocorrência problemática com o editor inline quando voltar a exportar não for opção.
O SAFTCheck nunca inventa um NIF; o editor inline apenas aplica o valor que você indica. Não sugerimos números fiscais automaticamente.
Relacionado
- Formato ATCUD — o código único ao nível do documento, separado dos NIFs.
- Editor inline — corrija um NIF no lugar assim que tiver o valor correto.