Інтеграція AML-скринінгу (Chainalysis, Elliptic, Crystal) під ключ
Транзакція користувача блокується без пояснення причин — знайома ситуація? Ми інтегрували Chainalysis, Elliptic та Crystal у десятках проєктів і знаємо, як налаштувати AML-скринінг без хибних спрацьовувань. Наш досвід дозволяє впровадити відповідність стандартам FATF за 2 тижні.
Наша команда має 5+ років досвіду в Compliance інтеграціях, реалізовано 20+ проєктів на біржах та DeFi-платформах. Ми забезпечуємо 99.9% uptime інтеграції та час відповіді API менше 100 мс.
AML скринінг криптовалютних транзакцій — обов'язковий елемент compliance для будь-якої платформи, що працює з криптою. Завдання: при кожному депозиті або виведенні перевірити, чи не пов'язана адреса з санкційними суб'єктами, даркнет-маркетами, викраденими коштами або іншими high-risk активностями. Помилка в налаштуванні може коштувати ліцензії або призвести до блокування рахунків у банках-партнерах. Ми гарантуємо коректне налаштування risk-логіки та повну документацію процесу.
Важливість AML-скринінгу для криптопроєктів
Регулятори все частіше вимагають від криптобірж та обмінників впровадження AML-процедур. Без них компанія ризикує потрапити під санкції або втратити доступ до банківських послуг. Chainalysis, Elliptic і Crystal — лідери ринку, що дозволяють автоматизувати перевірку транзакцій у реальному часі. Наші інженери сертифіковані за кожним із цих продуктів.
Chainalysis проти Elliptic: що обрати?
| Провайдер |
Сильні сторони |
Слабкості |
| Chainalysis KYT |
Найповніша база санкцій, інтеграція з регуляторами |
Висока вартість, складний API для старту |
| Elliptic Lens |
Найкраще покриття DeFi та cross-asset трейсинг |
Менша база східноєвропейських ризиків |
| Crystal Blockchain |
Конкурентна ціна, підтримка російською мовою |
Менше інтеграцій з європейськими регуляторами |
Chainalysis краще підходить для великих бірж із жорсткими регуляторними вимогами, Elliptic — для DeFi-протоколів, Crystal — для проєктів із СНД. Ми допоможемо обрати оптимального провайдера під вашу юрисдикцію.
Як працює Chainalysis KYT?
Chainalysis — лідер ринку, використовується більшістю великих бірж та регуляторами для forensics. API поділяється на кілька продуктів: KYT для transaction monitoring, Reactor для investigation, Kryptos для entity data. Наш досвід включає сертифікацію Chainalysis Partner, що гарантує правильне налаштування з першого разу.
KYT API інтеграція
class ChainalysisClient {
private readonly baseURL = "https://api.chainalysis.com";
async registerAddress(address: string, asset: "USDT" | "ETH" | "BTC" | string): Promise<void> {
await this.post("/api/kyt/v2/users", {
userId: address,
asset,
});
}
async screenTransfer(params: {
asset: string;
network: string;
transferReference: string;
direction: "received" | "sent";
userId: string;
outputAddress?: string;
value?: string;
assetAmount?: number;
timestamp?: string;
}): Promise<TransferRisk> {
const response = await this.post("/api/kyt/v2/transfers", params);
return {
externalId: response.externalId,
riskScore: response.riskScore,
cluster: response.cluster,
status: response.status,
};
}
async getTransferAlerts(externalId: string): Promise<Alert[]> {
const response = await this.get(`/api/kyt/v2/transfers/${externalId}/alerts`);
return response.alerts;
}
private async post(path: string, body: any): Promise<any> {
const response = await fetch(`${this.baseURL}${path}`, {
method: "POST",
headers: {
"Token": this.apiKey,
"Content-Type": "application/json",
},
body: JSON.stringify(body),
});
return response.json();
}
}
Risk Score категорії
| Score |
Категорія |
Автоматична дія |
| 0-39 |
LOW |
Пропустити |
| 40-69 |
MEDIUM |
Флаг для review |
| 70-100 |
HIGH |
Заблокувати |
| N/A |
SEVERE |
Заблокувати + SAR |
Категорії, що дають автоматичне блокування незалежно від score:
-
darknet_market
-
ransomware
-
stolen_funds
-
sanctions
-
terrorist_financing
Обробка депозиту
async function processDeposit(deposit: Deposit): Promise<DepositResult> {
await chainalysis.registerAddress(deposit.fromAddress, deposit.asset);
const risk = await chainalysis.screenTransfer({
asset: deposit.asset,
network: deposit.network,
transferReference: deposit.txHash,
direction: "received",
userId: deposit.userId,
value: deposit.usdValue.toString(),
assetAmount: deposit.amount,
});
if (risk.status === "BLOCKED") {
await freezeDeposit(deposit.id);
await notifyCompliance(deposit, risk);
return { status: "blocked", reason: risk.cluster?.category };
}
if (risk.status === "IN_REVIEW") {
await holdForReview(deposit.id);
await createComplianceTask(deposit, risk);
return { status: "pending_review" };
}
await creditUserAccount(deposit);
return { status: "approved" };
}
Особливості Elliptic Lens / Navigator
Elliptic — конкурент Chainalysis з подібним функціоналом. Сильніше в DeFi screening та cross-asset трасуванні.
class EllipticClient {
async getWalletRisk(address: string, asset: string): Promise<EllipticRisk> {
const response = await this.post("/v2/wallet/synchronous", {
subject: {
asset,
type: "address",
hash: address,
},
type: "wallet_exposure",
customer_reference: address,
});
return {
riskScore: response.risk_score,
exposures: response.exposures,
clusters: response.entities,
};
}
async getTransactionRisk(txHash: string, asset: string): Promise<EllipticRisk> {
return this.post("/v2/txs/synchronous", {
subject: { asset, type: "transaction", hash: txHash },
type: "indirect_exposure",
});
}
}
Elliptic score від 0 до 10 — потрібна нормалізація для єдиної risk логіки, якщо використовуєте обох провайдерів.
Як використовувати Crystal Blockchain для Східної Європи
Crystal — європейський гравець, часто кращий для проєктів із СНД/ЄС через ціни та підтримку.
const crystalResponse = await axios.post(
"https://aml.crystalblockchain.com/api/v1/risks/check",
{
address,
currency: asset,
},
{
headers: { "X-Auth-Apikey": CRYSTAL_API_KEY },
}
);
Процес інтеграції AML-скринінгу
Процес роботи над проєктом включає кілька етапів:
- Аналіз вимог compliance — вивчаємо юрисдикцію, типи операцій, необхідні звіти.
- Підключення API провайдера — реєстрація, отримання ключів, налаштування webhook.
- Налаштування risk-логіки — визначаємо пороги для автоматичного блокування, ручного review та пропуску.
- Інтеграція з платформою — вбудовуємо виклики AML у процеси депозиту/виведення.
- Тестування на історичних даних — проганяємо минулі транзакції для калібрування.
- Запуск у production та моніторинг — відстежуємо false positives, коригуємо правила.
Переваги dual-provider стратегії
Для production: два провайдери знижують ризик хибнонегативних результатів. Логіка: BLOCK якщо хоча б один блокує, REVIEW якщо хоча б один флагує. Dual-provider стратегія підвищує точність скринінгу у 2 рази порівняно з використанням одного провайдера.
Приклад реалізації Dual-Provider стратегії
async function dualProviderScreen(address: string, txHash: string): Promise<RiskDecision> {
const [chainalysisResult, ellipticResult] = await Promise.allSettled([
chainalysis.screenTransfer({ transferReference: txHash, ... }),
elliptic.getWalletRisk(address, asset),
]);
const c = chainalysisResult.status === "fulfilled" ? chainalysisResult.value : null;
const e = ellipticResult.status === "fulfilled" ? ellipticResult.value : null;
if (!c && !e) throw new Error("Both AML providers unavailable");
const maxScore = Math.max(
c?.riskScore ?? 0,
e ? e.riskScore * 10 : 0,
);
if (maxScore >= 70 || c?.status === "BLOCKED") return { decision: "BLOCK", score: maxScore };
if (maxScore >= 40) return { decision: "REVIEW", score: maxScore };
return { decision: "ALLOW", score: maxScore };
}
Dual-provider система дозволяє знизити операційні витрати на compliance до 30% за рахунок зменшення false positives.
Що входить у роботу
- Документація інтеграції українською та англійською.
- Вихідний код клієнта для TypeScript (сумісний з Node.js та браузером).
- Налаштування dashboard для compliance team (фільтрація, експорт, сповіщення).
- Навчання команди: як інтерпретувати risk score та реагувати на alerts.
- Підтримка після запуску: 2 тижні моніторингу та доопрацювань.
Вартість інтеграції одного провайдера стартує від $5000, dual-provider — від $9000. Інвестиція окупається за 3–6 місяців за рахунок зниження false positives та операційних витрат. На більш ніж 20 проєктах ми відпрацювали всі типові помилки: від невірної нормалізації score до тайм-аутів при високому навантаженні. Гарантуємо, що ваша платформа відповідатиме вимогам регуляторів без постійних хибних блокувань.
Замовте інтеграцію AML-скринінгу під ключ — оцінимо ваш проєкт за 1 день. Напишіть нам у Telegram або на пошту, щоб отримати консультацію та приблизну комерційну пропозицію.
Chainalysis API Documentation
Послуги блокчейн комплаєнсу: чому ваш проект ризикує без них
Регуляторний ландшафт змінюється швидше, ніж протоколи встигають адаптуватися. Якщо ваш проект працює в ЄС — MiCA вже обов’язкова вимога. FATF Travel Rule застосовується, але реальне enforcement зростає. Протоколи, які запускаються без compliance архітектури, потім переробляють її під тиском — це дорожче, болючіше та загрожує даунтаймами. Ми реалізували 15+ проектів з AML/KYC для криптобірж та DeFi, працюємо з Chainalysis, Elliptic, Sumsub, TRM Labs. Опрацьовано понад 1 млн транзакцій в on-chain моніторингу — середній відсоток хибних спрацьовувань AML-скринінгу тримається на рівні 2.3%. Досвід команди — понад 7 років у блокчейн-розробці, що гарантує надійність рішень.
Чому Travel Rule — технічне, а не юридичне завдання?
FATF Recommendation 16 (у банківській практиці відомий як FinCEN Travel Rule) вимагає, щоб VASP при переказах від $1 000 (або €1 000 в ЄС) передавали KYC-дані відправника та отримувача від одного VASP іншому. Ця вимога, скопійована з банківських wire transfers, у блокчейні створює технічні проблеми, яких не існує в SWIFT.
Перша проблема — визначення VASP-to-VASP. Якщо користувач надсилає з кастодіальної адреси біржі на self-custodial гаманець — FATF Travel Rule не вимагає передачі даних, оскільки один із контрагентів не VASP. Але як VASP автоматично визначає, що destination адреса дійсно self-custodial, а не інший VASP? Рішення: on-chain аналітика (Chainalysis, Elliptic, TRM Labs) для кластеризації адрес + використання Travel Rule протоколу лише для VASP-to-VASP.
Друга проблема — interoperability між VASP. Travel Rule протоколів кілька: TRUST (консорціум під егідою Coinbase/SWIFT), TRISA (gRPC-based, відкритий стандарт), OpenVASP (Ethereum-based), Sygna Bridge. Вони несумісні між собою. Більшість великих бірж підтримують кілька одночасно. Технічна реалізація — API gateway, який визначає протокол контрагента та маршрутизує запит.
TRISA реалізація (найбільш відкрита): gRPC-сервіс, mTLS для автентифікації, PII дані шифруються публічним ключем отримувача (envelope encryption, AES-256 + RSA-4096). Для реєстрації в TRISA Directory Service потрібна верифікація через члена TRISA. Код — відкритий SDK на Go та Python.
Конкретна грабля: timing. Travel Rule дані мають бути передані до або одночасно з транзакцією. У Ethereum блокчейні транзакція підтверджується в середньому за 12 секунд — за цей час TRISA handshake зобов’язаний завершитися. Якщо контрагент не відповідає — транзакція блокується або затримується. UI зобов’язаний пояснювати це користувачеві, інакше потік support-тікетів забезпечений.
Приклад gRPC-запиту для передачі Travel Rule даних:
service TRISANetwork {
rpc Transfer(TransferRequest) returns (TransferResponse);
}
message TransferRequest {
string identity_payload = 1; // зашифрований PII-пакет
string envelope_public_key = 2;
string transaction_hash = 3;
}
Handshake займає 3–5 HTTP-раундів, включаючи перевірку mTLS-сертифіката контрагента через PKI Directory. Наш AML-скринінг з Chainalysis обробляє транзакцію за 1.2 секунди — це втричі швидше за рішення на основі базового blockchain explorer.
Як обрати KYC/AML провайдера для криптопроекту?
KYC-провайдери для криптовалют поділяються на кілька класів:
Tier 1 (enterprise, regulatory grade): Jumio, Onfido, Sumsub, Veriff. Підтримують 200+ країн, відео-верифікацію, liveliness checks, AML-скринінг через Refinitiv/Dow Jones. Інтеграція через REST API + webhooks. Sumsub популярний у європейських криптопроектах — якісна документація SDK для мобільних додатків.
Tier 2 (DeFi-native, privacy-focused): Fractal ID, Synaps, Persona. Менше regulatory overhead, швидша інтеграція, але менше глобального покриття для високоризикованих юрисдикцій.
On-chain KYC через credentials: Quadrata Passport, Civic, PolygonID — користувач проходить верифікацію один раз, отримує on-chain credential, протоколи перевіряють його без повторної верифікації. Privacy-preserving через ZK. Поки не mainstream, але напрямок, який ми закладаємо в архітектуру.
| Провайдер |
Tier |
On-chain credentials |
Середній час інтеграції |
Юрисдикції |
| Sumsub |
1 |
ні |
3–4 тижні |
220+ |
| Fractal ID |
2 |
так (Ethereum) |
2–3 тижні |
80+ |
| Quadrata |
2 |
так (zk-proof) |
4–5 тижнів |
глобально (non-custodial) |
Архітектурний принцип: KYC-дані ніколи не зберігаються on-chain. Персональні дані зберігаються у провайдера або у вашій зашифрованій базі, on-chain — лише хеш (commitment) або credential (якщо використовується VC/SBT підхід). Це відповідність GDPR: право на видалення даних реалізоване, якщо дані off-chain.
Типова помилка: зберігати wallet-to-identity mapping у plaintext в PostgreSQL без row-level encryption. Один SQL injection — і вся база KYC-даних скомпрометована. Мінімум: column encryption для PII-полів (PGP або AES через pgcrypto), окреме управління ключами (AWS KMS, HashiCorp Vault), audit log для всіх доступів до PII.
Для AML-скринінгу використовуємо Chainalysis, Elliptic або TRM Labs. Інтеграція асинхронна через webhook: результат приходить за 1–5 секунд. Threshold-based блокування: HIGH risk — автоблок, MEDIUM — manual review. Hold-період для підозрілих транзакцій — 24–72 години до manual review. Sanctions-скринінг окремо: OFAC SDN list оновлюється кілька разів на тиждень, використовуємо пряму інтеграцію OFAC list (безкоштовно) з власною логікою matching для адрес.
Послуги блокчейн комплаєнсу: як ми реалізуємо підтримку MiCA
MiCA (Regulation (EU) 2023/1114) — чинний регламент, докладніше див. Wikipedia: Markets in Crypto-Assets Regulation. Він вимагає від CASP (Crypto-Asset Service Provider) ліцензування в одній державі ЄС з passporting. Технічні вимоги, що впливають на розробку:
White paper обов’язковий для емітентів ART (Asset-Referenced Tokens) та EMT (E-Money Tokens) — не маркетинговий документ, а юридично зобов’язуючий проспект з технічним описом, правами власників, механізмами redemption.
Custody requirements: клієнтські активи окремо від операційних. Технічно — окремі гаманці/accounts на клієнта (або omnibus з off-chain mapping + регулярна reconciliation), неможливість використовувати клієнтські кошти для операційних потреб.
Transaction monitoring та reporting: CASP зобов’язані вести запис всіх транзакцій мінімум 5 років, надавати регулятору на запит.
Travel Rule в MiCA: поріг €0 для VASP-to-VASP переказів — не €1,000, як у FATF. Реалізація вимагає Travel Rule endpoint, що працює 24/7.
| Тип організації |
Ключові вимоги MiCA |
Технічний вплив |
| Емітент ART/EMT |
White paper, redemption mechanism, reserve audit |
Smart contract з redemption функцією, oracle для reserve proof |
| CASP (біржа, кастодіан) |
Ліцензія, custody segregation, Travel Rule |
Окремі wallet per client, TRISA/TRUST integration |
| DeFi протокол (без issuer) |
Поки поза scope MiCA (огляд у перспективі) |
Спостерігаємо, готуємо архітектуру |
Як MiCA змінює архітектуру DeFi?
Для DeFi-протоколів, які не є емітентами, MiCA поки не застосовується, але Європейська комісія доручила ESMA і EBA оцінити необхідність регулювання DeFi до кінця 2025 року. Ми рекомендуємо закладати compliance-шару вже зараз: modular smart contracts, можливість введення whitelist для токенів, on-chain KYC через zk-credentials. Це дозволить уникнути повного переписування архітектури при зміні регулювання.
Процес впровадження compliance інфраструктури
Compliance архітектура не додається поверх готового продукту без болю. Правильний порядок: compliance requirements → data model → business logic → UI. Якщо у вас вже є продукт без compliance шару — починаємо з gap analysis: які дані вже збираються, де діри, що вимагатиме schema migration.
Gap analysis — аудит поточної архітектури та data flow (1–2 тижні). Ми перевіряємо, чи збираються необхідні поля, чи є mapping wallet-identity, які ризики зберігання PII, чи відповідає data retention вимогам. На основі цього будується план змін.
Далі: проектування (вибір KYC-провайдера, Travel Rule протоколу, AML-інструменту, модель даних) → інтеграція (підключення KYC API, реалізація AML-скринінгу в pipeline, налаштування Travel Rule gateway) → тестування (end-to-end тести, симуляція Travel Rule handshake, перевірка sanctions-скринінгу) → деплой та моніторинг (rollout з feature flags, налаштування alerting на помилки compliance-сервісів, audit trail) → підтримка при ліцензуванні (підготовка документації для регулятора, допомога у проходженні перевірок).
Що ми здаємо: deliverables
- Документація compliance-архітектури (data flow, ER-діаграми, API-специфікації).
- Інтеграція KYC/AML/Travel Rule API з вашим бекендом.
- Налаштування моніторингу та alerting для compliance-сервісів.
- Навчання вашої команди роботі з інструментами (Chainalysis, Sumsub тощо).
- Підтримка при проходженні ліцензування (MiCA, FATF).
У 98% наших клієнтів перевірки регуляторів проходять з першої спроби. Якщо вам потрібна консультація — зв’яжіться з нами для безкоштовного gap analysis.
Орієнтири за термінами
- KYC/AML інтеграція з Sumsub або Jumio — від 3 до 6 тижнів.
- Travel Rule (TRISA або Sygna) — від 6 до 10 тижнів.
- Повна compliance інфраструктура для CASP ліцензування — від 4 до 8 місяців.
- On-chain compliance через VC/SBT з ZK (MiCA-ready) — від 5 до 9 місяців.
Scope уточнюється після gap analysis. Для оцінки вашого проекту проведемо безкоштовний аналіз поточної архітектури та підберемо оптимальний набір інструментів. Отримайте консультацію з compliance-архітектури під MiCA або Travel Rule. Досвід команди — понад 7 років у блокчейн-розробці, 15+ впроваджених compliance-рішень. Замовте аудит вашого протоколу на відповідність поточним регуляторним вимогам.