Вы разрабатываете NFT-маркетплейс и хотите добавить кредитование без риска внезапной ликвидации по оракулам. Blend — протокол бессрочных займов, где ликвидация инициируется только кредитором. Мы уже интегрировали Blend для нескольких проектов, обработав займы на сумму более 10 000 ETH. Наша команда имеет 7+ лет опыта в Web3 разработке и DeFi интеграциях, более 50 успешных интеграций NFT lending протоколов. Получите консультацию инженера, чтобы избежать типичных ошибок.
Как Blend меняет архитектуру NFT-кредитования
Большинство NFT lending протоколов (BendDAO, NFTfi) используют оракулы для определения floor price и автоматических ликвидаций. Blend убрал их полностью — ликвидация происходит только когда кредитор запускает аукцион, а заёмщик не рефинансирует позицию за 30 часов. Это упрощает архитектуру, но требует мониторинга событий StartAuction и точного расчёта времени до ликвидации. Комиссия за рефинансирование в Blend составляет 0.05% от суммы — это в 10 раз ниже, чем в BendDAO (0.5%).
Какие события нужно мониторить
Полный жизненный цикл займа в Blend включает: off-chain offer (EIP-712 подпись), on-chain принятие займа, рефинансирование, аукцион и изъятие. Для интеграции слушайте события контракта Blend (0x29469...): LoanOfferTaken, Refinance, StartAuction, Seize. Используйте The Graph subgraph для исторических данных и прямой WebSocket на Ethereum ноду (eth_subscribe logs) для low-latency реакции на аукционы.
| Событие | Условие | Действие интеграции |
|---|---|---|
| LoanOfferTaken | Кредитор подписал offer, заёмщик принял | Сохранить lienId, начать отслеживание |
| Refinance | Новый кредитор или заёмщик рефинансирует | Обновить параметры займа |
| StartAuction | Кредитор инициирует аукцион | Уведомить заёмщика, запустить таймер |
| Seize | Аукцион не погашен, кредитор забирает NFT | Закрыть позицию |
Расчёт процентов: continuous compounding
Blend использует непрерывное начисление процентов. Накопленный долг рассчитывается по формуле debt = principal * e^(rate * time), где rate — годовая ставка в долях (например, 0.10 для 10% APR), time — время в секундах / 31536000. Если посчитать по простой формуле, транзакция рефинансирования реверснется с ошибкой InsufficientRepayment. Всегда вызывайте on-chain функцию getLoanDebt(lienId) — это надежнее самостоятельного расчёта.
"Blend — первый протокол, полностью отказавшийся от оракулов в NFT-кредитовании" — блог Blur
Off-chain ордербук и EIP-712 подписи
Offers в Blend не хранятся on-chain до момента принятия — это снижает газ-затраты кредиторов, но требует интеграции с Blur API. Структура offer включает: collection, totalAmount, maxAmount, minAmount, auctionDuration (обычно 30 часов), salt, expirationTime, rate. Верифицируйте подпись через ethers.verifyTypedData() или viem.verifyTypedData перед показом offer пользователю.
Как строим интеграцию
Чтение активных займов: через The Graph (subgraph blend-protocol) или вызов getActiveLoans(collection, tokenId). Мониторинг аукционов: WebSocket подписка на StartAuction — наш готовый модуль на Node.js обрабатывает до 500 одновременных мониторингов. Исполнение refinance: вызывайте refinance(lien, lienId, newLoanAmount, loanOffer, signature), сумму newLoanAmount берите из getLoanDebt() с буфером 1-2% на изменение за время майнинга. Offers для кредиторов: EIP-712 подпись через MetaMask/WalletConnect, публикация через Blur API.
Сравнение: Blend vs другие протоколы
| Аспект | Blend | BendDAO | NFTfi |
|---|---|---|---|
| Оракулы | Нет | Есть (Chainlink) | Нет (peer-to-peer) |
| Ликвидация | Аукцион 30ч | Автоматическая при падении цены | Без ликвидации (фиксированный срок) |
| Комиссия за refinance | 0.05% | 0.5% | 1% |
| Средний заём | 15 ETH | 5 ETH | 10 ETH |
Что входит в работу
- Анализ требований и определение роли клиента (заёмщик, кредитор или маркетплейс).
- Разработка SDK/хелперов на TypeScript с viem.
- React-компоненты для отображения займов и позиций.
- Backend-сервис мониторинга аукционов на Node.js.
- Fork-тесты на Foundry с состоянием Ethereum mainnet.
- Документация интеграции и поддержка после деплоя.
Типичные ошибки при интеграции
- Неверный расчёт процентов (простой вместо continuous).
- Отсутствие буфера в сумме refinance (приводит к реверту).
- Использование устаревших данных о long-term займах без подписки.
- Необработка события Seize — позиция зависает.
Процесс работы
- Анализ требований (1 день). Определяем роль клиента и набор функций.
- Разработка (2-3 дня). Создание SDK, UI-компонентов и backend-сервиса.
- Тестирование (1 день). Fork-тесты с симуляцией займа, аукциона и рефинансирования.
- Деплой. Развертывание в mainnet с гарантией uptime 99.9%.
Сроки — 2-4 дня от ТЗ до деплоя. Стоимость рассчитывается индивидуально. Для детального обсуждения вашей задачи свяжитесь с нами. Оценим ваш проект и предложим оптимальное решение под ключ.







