Retour au blog
Produit

Validation IBAN : bien plus qu'un simple checksum

Josselin Liebe
Josselin Liebe

La plupart des librairies de validation IBAN se contentent d'un checksum modulo-97. Cela attrape les fautes de frappe, mais ne dit rien sur l'existence de la banque, son code BIC ou sa participation au réseau SEPA. L'API IBAN Validation de Veille (GET /v1/vat/iban) va plus loin en retournant les détails complets de la banque en plus de la vérification mathématique.

Ce que l'API retourne

Pour tout IBAN, vous obtenez : valid (booléen), bank_name, bic (code SWIFT), country_code, country_name, la décomposition structurelle (bank_code, branch_code, account_number, bban) et in_sepa_zone.

Intégration rapide

Python

import requests

API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.veille.io/v1"

response = requests.get(
    f"{BASE_URL}/vat/iban",
    params={"query": "FR7630006000011234567890189"},
    headers={"x-api-key": API_KEY},
)
data = response.json()

if data["valid"] and data["in_sepa_zone"]:
    print(f"Compatible SEPA - {data['bank_name']} (BIC : {data['bic']})")
else:
    print("IBAN invalide ou hors zone SEPA")

TypeScript

const API_KEY = "YOUR_API_KEY";
const BASE_URL = "https://api.veille.io/v1";
const headers = { "x-api-key": API_KEY };

const response = await fetch(
  `${BASE_URL}/vat/iban?query=FR7630006000011234567890189`,
  { headers }
);
const data = await response.json();

if (data.valid && data.in_sepa_zone) {
  console.log(`Compatible SEPA - ${data.bank_name} (BIC : ${data.bic})`);
} else {
  console.log("IBAN invalide ou hors zone SEPA");
}

Champs de réponse principaux

  • valid - validation structurelle et checksum complète
  • bank_name - l'établissement derrière l'IBAN
  • bic - code BIC/SWIFT pour le routage
  • in_sepa_zone - si la banque supporte les virements SEPA
  • bank_code / branch_code / account_number - décomposition du BBAN

5 cas d'utilisation

  1. Validation de formulaire de paiement - vérifier l'IBAN et afficher le nom de la banque avant la soumission pour réduire les virements échoués.
  2. Prélèvement SEPA - confirmer l'appartenance à la zone SEPA avant de mettre en place un mandat pour éviter les rejets.
  3. Paiements fournisseurs - résoudre automatiquement le BIC depuis l'IBAN pour pré-remplir les détails de virement.
  4. Onboarding KYC - vérifier que le pays de la banque correspond au pays de résidence déclaré par le client.
  5. Systèmes de paiement - valider les IBANs des freelances ou créateurs avant de planifier les versements pour éviter les transactions échouées.