Інтеграція AML-скринінгу (Chainalysis, Elliptic, Crystal) під ключ

Інтеграція AML-скринінгу (Chainalysis, Elliptic, Crystal) під ключ Транзакція користувача блокується без пояснення причин — знайома ситуація? Ми інтегрували Chainalysis, Elliptic та Crystal у десятках проєктів і знаємо, як налаштувати AML-скринінг без хибних спрацьовувань. Наш досвід дозволяє впр

Напрямки блокчейн-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    998
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1267
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1003

Інтеграція 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-скринінгу

Процес роботи над проєктом включає кілька етапів:

  1. Аналіз вимог compliance — вивчаємо юрисдикцію, типи операцій, необхідні звіти.
  2. Підключення API провайдера — реєстрація, отримання ключів, налаштування webhook.
  3. Налаштування risk-логіки — визначаємо пороги для автоматичного блокування, ручного review та пропуску.
  4. Інтеграція з платформою — вбудовуємо виклики AML у процеси депозиту/виведення.
  5. Тестування на історичних даних — проганяємо минулі транзакції для калібрування.
  6. Запуск у 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