Проверка на IBAN
Автор Екипът на xChange.bg
Публикувано
IBAN е международният номер на банкова сметка. По данни на Българската народна банка всички банкови сметки у нас имат IBAN от 5 юни 2006 г., а стандартът върви и за презгранични, и за местни плащания. Проверката по-горе казва дали един IBAN е изграден правилно, преди да платите или да го споделите.
Как работи проверката
При всяка промяна в полето проверката минава през тези стъпки:
- Почистване. Интервалите и тиретата отпадат, а буквите стават главни. Резултат излиза след поне четири въведени знака.
- Код на държавата. Първите две букви трябва да са на някоя от 37-те държави в таблицата с дължини.
- Дължина. Всяка държава има твърда дължина на IBAN. Ако номерът е по-къс или по-дълъг, проверката казва колко знака са нужни за тази държава и колко сте въвели.
- Формат и контролни цифри. IBAN се състои от две букви, две цифри и след тях само букви и цифри. После идва проверката по ISO 13616: първите четири знака отиват в края, всяка буква се заменя с число (A = 10, B = 11 и така до Z = 35), а полученото дълго число се дели на 97. При валиден IBAN остатъкът е 1.
- Банка. При IBAN, който започва с BG, знаци 5-8 се четат като код на банката и се търсят във вградения списък.
Мине ли IBAN проверката, тя го показва и на групи по четири знака, така както БНБ го изписва на хартия.
Устройство на българския IBAN
По Наредба № 13 на БНБ българският IBAN е с 22 знака:
| Позиция | Съдържание | Пример |
|---|---|---|
| 1-2 | Код на държавата | BG |
| 3-4 | Контролни цифри | 80 |
| 5-8 | Код на банката: първите четири букви от BIC | BNBG |
| 9-12 | Код на банковата адресируема единица | 9661 |
| 13-14 | Вид на сметката | 10 |
| 15-22 | Определят се от банката | 20345678 |
Пример
БНБ дава този примерен IBAN: BG80 BNBG 9661 1020 3456 78.
- Без интервали
BG80BNBG96611020345678е с 22 знака, колкото трябва за BG. - Първите четири знака отиват в края:
BNBG96611020345678BG80. - Буквите се заменят с числа (B = 11, N = 23, G = 16):
1123111696611020345678111680. - Делим на 97. Остатъкът е 1, значи контролните цифри са верни.
- Кодът
BNBGе в списъка, затова проверката назовава Българската народна банка.
Сега разменете последните две цифри: ...345687. Дължината пак е вярна, но остатъкът става 50. Проверката съобщава, че контролните цифри не съвпадат и че има сгрешен знак.
Кодове, които проверката разпознава
Вграденият списък съдържа 14 български кода: UNCR (УниКредит Булбанк), STSA (Банка ДСК), UBBS (Обединена българска банка), FINV (Първа инвестиционна банка), BPBI (Юробанк България, Пощенска банка), RZBB (Райфайзенбанк България, влята в ОББ), PRCB (ПроКредит Банк), CECB (Централна кооперативна банка), BUIN (Алианц Банк България), IABG (Интернешънъл Асет Банк), SOMB (Общинска банка), IORT (Инвестбанк), TEXI (Тексим Банк) и BNBG (Българска народна банка). При друг български код проверката показва самия код, без име на банка.
Докъде стига проверката
- Гледа устройството, не съществуването. Валидният резултат не значи, че сметката е активна или че може да приема плащания.
- Не проверява името. Инструментът не свързва IBAN с титуляря. Потвърдете името с получателя, особено когато реквизитите идват по имейл.
- Знае 37 държави. IBAN от държава извън таблицата излиза с непознат код, дори да е съвсем редовен.
- Имена на банки само за България. Чуждестранните IBAN минават проверката, но остават без име на банка.
- Списъкът е фиксиран. Имената на банките идват от вграден списък и може да изостават след сливане или преименуване.
IBAN, SEPA и стейбълкойни
В еврозоната плащанията между сметки с IBAN обикновено минават през SEPA. xChange.bg е технологична компания, а сметките и обменът идват от регулирания партньор Bridge (компания на Stripe). Сметките са на ваше име и приемат евро по SEPA и долари по ACH или банков превод. Постъпилите пари стават USDC в портфейл, който контролирате вие, а изходящите плащания отиват към всяка банкова сметка. Точно там верният IBAN има значение. Вижте как върви това при изпращане на пари в чужбина със стейбълкойни и при получаване на долари от чужбина.
Често задавани въпроси
Какво доказва валидният IBAN?
- Само че номерът е изграден правилно: познат код на държава, вярна дължина за нея и контролни цифри, които минават теста mod-97. Не доказва, че сметката съществува, че е активна или че е на човека, на когото искате да платите.
Колко знака има българският IBAN?
- Двайсет и два. Започва с BG и две контролни цифри. След тях идват четирибуквен код на банката, четири цифри за банковата адресируема единица, две цифри за вида на сметката и осем знака, определени от банката, по Наредба № 13 на БНБ.
Как проверката разбира коя е българската банка?
- Знаци 5-8 в българския IBAN са първите четири букви от BIC кода на банката. Проверката ги сравнява с вграден списък от 14 кода на най-големите банки и на БНБ. Останалите кодове излизат без име.
Защо редовен чуждестранен IBAN излиза с непознат код на държава?
- Проверката знае дължината на IBAN за 37 държави: ЕС и ЕИП плюс Андора, Гибралтар, Монако, Сан Марино, Швейцария, Обединеното кралство и Ватикана. IBAN от други държави остават непознати за нея.
Изпраща ли се поставеният IBAN някъде?
- Не. Проверката върви в браузъра ви, докато пишете, с код, който се зарежда заедно със страницата. IBAN не тръгва нито към xChange.bg, нито към банка или друга услуга, и никъде не се пази.
Хващат ли контролните цифри всяка грешка?
- Хващат един сгрешен знак и повечето размени на два съседни знака, а това са най-честите грешки. Номер с няколко грешки наведнъж може случайно да мине, затова сверете IBAN и с източника.