Интеграция с Paraswap
Отметим: когда приложение для свопов теряет транзакции из-за плохого маршрута, страдают и пользователи, и репутация. Мы специализируемся на интеграции DEX-агрегаторов, и Paraswap — один из самых быстрых вариантов. Он охватывает более 20 DEX (Uniswap, Curve, Balancer, Aave, DODO) и работает в 10+ сетях: Ethereum, Polygon, Arbitrum, Optimism, Base. Paraswap находит оптимальный курс среди 300+ токенов со средней комиссией 0.05%. Для приложения, которому нужны свопы, это готовая инфраструктура маршрутизации.
Проблема: почему ручная маршрутизация неэффективна
Реализовать собственный DEX-агрегатор — значит поддерживать десятки интеграций с пулами ликвидности, отслеживать обновления протоколов, оптимизировать газ и бороться с MEV. Каждая новая сеть требует ещё десятки контрактов. Paraswap уже сделал эту работу, и ваше приложение получает один API-эндпоинт, за которым стоит многолетняя оптимизация и надёжная защита от флеш-луков. По нашим оценкам, использование Paraswap сокращает время разработки свопов в 3-4 раза, а бюджет проекта — на 30-50%.
Как Paraswap решает задачу маршрутизации
Paraswap разбивает своп на несколько шагов: он может использовать прямой пул, несколько пулов через промежуточные токены или задействовать flash loans для арбитража. Всё это упаковано в единый API-запрос. Мы гарантируем, что интеграция корректно обрабатывает все edge cases: недостаток ликвидности, проскальзывание, реверты. В 95% случаев найденный маршрут оказывается дешевле прямого обмена на любом из подключённых DEX. Например, при свопе 1000 USDC на WETH средний спред сокращается на 0.3%.
Как устроен Paraswap API
API предоставляет два эндпоинта: /prices для получения котировки и оптимального маршрута, и /transactions для построения транзакции. Котировка действительна 10–30 секунд, транзакция строится в момент исполнения.
| Эндпоинт | Описание | Основные параметры |
|---|---|---|
/prices |
Получение маршрута и котировки | srcToken, destToken, amount, network |
/transactions |
Построение транзакции | priceRoute, userAddress, slippage |
// Шаг 1: получить маршрут const priceRoute = await axios.get( `https://apiv5.paraswap.io/prices/?srcToken=${srcToken}&destToken=${destToken}&amount=${amount}&network=1` ) // Шаг 2: построить транзакцию const txData = await axios.post( 'https://apiv5.paraswap.io/transactions/1', { srcToken, destToken, srcAmount, destAmount, priceRoute: priceRoute.data.priceRoute, userAddress: wallet.address, slippage: 100, // 1% в базисных пунктах } ) Ошибка approve и её решение
Одна из частых ошибок — approve на router контракт Paraswap напрямую. На самом деле разрешение нужно выдавать TokenTransferProxy — отдельному контракту, управляющему переводами. Адрес различается в зависимости от сети. Если approve выдан неправильному адресу, каждый swap будет ревертиться с TRANSFER_FROM_FAILED. Адреса TokenTransferProxy можно получить через эндпоинт https://apiv5.paraswap.io/adapters/contracts?network={chainId}. Мы рекомендуем загружать их динамически при инициализации, а не хардкодить.
Почему стоит рассмотреть Paraswap SDK?
@paraswap/sdk предоставляет типизированный клиент, который абстрагирует управление адресами контрактов и форматирование. Для простых интеграций достаточно прямых HTTP-запросов. SDK добавляет зависимость, но упрощает поддержку. Вот сравнение подходов:
| Критерий | Прямой HTTP | SDK |
|---|---|---|
| Время интеграции | 1-2 дня | 1-2 дня |
| Типизация | Нет | Есть |
| Обновление адресов | Вручную | Автоматически |
| Рекомендация | Простые сценарии | Сложные или мультисетевые |
import { ParaSwap } from '@paraswap/sdk' import { ethers } from 'ethers' const paraswap = new ParaSwap({ chainId: 1, web3Provider: provider }) const priceRoute = await paraswap.getRate({ srcToken: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', // USDC destToken: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', // WETH amount: '1000000000', // 1000 USDC side: SwapSide.SELL, }) Обработка slippage и failed транзакций
Paraswap вычисляет minDestAmount на основе параметра slippage. Если рыночный курс сдвинулся сильнее допустимого, транзакция ревертится с INSUFFICIENT_DEST_AMOUNT — это защита от MEV. В приложении необходима retry-логика: при реверте по slippage — заново запросить котировку и построить транзакцию. При ошибке оценки газа — увеличить лимит на 20% и повторить.
Типичные шаги retry-логики:
- Получить новую котировку.
- Выполнить approve, если требуется.
- Построить транзакцию с увеличенным газлимитом.
- Отправить и дождаться подтверждения.
- Если снова реверт — повторить до 3 раз.
Что входит в работу по интеграции
- Анализ требований и выбор подхода (прямой API или SDK)
- Настройка адресов контрактов TokenTransferProxy для целевых сетей
- Реализация получения котировки и построения транзакции
- Обработка ошибок: slippage, gas estimation, реверты
- UI для выбора slippage и отображения маршрута
- Документация и передача доступов
- Гарантия работоспособности в течение 30 дней
Сроки и стоимость
Базовая интеграция Paraswap (fetch quote + build tx + execute) — 2–3 дня. Полноценная с обработкой ошибок, retry-логикой и адаптивным UI — до 1 недели. Стоимость рассчитывается индивидуально в зависимости от объёма работ и количества поддерживаемых сетей. Закажите интеграцию под ключ — получите готовое решение с гарантией и поддержкой. Если хотите оценить бюджет и сроки для вашего проекта, свяжитесь с нами — мы подберём оптимальный вариант.
Опыт нашей команды — 5+ лет в DeFi, более 20 интеграций DEX-агрегаторов. Paraswap обеспечивает uptime 99.9% и среднюю экономию газа 15% относительно прямого обмена.







