webtrajans
tr

IBAN nedir ve nasıl doğrulanır?

IBAN, bir banka hesabını uluslararası standartta tanımlayan koddur. Türkiye'de 26 karakterden oluşur ve ülke kodundan sonraki iki kontrol basamağı sayesinde yazım hataları büyük ölçüde yakalanabilir. Yapısını ve güvenli kullanımını anlatıyoruz.

Güncellendi: 4 dk okuma

Havale, EFT ve FAST işlemlerinde, maaş ödemelerinde ve faturalarda kullanılan IBAN (International Bank Account Number), bir banka hesabını hem yurt içinde hem yurt dışında tek bir kodla tanımlar. IBAN’ın içinde yazım hatalarını yakalayan bir kontrol mekanizması bulunur; bu sayede yanlış yazılan bir rakam çoğu zaman işlem yapılmadan fark edilir. Bu rehberde TR IBAN’ın yapısını, kontrol basamaklarının nasıl hesaplandığını ve güvenlik konularını anlatıyoruz. Bir IBAN’ı kontrol etmek için IBAN doğrulama aracımızı kullanabilirsiniz.

IBAN nedir ve neden kullanılır?

IBAN, ISO 13616 standardıyla tanımlanmış uluslararası bir hesap numarası biçimidir. Avrupa’da başlayan uygulama bugün Türkiye dahil 80’i aşkın ülkede kullanılır. Amacı:

  • Hesap numaralarını ülke ve banka bilgisiyle birlikte tek bir standartta toplamak
  • Yazım hatalarını kontrol basamaklarıyla yakalamak
  • Uluslararası transferlerde hataları ve gecikmeleri azaltmak

Türkiye’de IBAN kullanımı 2010’dan itibaren bankalar arası para transferlerinde zorunlu hale gelmiştir.

TR IBAN’ın yapısı

Türkiye’de IBAN 26 karakterdir:

Konum Uzunluk Alan Örnek
1–2 2 Ülke kodu TR
3–4 2 Kontrol basamakları 75
5–9 5 Banka kodu 00099
10 1 Rezerv alan (genellikle 0) 0
11–26 16 Hesap numarası 0000001234567890

Örnek (biçim olarak geçerli, gerçek bir hesap değildir):

TR75 0009 9000 0000 1234 5678 90

IBAN’lar okunabilirlik için dörderli gruplar halinde yazılır; ancak sistemlere girilirken boşluklar dikkate alınmaz.

Bazı banka kodları

Kod Banka
00010 Ziraat Bankası
00012 Halkbank
00015 VakıfBank
00046 Akbank
00062 Garanti BBVA
00064 Türkiye İş Bankası
00067 Yapı Kredi

Kontrol basamakları: mod 97 algoritması

IBAN’ın 3. ve 4. karakterleri, tüm numaradan hesaplanan iki haneli bir kontrol değeridir. Doğrulama şöyle yapılır:

  1. İlk dört karakteri (TR75) sona taşıyın: 0009900000001234567890TR75 (boşluksuz)
  2. Harfleri sayıya çevirin: A = 10, B = 11, … T = 29, R = 27. Böylece “TR” → “2927” olur.
  3. Ortaya çıkan uzun sayının 97’ye bölümünden kalanı hesaplayın.
  4. Kalan 1 ise IBAN biçim olarak geçerlidir.

Bu yöntem tek bir rakamın yanlış yazılmasını ve yan yana iki rakamın yer değiştirmesini neredeyse her zaman yakalar. Kontrol basamaklarını hesaplamak için aynı işlem kontrol alanı “00” yapılarak uygulanır ve sonuç 98’den çıkarılır.

Programlamada bu hesap çok büyük sayılarla uğraşmayı gerektirdiğinden genellikle rakam rakam kalan alınarak yapılır:

function ibanGecerliMi(iban) {
  const s = iban.replace(/\s+/g, '').toUpperCase();
  const r = (s.slice(4) + s.slice(0, 4))
    .replace(/[A-Z]/g, (c) => c.charCodeAt(0) - 55);
  let kalan = 0;
  for (const d of r) kalan = (kalan * 10 + Number(d)) % 97;
  return kalan === 1;
}

Biçim kontrollerini düzenli ifadelerle yapmak isterseniz regex rehberimize göz atabilirsiniz.

Diğer ülkelerin IBAN uzunlukları

Ülke Kod Uzunluk
Türkiye TR 26
Almanya DE 22
İngiltere GB 22
Fransa FR 27
İspanya ES 24
Hollanda NL 18
Suudi Arabistan SA 24
Birleşik Arap Emirlikleri AE 23
Azerbaycan AZ 28

ABD, Kanada, Avustralya ve Rusya gibi bazı ülkeler IBAN kullanmaz. Bu ülkelere yapılan transferlerde hesap numarasının yanında banka kodu (ABD’de routing number, Rusya’da БИК) ve SWIFT/BIC kodu gerekir. Uluslararası transferlerin kur maliyetleri için döviz kuru rehberimize bakabilirsiniz.

IBAN, SWIFT/BIC ve hesap numarası farkı

  • Hesap numarası: Bankanın kendi içinde kullandığı numara.
  • IBAN: Hesap numarasını ülke, banka ve kontrol bilgisiyle birleştiren uluslararası biçim.
  • SWIFT/BIC: Bankanın kendisini tanımlayan 8 veya 11 karakterlik kod. Yurt dışından para alırken IBAN ile birlikte istenir.

Türkiye’de ayrıca FAST sistemi üzerinden Kolay Adres hizmeti bulunur: Hesabınızı telefon numarası, e-posta veya T.C. kimlik numarasıyla eşleştirerek IBAN yazmadan para alabilirsiniz.

Güvenlik: IBAN ile ilgili dikkat edilecekler

  • IBAN tek başına risk değildir: Kimse yalnızca IBAN’ınızla hesabınızdan para çekemez.
  • Alıcı adını kontrol edin: Para gönderirken alıcı adı ile IBAN sahibinin uyuştuğundan emin olun; bankalar uyuşmazlık halinde işlemi geri çevirebilir veya uyarı verebilir.
  • “Yanlışlıkla para gönderdim” dolandırıcılığı: Hesabınıza tanımadığınız biri para gönderip başka bir hesaba iade etmenizi isterse, iadeyi yalnızca bankanız aracılığıyla yapın.
  • Hesabınızı kimseye kullandırmayın: Hesabını başkasının para transferleri için kullandıran kişiler, suç gelirlerinin aklanmasına aracılık etmekten sorumlu tutulabilir.
  • Fatura ve e-postadaki IBAN değişikliklerine şüpheyle yaklaşın: Tedarikçinizin IBAN’ı e-postayla “değişti” denirse, telefonla bilinen bir numaradan teyit edin. Bu tür sahte e-postalara karşı alan adı korumasını SPF, DKIM ve DMARC rehberimizde anlattık.

Yurt dışından para alırken

Yurt dışındaki bir müşteriden veya işverenden ödeme alacaksanız genellikle şu bilgiler istenir:

  • Hesap sahibinin adı (bankadaki kayıtla birebir aynı)
  • IBAN (döviz hesabınızın IBAN’ı; TL hesabınızın değil)
  • Bankanın SWIFT/BIC kodu
  • Bankanın adı ve şube adresi (bazı ülkeler için)

Döviz cinsinden ödeme almak için ilgili para biriminde bir hesabınız olması gerekir; TL hesabına gönderilen döviz, bankanın kuru üzerinden otomatik olarak çevrilebilir. Kur dönüşüm maliyetlerini önceden hesaplamak için döviz çevirici aracını kullanabilirsiniz.

Sık yapılan hatalar

  • O (harf) ile 0 (sıfır) karıştırmak: TR IBAN’ında ülke kodundan sonra yalnızca rakam bulunur.
  • Eksik veya fazla hane: TR IBAN tam 26 karakter olmalıdır.
  • Geçerli biçimi geçerli hesap sanmak: Mod 97 kontrolü hesabın varlığını doğrulamaz.
  • Kopyalarken boşluk veya görünmez karakter eklemek: Yapıştırdıktan sonra kontrol edin.

Sık sorulan sorular

TR IBAN kaç hanelidir?

Türkiye'de IBAN 26 karakterdir: TR ülke kodu, 2 kontrol basamağı, 5 haneli banka kodu, 1 haneli rezerv alan (0) ve 16 haneli hesap numarası.

IBAN'dan hangi banka olduğu anlaşılır mı?

Evet. TR IBAN'ında 5. ile 9. karakterler arasındaki beş rakam banka kodudur. Örneğin 00010 Ziraat Bankası, 00062 Garanti BBVA, 00064 Türkiye İş Bankası kodudur.

IBAN'ımı paylaşmak güvenli mi?

IBAN tek başına hesabınızdan para çekilmesine izin vermez; para almak için paylaşılması normaldir. Ancak kimlik bilgileri, kart bilgileri veya tek kullanımlık şifrelerle birlikte paylaşılmamalı, hesabınızı başkasının kullanımına açmamalısınız.

IBAN doğrulama aracı hesabın gerçekten var olduğunu gösterir mi?

Hayır. Mod 97 kontrolü yalnızca IBAN'ın biçim olarak geçerli olduğunu, yani yazım hatası içermediğini gösterir. Hesabın açık olup olmadığını veya kime ait olduğunu yalnızca banka doğrulayabilir.

İlgili rehberler