Skip to content

atlorium-api/aml-crypto-screening-api-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AML API — проверка криптокошелька на санкции и риски

Русский · English

examples license API

Готовые примеры AML-проверки криптокошелька на шести языках: Python, TypeScript (Node.js), Go, Java, C#, PHP. Скоринг криптоадреса по адресу и сети (BTC, ETH, BNB, TRX, SOL и другие): риск-скор биткоин-адреса от 0 до 100, проверка кошелька на санкции и PEP, источники и назначение средств, контрагенты. Всё, что нужно для крипто-комплаенса, одним HTTP-запросом.

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

git clone https://github.com/atlorium-api/aml-crypto-screening-api-client
cd aml-crypto-screening-api-client/python && pip install -r requirements.txt && python main.py
Демо-ключ: ответы сгенерированы (моки), не реальные данные.

BTC 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
  Риск-балл: 0/100 · severity: LOW · статус: SCREENED
  Резюме: Риск не обнаружен (0/100)
  Санкции: нет · PEP: нет
  Оборот: $409 222.81 · комиссии: $373.27
  Назначение средств:
    100.0% · exchange_licensed · Новиков, Константинов and Бурова Exchange · Exchange / Licensed · CA
  Контрагенты:
    Максимова - Сафонова Exchange · Exchange · риск low · 100.0%

КОМПЛАЕНС-ГЕЙТ: ALLOW
  [+] Санкционных совпадений нет
  [+] PEP-контрагентов нет
  [+] Риск-балл 0 ниже порога ручной проверки (40)

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


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

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

Примеры не просто печатают JSON, а применяют данные: в каждом есть функция complianceGate() — комплаенс-гейт, который по риск-баллу и флагам выносит одно из трёх решений: ALLOW (разрешить), REVIEW (ручная проверка), BLOCK (заблокировать). Санкционное совпадение или PEP-контрагент блокируют операцию безусловно, высокий балл — блокирует, средний — отправляет на ручную проверку. Гейт печатает, какие именно факторы повлияли на решение. Пороги вынесены в именованные константы: их нужно настраивать под свою риск-политику, значения в коде — только отправная точка.

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

Проверить API вообще без клонирования. Обратите внимание: скрининг — это POST с JSON-телом, а не GET:

curl -X POST "https://atlorium.com/api/aml/screen" \
     -H "Authorization: Bearer ak_sandbox_demo_mockdata_v1" \
     -H "Content-Type: application/json" \
     -d '{"walletAddress":"1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa","blockchain":"BTC"}'
Язык Запуск Требуется
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 11+ (без зависимостей)
C# dotnet run .NET 8+
PHP php main.php PHP 8.1+

Передать свой адрес и сеть аргументами: python main.py 0x26a5919cd0392df875a53873b0323c42094bb216 ETH

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

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

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

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

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

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

Эндпоинты

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

Метод Путь Назначение
POST /api/aml/screen AML-скрининг кошелька: риск-балл, санкции, PEP, источники и назначение средств
GET /api/aml/validate Проверка формата адреса и поддержки сети (без обращения к блокчейну)

POST /api/aml/screen

Параметры уходят в теле запроса, а не в query-строке:

{ "walletAddress": "0x26a5919cd0392df875a53873b0323c42094bb216", "blockchain": "BNB" }
Поле тела Тип Описание
walletAddress string Адрес криптокошелька
blockchain string Код сети: BTC, ETH, BNB, TRX, SOL и другие. Точный список того, что поддерживается, подтверждает /validate

GET /api/aml/validate

Параметр Где Тип Описание
walletAddress query string Проверяемый адрес кошелька
blockchain query string Код сети

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

Поля ответа

POST /api/aml/screen

Поле Тип Что содержит
walletAddress / blockchain string Нормализованные адрес и код сети
screeningType string Тип скрининга, например WALLET_SCREENING
riskScore int Ключевое поле. Балл риска 0–100: 0 — чисто, 100 — максимальный риск
severity string Словесная градация балла: LOW, MEDIUM, HIGH, CRITICAL
status string Статус скрининга, например SCREENED
summary string Краткое резюме по-человечески
dominantRiskCategory string Категория, которая внесла основной вклад в балл (null, если риска нет)
sanctionsHit bool Стоп-фактор. Совпадение с санкционными списками
pepCounterparty bool Стоп-фактор. Среди контрагентов есть публичное должностное лицо (PEP)
totalValueUsd number Оборот по кошельку в долларах
feeUsd number Сумма комиссий в долларах
sourceOfFunds array Откуда пришли средства — см. таблицу ниже
destinationOfFunds array Куда ушли средства — та же структура
counterpartyConnections array Контрагенты кошелька — см. таблицу ниже
networkNodes / networkEdges array Граф связей для визуализации. У кошельков с простой историей приходят пустыми
elapsedMs int Время выполнения скрининга, мс
fromCache bool Ответ отдан из кеша

Элемент sourceOfFunds / destinationOfFunds:

Поле Тип Что содержит
category string Категория: exchange_licensed, mixer, darknet и т.п.
percentage number Доля средств этой категории, %
amountUsd number Сумма в долларах
entityName string Название сервиса или контрагента
entityType / entitySubtype string Тип: Exchange, подтип: Licensed / KYC
hops int Через сколько переходов достигнута эта связь
description string Человекочитаемое описание связи
isDirect bool Прямая связь, а не через промежуточные кошельки
exposureDirection string incoming — откуда пришли, outgoing — куда ушли
exposureType string direct или indirect
country string Страна сервиса, ISO-код

Элемент counterpartyConnections:

Поле Тип Что содержит
entityName string Название контрагента
entityType / entitySubtype string Тип и подтип контрагента
riskLevel string Уровень риска контрагента: low, medium, high
categories array Категории, к которым отнесён контрагент
receivedUsd / sentUsd number Сколько получено и отправлено, $
percentage number Доля контрагента в обороте кошелька, %
isDirect bool Прямая связь
country string Страна, ISO-код

GET /api/aml/validate

Поле Тип Что содержит
isValid bool Прошёл ли ввод проверку формата
normalizedAddress string Нормализованный адрес
normalizedBlockchain string Нормализованный код сети (например, btcBTC)
message string Пояснение: что именно не так, если isValid = false

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

Код Причина Что делать
400 Адрес или сеть не указаны либо имеют неверный формат Проверьте пару адрес+сеть через /api/aml/validate
401 Ключ отсутствует, просрочен или недействителен Проверьте заголовок Authorization
402 Недостаточно кредитов на балансе Пополнить на atlorium.com
404 Объект не найден
429 Превышен rate-limit Повторить с задержкой
503 Сервис скоринга временно недоступен Повторить позже. За сбой на нашей стороне деньги не списываются

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

Цены и лимиты

Оплата pay-as-you-go, без подписки: каждый успешный скрининг тарифицируется. Списание не происходит, если ввод некорректен (400) или источник данных недоступен (503) — платите только за результат.

Демо-ключ бесплатен и не списывает деньги, но отдаёт моки, а не реальный скоринг.

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

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

Откуда данные? Из блокчейн-аналитики: размеченные адреса бирж, миксеров, даркнет-площадок, санкционные списки и базы публичных должностных лиц. Скоринг считается на момент запроса.

Чем это отличается от бесплатного обозревателя блокчейна? Обозреватель покажет транзакции, но не скажет, чьи это адреса и насколько они токсичны. Здесь вы получаете разметку контрагентов, категории источников средств и агрегированный балл риска — то, ради чего обычно и заводят подписку на дорогую аналитику.

Что сервис НЕ умеет? Он не устанавливает личность владельца кошелька и не выносит юридический вердикт — балл риска и флаги это входные данные для вашего комплаенс-решения, а не замена ему. Эндпоинт /validate проверяет только формат адреса: он не отвечает на вопрос, существует ли такой адрес в блокчейне и есть ли на нём средства.

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

Какие сети поддерживаются? BTC, ETH, BNB, TRX, SOL и другие. Проверить конкретную пару адрес+сеть можно бесплатным по смыслу вызовом /api/aml/validate — он подтвердит, что сеть поддерживается и адрес имеет корректный формат.

Почему /screen — это POST? Адрес кошелька и код сети уходят в теле запроса: так адреса не попадают в логи прокси и историю браузера, что для комплаенс-данных существенно.

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

Другие API Atlorium

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

  • Профиль IP — гео, ASN, детект VPN, прокси и Tor
  • Проверка BIN карты — банк-эмитент, страна и тип карты для антифрода на чекауте
  • CIDR-калькулятор — разбиение сети на подсети и проверка вхождения IP
  • SWIFT/BIC — разбор кода по ISO-9362 и сверка перед международным переводом
  • DNS Lookup — записи домена, MX, SPF, DMARC
  • Справочник БИК ЦБ РФ — реквизиты банка и контрольный ключ расчётного счёта

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

Ссылки

Лицензия

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

About

API AML-скоринга криптокошелька: риск-балл 0–100, санкции, PEP, источники средств. BTC, ETH, TRX, SOL. Примеры на Python, TypeScript, Go, Java, C#, PHP. Crypto AML screening API client.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors