Skip to content

atlorium-api/swift-bic-api-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SWIFT/BIC API — поиск банка по SWIFT-коду и проверка BIC

Русский · English

examples license API

Готовые примеры работы с API справочника SWIFT/BIC на шести языках: Python, TypeScript (Node.js), Go, Java, C#, PHP. Поиск банка по SWIFT-коду или по названию организации: LEI, страна, адрес, статус. Плюс валидация BIC — проверка формата по стандарту ISO-9362 с разбором кода на части.

Каждый пример запускается сразу — без регистрации, без ключа, без карты. В коде зашит публичный демо-ключ.

git clone https://github.com/atlorium-api/swift-bic-api-client
cd swift-bic-api-client/python && pip install -r requirements.txt && python main.py
Разбор BIC DEUTDEFFXXX по ISO-9362: формат корректен.
  Код банка:   DEUT
  Страна:      DE
  Локация:     FF
  Филиал:      XXX

БЕЛОЗЕРОВ - ЗАЙЦЕВА AG
  BIC DEUTDEFF · LEI 2413TPIKANOBHKMO77
  Страна: DZ · Волгоград
  Адрес: ул. Больничная, 833
  Статус: ACTIVE · регистрация LEI: ISSUED

ВЕРДИКТ: реквизиты сомнительные, перевод отправлять рискованно.
  [!] Страна организации в справочнике (DZ) не совпадает со страной в BIC (DE) — перепроверьте реквизиты
  [i] Головной офис (код филиала: XXX)

Запись справочника обновлена 2026-07-11.

Демо-ключ отвечает правдоподобными моками, а не реальными данными справочника — поэтому у немецкого BIC в примере выше «страна DZ» и адрес в Волгограде. Так и задумано: интеграцию можно написать и протестировать до оплаты (и заодно увидеть, как срабатывает проверка на несовпадение страны). Подставьте боевой ключ — тот же код начнёт возвращать настоящие данные.


Зачем это нужно

Проверка реквизитов банка-получателя перед международным переводом, комплаенс и KYC (сверка организации и её LEI), автозаполнение платёжных форм по введённому BIC, валидация ввода прямо в форме.

Примеры не просто печатают JSON, а применяют данные: в каждом есть функция checkBeforeTransfer(), которая перед отправкой SWIFT-перевода разбирает BIC получателя по ISO-9362, затем поднимает карточку организации и выносит вердикт — существует ли такой BIC вообще, активна ли организация, совпадает ли страна в коде с ожидаемой страной получателя (классическая ошибка при копировании реквизитов), головной это офис или филиал.

Быстрый старт за 60 секунд

Проверить API вообще без клонирования:

curl -H "Authorization: Bearer ak_sandbox_demo_mockdata_v1" \
     "https://atlorium.com/api/swift/DEUTDEFF"
Язык Запуск Требуется
Python pip install -r requirements.txt && python main.py Python 3.10+
TypeScript / Node.js npm install && npm start Node.js 20+
Go go run . Go 1.22+
Java java Main.java JDK 17+ (без зависимостей)
C# dotnet run .NET 8+
PHP php main.php PHP 8.1+

Передать свой BIC аргументом: python main.py BNPAFRPP Вторым аргументом — ожидаемую страну получателя: python main.py BNPAFRPP DE (несовпадение будет отмечено как риск).

Аутентификация

Ключ передаётся в заголовке Authorization:

Authorization: Bearer ВАШ_КЛЮЧ
Ключ Что делает
ak_sandbox_demo_mockdata_v1 Демо-ключ. Публичный, один на всех. Возвращает моки, денег не списывает, регистрации не требует. Ответы детерминированы — на них можно писать стабильные тесты.
Боевой ключ Реальные данные справочника. Получить в личном кабинете: atlorium.com

Переход на боевой ключ не требует правок в коде — все примеры читают переменную окружения:

export ATLORIUM_API_KEY="ak_ваш_боевой_ключ"

Каждый ответ песочницы помечен заголовком X-Atlorium-Sandbox: true — перепутать мок с реальными данными невозможно.

Эндпоинты

Базовый адрес: https://atlorium.com

Метод Путь Назначение
GET /api/swift/{bic} Карточка организации по точному SWIFT/BIC
GET /api/swift/search Поиск организаций по наименованию
GET /api/swift/validate/{bic} Проверка формата BIC по ISO-9362 и разбор на части
GET /api/swift/stats Служебная информация сервиса

GET /api/swift/{bic}

Параметр Где Тип Описание
bic путь string SWIFT/BIC-код, 8 или 11 символов. 8-значный (головной офис) внутри справочника дополняется до 11 суффиксом XXX. Например, DEUTDEFF

GET /api/swift/search

Параметр Где Тип Описание
query query string Часть наименования организации. Например, Deutsche Bank
limit query int Максимум результатов: по умолчанию 20, максимум 100

GET /api/swift/validate/{bic}

Параметр Где Тип Описание
bic путь string Проверяемый BIC, 8 или 11 символов

Проверяется только формат, а не существование кода: XXXXDEFF формально валиден, но такой организации нет. Чтобы узнать, существует ли BIC на самом деле, нужен запрос карточки.

Поля ответа

Карточка организации (/api/swift/{bic})

