Крипто в фіат: проєктування off-ramp шлюзу під ключ

Уявіть: користувач продає USDT, але банк затримує переказ на 2 години, і за цей час курс падає на 3%. Off-ramp шлюз з хеджуванням виключає цей ризик: ми фіксуємо курс за 10–30 секунд після підтвердження транзакції. Це не просто API для виведення криптовалюти у фіат — це зв'язка смарт-контрактів спал

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

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

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

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

Уявіть: користувач продає USDT, але банк затримує переказ на 2 години, і за цей час курс падає на 3%. Off-ramp шлюз з хеджуванням виключає цей ризик: ми фіксуємо курс за 10–30 секунд після підтвердження транзакції. Це не просто API для виведення криптовалюти у фіат — це зв'язка смарт-контрактів спалювання, AML-скринінгу, хеджування та банківської інтеграції. Ми розробляємо такі системи під ключ: від вибору юрисдикції до production-моніторингу. Наш досвід — 5+ років на ринку, 20+ успішних впроваджень для фінтех-проєктів. Гарантія якості та безпеки. Market order на CEX в 100 разів швидший за лімітний ордер при хеджуванні: затримка в 5 секунд при волатильності 2% вже приносить прослизання. Для AML скринінгу використовуємо сертифіковані рішення Chainalysis та Elliptic.

Чому off-ramp складніший, ніж on-ramp?

В on-ramp основний ризик — chargeback: користувач скасовує платіж після отримання крипто. В off-ramp цієї проблеми немає, але з'являються інші складнощі.

Порівняння on-ramp та off-ramp
Аспект On-ramp Off-ramp
Ризик Chargeback AML, FX, банківський комплаєнс
Швидкість Миттєво 10–30 хв до банку
Банківські відносини Простіше Складний підбір партнера
Хеджування Не потрібно Обов'язково

Compliance-ризики

Банки обережні з криптокомпаніями. Багато відмовляють в обслуговуванні VASP. Потрібні партнерські банки з досвідом роботи з криптобізнесом.

AML-складність

Система зобов'язана перевірити походження криптовалюти. Монети з mixer'ів (Tornado Cash та аналоги) або санкційних адрес блокуються. AML-скринінг — обов'язковий компонент.

FX-ризик

Між отриманням крипто та відправкою фіату курс може змінитися. Система повинна негайно хеджувати позицію.

Як хеджувати курсові ризики?

Між підтвердженням транзакції в блокчейні та виконанням банківського переказу проходить від кількох хвилин до кількох годин. За цей час курс BTC може змінитися на 1–3%. Ми використовуємо негайний хедж через market order на CEX одразу після отримання достатньої кількості підтверджень:

async def hedge_position(self, crypto_amount: Decimal, asset: str, order_id: str): """Негайно продаємо отриману крипто на біржі""" exchange = self.get_best_exchange_for_hedging(asset) # Market order для негайного виконання sell_order = await exchange.create_market_sell_order( symbol=f"{asset}/USDT", amount=float(crypto_amount) ) fill_price = sell_order["average"] usdt_received = sell_order["cost"] await self.order_repo.update_hedge( order_id=order_id, hedge_price=fill_price, usdt_received=usdt_received ) return usdt_received 

Альтернатива market order — aggressive limit order з автоматичним переходом у market order через 30 секунд при невиконанні. Це знижує прослизання на 0.1–0.3%.

Порівняння методів хеджування
Метод Час виконання Прослизання Комісія
Market order <1 с 0.1–0.5% 0.1%
Aggressive limit 0–30 с 0–0.3% 0.05%
OTC 1–5 хв 0% 0.2–0.5%

Архітектура off-ramp шлюзу

  • Crypto Receiving Module — моніторинг вхідних транзакцій на deposit адресах. Очікування необхідної кількості підтверджень перед початком обробки.
  • Blockchain Analytics Module — скринінг вхідних монет:
class CryptoScreener: def __init__(self, chainalysis_client: ChainalysisClient): self.client = chainalysis_client async def screen_transaction(self, tx_hash: str, amount: float) -> ScreeningResult: result = await self.client.check_transaction(tx_hash) if result.risk_score >= 8: return ScreeningResult.REJECT elif result.risk_score >= 5: return ScreeningResult.MANUAL_REVIEW else: return ScreeningResult.APPROVE if any(cat in result.categories for cat in ["mixer", "sanctions", "darknet"]): return ScreeningResult.REJECT 
  • Hedging Module — негайний продаж отриманої крипто на CEX для фіксації курсу.
  • Fiat Settlement Module — відправка банківського переказу.

Які банківські методи доступні?

Таблиця банківських методів
Метод Час зарахування Регіон Комісія
SEPA до 1 робочого дня Європа 0.5–2 €
Faster Payments до 2 хвилин (в 10 разів швидше за SEPA) UK 0–0.5 £
ACH 1–3 дні США 0.5–1 $
SWIFT 2–5 днів Міжнародні 5–20 $

Інтеграція з цими методами — через SEPA, Faster Payments, ACH або SWIFT. Ми використовуємо Banking-as-a-Service провайдерів (Modulr, ClearBank, Railsr) або пряме підключення через SWIFT MT103/ISO 20022:

class SEPATransferService: async def initiate_transfer(self, payout: Payout) -> str: payload = { "amount": str(payout.fiat_amount), "currency": payout.currency, "creditor_name": payout.recipient_name, "creditor_iban": payout.iban, "creditor_bic": payout.bic, "reference": payout.reference, "end_to_end_id": str(payout.id) } resp = await self.banking_client.post("/payments/sepa", json=payload) if resp.status_code == 201: return resp.json()["transaction_id"] else: raise PaymentError(f"SEPA transfer failed: {resp.text}") 

Замовте консультацію щодо інтеграції з вашим банком — ми підберемо оптимального провайдера.

Процес обробки заявки

  1. Користувач створює заявку на виведення: вказує суму/актив та реквізити.
  2. Система генерує унікальну deposit адресу та показує курс (дійсний 15 хвилин).
  3. Користувач надсилає крипто.
  4. Система виявляє вхідну транзакцію (mempool моніторинг).
  5. Скринінг крипто через Chainalysis/Elliptic.
  6. Після N підтверджень — хедж на біржі.
  7. Відправка банківського переказу.
  8. Повідомлення користувача з transaction reference.

Весь процес від отримання крипто до відправки банківського переказу — 10–30 хвилин. Зарахування на рахунок користувача — залежно від методу.

Ліміти та комплаєнс

Off-ramp система зобов'язана вести Travel Rule записи для транзакцій > $1000/€1000 (FATF Recommendation 16). Для кожного переказу — ідентифікація відправника та отримувача з передачею даних через IVMS101 стандарт при використанні сумісних VASP. Travel Rule — вимога FATF до VASP передавати інформацію про відправника та отримувача при переказах > $1000. Порушення загрожує блокуванням банківського партнера.

Поріг Вимога
< €1,000 Базова KYC (ім'я, email)
€1,000 – €10,000 Повна KYC (документ + selfie)
> €10,000 EDD (Enhanced Due Diligence)
> €10,000 на день Автоматичний SAR-репорт у FIU

Що входить у розробку off-ramp шлюзу

  • Документація: архітектурна схема, специфікація API, опис бізнес-логіки.
  • Смарт-контракти: контракт спалювання токенів, управління deposit адресами.
  • Бекенд: сервіс скринінгу, хеджування, банківської інтеграції, адмін-панель.
  • Інтеграція з CEX: автоматичний продаж крипто, звірка балансів.
  • Комплаєнс: налаштування Travel Rule, інтеграція Chainalysis/Elliptic, генерація SAR-звітів.
  • Тестування: unit-тести, integration-тести, pen-test смарт-контрактів.
  • Деплой та підтримка: розгортання у хмарі (AWS/GCP), моніторинг (Tenderly, Grafana), SLA 24/7.

Моніторинг системи

Критичні алерти: невідправлений переказ > 2 годин після хеджу, транзакція застрягла в блокчейні > 2 годин (low gas fee), помилка банківського API. Кожен крок пайплайну записує статус у PostgreSQL з timestamp — це дозволяє відстежувати SLA та знаходити bottlenecks.

Ми проєктуємо off-ramp шлюзи під ключ: від вибору юрисдикції до запуску в production. Зв'яжіться з нами — оцінимо складність, запропонуємо архітектуру та назвемо терміни. Замовте консультацію для вашого проєкту. Отримайте технічну пропозицію з точними термінами та вартістю.