Skip to content

IBAN format · FR

France IBAN format: 27 characters.

France IBANs have 27 characters: the country code FR, two check digits and a 23-character BBAN, the national account number, laid out as 5!n5!n11!c2!n.

France IBAN structure

FR1420041010050500013M02606
Country code
FR
Check digits
14
Bank code
20041
Branch code
01005
Account
0500013M026
RIB key (national check)
06
Parts of a France IBAN and their positions
PositionsPartIn the example
1–2Country codeFR
3–4Check digits14
5–9Bank code20041
10–14Branch code01005
15–25Account0500013M026
26–27RIB key (national check)06

The BBAN, segment by segment

The registry writes the BBAN in SWIFT notation: n is a digit, a an upper-case letter, c a letter or digit, and the ! means a fixed length. 5!n5!n11!c2!n reads:

The France BBAN format, segment by segment
PositionsNotationHoldsExample
5–95!n5 digitsBank code (code banque)20041
10–145!n5 digitsBranch code (code guichet)01005
15–2511!c11 letters or digitsAccount number (numéro de compte)0500013M026
26–272!n2 digitsRIB key (clé RIB), a national check06

France IBAN example

FR14 2004 1010 0505 0001 3M02 606 is the sample the SWIFT IBAN Registry publishes for France: a well-formed IBAN for showing the format, not a real account. Written electronically it has no spaces (FR1420041010050500013M02606); on paper it is printed in groups of four.

Its check digits, worked through with ISO 7064 mod 97-10:

  1. Move the country code and check digits to the end

    20041010050500013M02606FR14
  2. Replace each letter with two digits (A = 10 … Z = 35)

    M = 22, F = 15, R = 27

    200410100505000132202606152714
  3. Divide that number by 97 and keep the remainder

    Remainder 1. A valid IBAN always leaves 1, so the check digits are right.

  4. Where the check digits come from

    Put 00 in their place (FR00…), repeat steps 1–3: remainder 84. The check digits are 98 − 84 = 14.

SEPA

France is in the Single Euro Payments Area, so SEPA credit transfers and direct debits can reach FR IBANs; whether a given bank takes part is up to that bank.

The French overseas departments use FR IBANs too.

What the format can and can’t tell you

  • Valid means the structure and check digits are right — not that the account exists or can receive payments.
  • National check digits inside the BBAN (e.g. the French RIB key, or the Spanish, Belgian and Italian CIN digits) are not verified.
  • Bank and branch codes are read from their positions; they are not looked up in a bank directory.

Check FR IBANs from code or an AI agent

REST · GET · no key
curl -s 'https://payopskit.com/api/v1/iban/FR1420041010050500013M02606'
MCP · tools/call · validate_iban
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "validate_iban",
    "arguments": {
      "iban": "FR1420041010050500013M02606"
    }
  }
}
Response (JSON)
{
  "input": "FR1420041010050500013M02606",
  "iban": "FR1420041010050500013M02606",
  "print": "FR14 2004 1010 0505 0001 3M02 606",
  "valid": true,
  "country": {
    "code": "FR",
    "name": "France",
    "sepa": true,
    "sepaNote": null
  },
  "checkDigits": "14",
  "expectedCheckDigits": "14",
  "length": {
    "actual": 27,
    "expected": 27
  },
  "bban": "20041010050500013M02606",
  "bbanFormat": "5!n5!n11!c2!n",
  "bankCode": "20041",
  "branchCode": "01005",
  "parts": [
    {
      "label": "Country code",
      "value": "FR",
      "start": 0,
      "end": 2,
      "kind": "country"
    },
    {
      "label": "Check digits",
      "value": "14",
      "start": 2,
      "end": 4,
      "kind": "check"
    },
    {
      "label": "Bank code",
      "value": "20041",
      "start": 4,
      "end": 9,
      "kind": "bank"
    },
    {
      "label": "Branch code",
      "value": "01005",
      "start": 9,
      "end": 14,
      "kind": "branch"
    },
    {
      "label": "Account",
      "value": "0500013M026",
      "start": 14,
      "end": 25,
      "kind": "account"
    },
    {
      "label": "RIB key (national check)",
      "value": "06",
      "start": 25,
      "end": 27,
      "kind": "national-check"
    }
  ],
  "checks": {
    "characters": true,
    "country": true,
    "length": true,
    "bbanFormat": true,
    "checksum": true
  },
  "errors": [],
  "notes": [
    "Valid means the structure and check digits are right — not that the account exists or can receive payments.",
    "National check digits inside the BBAN (e.g. the French RIB key, or the Spanish, Belgian and Italian CIN digits) are not verified."
  ]
}

The MCP server is at /mcp (Streamable HTTP, no key); the API and MCP docs show how to connect Claude, Cursor or VS Code.

From a national account number: GET /api/v1/iban/check-digits?country=FR&bban=… or the MCP tool compute_iban_check_digits computes the check digits and the whole IBAN.

Other 27-character IBANs

Source: the SWIFT IBAN Registry (ISO 13616), transcribed and checked against each country’s registry example; the positions of bank and branch codes are given only where the registry’s are well established. The SWIFT IBAN Registry is the authority. Informational only.