Поле Тип Что содержит
bic string SWIFT/BIC-код организации
lei string Legal Entity Identifier (ISO 17442) — глобальный идентификатор юрлица
name string Наименование организации
otherNames array Прочие наименования (торговые, транслитерации)
country string Код страны организации (ISO-3166 alpha-2)
jurisdiction string Юрисдикция регистрации
entityCategory / entitySubCategory string Категория юрлица
legalForm string Организационно-правовая форма
city / region / postalCode / address string Адрес организации
headquarters object Адрес головного офиса, если он отличается от юридического
otherAddresses array Прочие адреса
entityStatus string Ключевое поле для проверки. ACTIVE — организация действует
registrationStatus string Статус записи LEI: ISSUED, LAPSED и т.п.
entityCreationDate date Дата создания юрлица
entityExpirationDate / entityExpirationReason date / string Признак риска. Дата и причина прекращения существования
successorLei / successorName string Правопреемник, если организация прекратила существование
associatedEntityLei / associatedEntityName string Связанная организация
initialRegistrationDate / lastUpdate / nextRenewalDate date Даты жизненного цикла записи LEI
managingLou string Организация, ведущая запись LEI
corroborationLevel string Уровень подтверждения данных (например, FULLY_CORROBORATED)
registrationAuthorityId / registrationId string Реестр и номер регистрации в стране
validationAuthorityId / validationId string Источник подтверждения данных
conformityFlag / qualityCode string Служебные признаки качества записи
legalEvents array Юридические события: { type, status, effectiveDate, recordedDate }
mic string Market Identifier Code, если организация — торговая площадка
openCorporatesId / spGlobalIds string / array Идентификаторы во внешних базах
allBics array Все SWIFT/BIC-коды этой организации (головной офис и филиалы)

Валидация BIC (/api/swift/validate/{bic})

Поле Тип Что содержит
normalizedBic string BIC, приведённый к 11 символам (8-значный дополняется XXX)
isValidFormat bool Соответствует ли код стандарту ISO-9362
message string Человекочитаемое пояснение
bankCode string 4 буквы — код банка
countryCode string 2 буквы — код страны (ISO-3166 alpha-2)
locationCode string 2 символа — код локации
branchCode string 3 символа — код филиала. XXX или отсутствие = головной офис
isPrimaryOffice bool Головной офис (true) или филиал (false)

Поиск (/api/swift/search)

Поле Тип Что содержит
query string Исходная строка поиска
results array Найденные организации — карточки того же вида, что выше
count int Сколько записей вернулось
totalMatches int Сколько всего совпало
elapsedMs int Время поиска, мс

Служебная информация (/api/swift/stats)

Поле Тип Что содержит
isReady bool Готов ли справочник обслуживать запросы
cachedBicLookups int Размер кэша запросов по BIC
cachedSearches int Размер кэша поисковых запросов

Обработка ошибок

Код Причина Что делать
400 BIC не соответствует ISO-9362 Ожидается 8 или 11 символов: 4 буквы код банка, 2 буквы код страны, 2 символа код локации, опционально 3 символа код филиала
401 Ключ отсутствует, просрочен или недействителен Проверьте заголовок Authorization
402 Недостаточно кредитов на балансе Пополнить на atlorium.com
404 BIC не найден в справочнике Формат корректен, но такой организации нет — реквизиты, скорее всего, ошибочны
429 Превышен rate-limit Повторить с задержкой
503 Справочник временно недоступен Повторить позже. За сбой на нашей стороне деньги не списываются

Во всех шести примерах коды разложены в человекочитаемые причины — смотрите класс AtloriumError.

Цены и лимиты

Оплата pay-as-you-go, без подписки: платите только за выполненные запросы. Актуальные тарифы и лимиты — на atlorium.com/pricing.

Актуальные цены и лимиты: atlorium.com/pricing

Частые вопросы

Откуда данные? Из открытых данных глобального реестра юридических лиц (LEI, ISO 17442), включая официальную привязку SWIFT/BIC-кодов к юрлицам.

Чем 8 символов отличаются от 11? 8-значный BIC (DEUTDEFF) обозначает головной офис. 11-значный (DEUTDEFF500) добавляет 3 символа кода филиала; XXX в этой позиции — снова головной офис. Справочник нормализует 8-значный код до 11, дополняя его суффиксом XXX.

Валидация проверяет, что такой банк существует? Нет. /validate работает локально и проверяет только формат по ISO-9362: XXXXDEFF пройдёт валидацию, хотя такого банка нет. Существование кода подтверждает только запрос карточки /api/swift/{bic} — если её нет, вернётся 404. Именно поэтому функция checkBeforeTransfer() в примерах делает оба шага, а не один.

Можно найти организацию, не зная BIC? Да — /api/swift/search ищет по части наименования и возвращает карточки вместе с их BIC-кодами.

Есть ли здесь российские БИК ЦБ? Нет, это разные вещи. SWIFT/BIC — международный код по ISO-9362 (8 или 11 символов, буквы и цифры). Российский БИК банка — 9 цифр, живёт в справочнике ЦБ РФ: для него есть отдельный сервис.

Обязательна ли регистрация, чтобы попробовать? Нет. Демо-ключ публичный и работает без аккаунта — но возвращает моки, а не реальные данные.

Есть ли SDK-пакет в PyPI/npm? Пока нет — это самодостаточные примеры без зависимостей, чтобы их можно было скопировать в свой проект целиком.

Другие API Atlorium

Реквизиты редко проверяют по одному источнику. Из того же аккаунта и тем же ключом доступны:

Полный каталог — atlorium.com

Ссылки

Лицензия

MIT — берите код и используйте как хотите, в том числе в коммерческих проектах.

About

API справочника SWIFT/BIC: поиск банка по SWIFT-коду, валидация BIC по ISO-9362, LEI, страна, статус. Примеры на Python, TypeScript, Go, Java, C#, PHP. SWIFT/BIC lookup and validation API client.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors