IBAN format · PT

Portuguese IBAN format

The Portuguese IBAN format is defined by ISO 13616 and is fixed for every account opened in Portugal. A Portuguese IBAN is always 25 characters long and uses the structure pattern 4!n4!n11!n2!n: 4 digits (0–9), then 4 digits (0–9), then 11 digits (0–9), then 2 digits (0–9). The first two characters are the country code PT, the next two are MOD 97 check digits, and the remaining 21 characters form the BBAN, which Portugal divides into 4 fields. This page breaks down each field, shows a worked PT IBAN, and explains how the check digits are computed.

Country code
PT
Total length
25 chars
Check-digit algo
MOD 97-10
ISO 13616 pattern
4!n4!n11!n2!n
4 digits (0–9), then 4 digits (0–9), then 11 digits (0–9), then 2 digits (0–9)

Structure breakdown

The Portugal BBAN (positions 5–25) is the country-specific part of the IBAN and is 21 characters long. Portugal splits it into 4 fields: Field 1 is 4 digits; Field 2 is 4 digits; Field 3 is 11 digits; Field 4 is 2 digits. The exact meaning of each field (bank code, branch, account number) is defined by Portugal's national registry and is stable, so any PT IBAN that matches the pattern and length is structurally valid even before the MOD 97 check.

Country code
ISO 3166 — Portugal
PT
Check digits
MOD 97-10 checksum
37
BBAN field 1
4 digits · digits (0–9)
0123
BBAN field 2
4 digits · digits (0–9)
3456
BBAN field 3
11 digits · digits (0–9)
67890123456
BBAN field 4
2 digits · digits (0–9)
90

The table below applies the 4!n4!n11!n2!n pattern to a real, MOD 97-valid Portuguese IBAN (PT37012334566789012345690). Each row shows one field of the IBAN — country code, check digits, then the BBAN fields in order — so you can see exactly how the PT IBAN is assembled. This is the same breakdown the IBAN validator produces when you paste a Portuguese IBAN.

Portuguese IBAN examples by bank

Bank-specific Portuguese IBAN examples are useful for testing parsers because the national skeleton stays constant while the BBAN values change. The table below gives three distinct, deterministic fixtures labelled for Caixa Geral de Depósitos, Millennium BCP, Novo Banco. They are generated to match the Portugal pattern (4!n4!n11!n2!n), exact 25-character length, and MOD 97-10 checksum; they are not live accounts and must never be used to send funds. In production, copy the beneficiary's complete IBAN from an official bank document rather than trying to derive one from a public BIC or a bank name. Compare the rows field by field. The country prefix and two check digits occupy positions 1–4 in every row, while the BBAN fields carry the bank's national routing and account data. A parser should preserve every leading zero, retain letters where the pattern allows them, and avoid assuming that all European IBANs have the same length. These fixtures are intentionally different so automated tests can catch code that accidentally hard-codes one sample value or validates only the prefix. When documenting a bank integration, record the source and date of any real example separately from these synthetic fixtures. Banks merge branches, change correspondent arrangements, and may publish different BICs for head office and specialist offices. The IBAN format page can confirm structure; only the account holder or receiving bank can confirm that a particular IBAN is open and ready to receive a payment.

Synthetic IBAN fixtures for common Portugal banks
BankBIC/SWIFTSynthetic IBAN fixtureChecks
Caixa Geral de DepósitosConfirm with the receiving bankPT3012344567789012345670125 chars · MOD 97 valid
Millennium BCPConfirm with the receiving bankPT1523455678890123456781225 chars · MOD 97 valid
Novo BancoConfirm with the receiving bankPT5134566789901234567892325 chars · MOD 97 valid

Portuguese IBAN check digits

Positions 3–4 of a Portuguese IBAN hold two MOD 97-10 check digits. ISO 13616 computes them by rearranging the IBAN so the BBAN leads and the country code plus check digits trail, converting letters to numbers (A=10 … Z=35), and taking the giant resulting integer mod 97. The check digits are chosen so the whole IBAN leaves a remainder of 1. If any single character in the PT IBAN is mistyped, the remainder changes and validation fails — which is why the format checker on this page can flag a typo from one wrong digit.

