Começar¶
Requisitos¶
- Node.js 20 ou superior
Instalação¶
O pt-fiscal é distribuído como ESM com tipos TypeScript e sem dependências em
runtime.
Importa só o que precisas¶
import { validateNif, validatePortugueseIban, formatPostalCode } from 'pt-fiscal';
validateNif('123456789'); // true
validatePortugueseIban('PT50000201231234567890154'); // true
formatPostalCode('1000001'); // "1000-001"
Tarefas comuns¶
Validar um cliente no onboarding¶
import { validateNif, entityTypeLabel, validatePortugueseIban } from 'pt-fiscal';
function verificarCliente(nif: string, iban: string) {
return {
nifValido: validateNif(nif),
tipo: entityTypeLabel(nif), // "Pessoa singular" / "Pessoa coletiva (empresa)"
ibanValido: validatePortugueseIban(iban),
};
}
Construir o payload do QR de uma fatura¶
Ver o guia dedicado: Faturação: ATCUD e o código QR da AT.
Notas de âmbito¶
- Esta biblioteca verifica estrutura e dígitos de controlo. Não contacta a AT, um banco ou os CTT. Um NIF pode ser estruturalmente válido mas não estar atribuído; um IBAN pode ser válido mas estar encerrado.
- Tudo é puro e determinístico — seguro para correr no cliente ou no servidor.