Portugal IBAN validator

How the IBAN format works

Format
PT + 2 check digits + 21-digit bank/branch/account number (25 chars)
Example
PT50000201231234567890154

Things to watch for

  • 25 characters total, all numeric
Regex for IBAN
^PT[0-9]{2}[0-9]{21}$

A Portuguese IBAN is 25 characters: “PT”, two check digits, a 4-digit bank code, a 4-digit branch code, an 11-digit account number, and 2 national check digits — 21 digits in that final block, all numeric. Those trailing 2 digits aren’t part of the IBAN’s own mod-97 checksum; they’re Portugal’s older domestic check value from the NIB numbering scheme banks used before IBAN, layered underneath the newer international check digits at the front. Anyone paying a Portuguese landlord, invoicing a client based in Portugal, or converting an old NIB into IBAN form for a SEPA transfer needs all 21 digits of that block right, including the national check digits at the very end that are easy to assume are just more account number.

How this validator works

This tool checks the “PT” prefix, confirms the bank-code block is 4 digits, the branch-code block is 4 digits, the account-number block is 11 digits, and the national check-digit block is 2 digits, then runs the real mod-97 checksum (ISO 7064) Portuguese banks use to generate a valid IBAN — entirely in your browser, nothing sent to a server, no signup required.

What a pass doesn’t tell you

A pass confirms the 25 characters are correctly formed and internally consistent — not that the account is open, active, or belongs to whoever you expect. This tool doesn’t resolve the bank code to an institution name and never contacts Banco de Portugal or any commercial bank. If a Portuguese IBAN converted from an old NIB fails, check first whether the trailing 2 national check digits were accidentally merged into or dropped from the 11-digit account number — that boundary is the detail most often mistyped.

Scope: Portuguese IBAN structure and mod-97 checksum validation only — not payment processing, bank-name lookup, or confirming an account is active, none of which a client-side check can establish. Use this validator to catch a typo before a transfer fails; use your bank to confirm the account itself.

Content last reviewed 2026-07-07.

IBAN FAQ

What are the two check digits at the end of a Portuguese IBAN's domestic block, and how do they differ from the IBAN's own check digits?

They're a separate national check value — distinct from the mod-97 check digits that sit right after 'PT' at the start — computed domestically over the bank, branch, and account segments under Portugal's older NIB (Número de Identificação Bancária) scheme, which IBAN adoption carried forward unchanged.

What are the blocks before those national check digits?

A 4-digit bank code, a 4-digit branch code, and an 11-digit account number, followed by the 2 national check digits — 21 digits in total sitting after 'PT' and the IBAN's own 2 check digits, for 25 characters overall.

Does this tool separately recompute those national check digits as their own step?

No. This tool validates the full 25 characters with the IBAN-level mod-97 (ISO 7064) checksum. It doesn't isolate and recompute the domestic NIB check-digit formula separately, and it doesn't confirm the account is open or belongs to anyone — that requires your bank or Banco de Portugal.

← More IBAN validators