What makes a Portuguese IBAN valid

A Portuguese IBAN is structurally valid only when it passes three independent checks at once. First, the character set: the first two characters must be the letters PT, the next two must be digits, and the BBAN may contain only digits and uppercase letters. Second, the length: the PT IBAN must be exactly 25 characters, because Portugal fixes its BBAN at 21 characters and ISO 13616 fixes the country code and check digits at four. Third, the MOD 97 checksum. The 4!n4!n11!n2!n pattern adds one more layer — it confirms the BBAN splits into 4 fields of the right size and type, so a Portuguese IBAN with the right total length but the wrong internal split still fails. This is why the format checker on this page is stricter than a generic length-only check.

Using a Portuguese IBAN in an international transfer

Use this Portuguese IBAN format reference as one step in a complete international-transfer workflow. First ask the beneficiary for the legal account name, complete IBAN, receiving-bank SWIFT/BIC, bank address, currency, and payment reference. Normalize the IBAN to uppercase without spaces for the payment payload, but show four-character groups when a person reviews it. Confirm that the first two characters are PT, the value is exactly 25 characters, and every BBAN field follows 4!n4!n11!n2!n. Then open the Portugal SWIFT/BIC directory to select the receiving bank's published code. Do not substitute a domestic clearing number, card number, or branch phone number for an IBAN. If the bank portal offers separate fields for bank code, branch, and account number, follow that bank's documented split; never guess from character positions alone. Some portals require an 8-character BIC, while others accept the 11-character branch form. Preserve an 11-character BIC exactly as supplied and do not append XXX unless the bank instructs you to. Before submitting, run the normalized value through the validator and save the result with the invoice or transfer reference. A valid MOD 97 result proves only syntax and arithmetic. It cannot check sanctions screening, account status, beneficiary-name matching, currency restrictions, or correspondent-bank rules. For a first payment or a last-minute change of bank details, verify the instruction through a known phone number or secure banking channel. If a transfer is rejected, give support the exact submitted IBAN, BIC, value date, and return reason; editing digits until the checksum passes can route money to the wrong account.

Common Portuguese IBAN format mistakes

Most Portugal IBAN format errors come from a handful of avoidable mistakes. Pasting a domestic Portugal account number instead of the IBAN is the most common: the IBAN always starts with PT and is exactly 25 characters, while a local account number is usually shorter and has no country prefix. Dropping or adding a character when copying from a statement is next; because the length is fixed, even one extra digit fails. Confusing the country code with a similar one changes both the expected length and the check digits, so the whole IBAN fails. Including spaces in the stored value is harmless when a checker normalizes input, but can break payment forms that count characters literally — strip spaces before submitting the PT IBAN. The internal BBAN boundaries matter as much as the total length. Portugal defines field 1 (4 digits), field 2 (4 digits), field 3 (11 digits), field 4 (2 digits); do not move a leading zero from one field to the next or convert an alphanumeric field to a number in your database. A spreadsheet may silently trim zeroes, an OCR scan may change O to 0, and a copy from a PDF may insert a non-breaking space. Normalize only approved separators, convert letters to uppercase, then validate the complete value again. Never “repair” a failed checksum by changing random digits: request a fresh beneficiary instruction from the bank. For QA, keep negative fixtures for Portuguese IBANs: one value with the wrong country prefix, one that is 24 characters, one that is 26 characters, one with an illegal symbol, and one with a single changed check digit. A robust parser should reject all five and accept the grouped human display form after removing spaces. A mathematically valid checksum still does not prove that a bank account exists, belongs to the named beneficiary, or accepts the intended currency, so operational verification remains essential.

Portuguese IBAN and SWIFT codes

When you send or receive an international payment to Portugal, the IBAN tells the network which account to credit, and the bank's SWIFT/BIC code tells it which bank holds that account. After checking the PT IBAN format here, open the Portugal SWIFT codes page to find the receiving bank's BIC and complete the wire instructions.

Portugal IBAN overview →View PT IBAN example →Validate this PT IBANFind SWIFT code from an IBAN →Generate a test IBAN →