Интеграция с Transak

Проектируем и разрабатываем блокчейн-решения полного цикла: от архитектуры смарт-контрактов до запуска DeFi-протоколов, NFT-маркетплейсов и криптобирж. Аудит безопасности, токеномика, интеграция с существующей инфраструктурой.
Показано 1 из 1 услугВсе 1306 услуг
Интеграция с Transak
Простая
от 1 рабочего дня до 3 рабочих дней
Часто задаваемые вопросы
Направления блокчейн-разработки
Этапы блокчейн-разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1221
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1163
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    855
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1062
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    561
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    828

Интеграция с Transak

Transak — on/off-ramp инфраструктура с акцентом на Web3 и DeFi-интеграции. Поддерживает 160+ стран, 130+ криптовалют включая токены на нестандартных сетях (Polygon, Arbitrum, Optimism, Avalanche), что делает его популярным выбором для DeFi-приложений и NFT-маркетплейсов.

SDK интеграция

import Transak from '@transak/transak-sdk';

const transak = new Transak({
  apiKey: process.env.TRANSAK_API_KEY,
  environment: 'PRODUCTION', // или 'STAGING'
  defaultCryptoCurrency: 'MATIC',
  network: 'polygon',
  walletAddress: userWalletAddress,
  disableWalletAddressForm: true, // запрещаем изменение адреса
  fiatCurrency: 'USD',
  fiatAmount: 50,
  email: user.email,
  partnerCustomerId: user.id.toString(),
  // Кастомизация UI
  themeColor: '0066FF',
  hideMenu: true,
  isFeeCalculationHidden: false,
});

transak.init();

// События
Transak.on(Transak.EVENTS.TRANSAK_ORDER_CREATED, (orderData) => {
  console.log('Order created:', orderData);
});

Transak.on(Transak.EVENTS.TRANSAK_ORDER_SUCCESSFUL, (orderData) => {
  // Транзакция успешно завершена
  handleSuccessfulPurchase(orderData);
  transak.close();
});

Transak.on(Transak.EVENTS.TRANSAK_WIDGET_CLOSE, () => {
  transak.close();
});

Server-side API

Для более глубокой интеграции используем прямой API:

import httpx

class TransakClient:
    BASE_URL = "https://api.transak.com/api/v2"

    def __init__(self, api_key: str, api_secret: str):
        self.api_key = api_key
        self.api_secret = api_secret
        self.session = httpx.AsyncClient()

    async def get_order_status(self, order_id: str) -> dict:
        resp = await self.session.get(
            f"{self.BASE_URL}/partners/order/{order_id}",
            headers={"api-secret": self.api_secret}
        )
        resp.raise_for_status()
        return resp.json()["data"]

    async def get_available_currencies(self, fiat: str = "USD") -> list:
        resp = await self.session.get(
            f"{self.BASE_URL}/currencies",
            params={"apiKey": self.api_key, "fiatCurrency": fiat}
        )
        return resp.json()["response"]

Webhook обработка

import hmac, hashlib, json

def verify_transak_webhook(payload: bytes, signature: str, secret: str) -> bool:
    expected = hmac.new(secret.encode(), payload, hashlib.sha256).hexdigest()
    return hmac.compare_digest(expected, signature)

@app.post("/webhooks/transak")
async def handle_transak_webhook(request: Request):
    body = await request.body()
    sig = request.headers.get("X-Transak-Signature", "")

    if not verify_transak_webhook(body, sig, TRANSAK_WEBHOOK_SECRET):
        raise HTTPException(403)

    event = json.loads(body)
    order = event["data"]

    if order["status"] == "COMPLETED":
        await credit_user(
            user_id=order["partnerCustomerId"],
            crypto_amount=order["cryptoAmount"],
            currency=order["cryptoCurrency"],
            tx_hash=order["transactionHash"]
        )

Особенности Transak: поддержка local payment methods (UPI в Индии, PIX в Бразилии, IMPS/NEFT), встроенный KYC flow с biometric verification, поддержка ERC-20 токенов по кастомным контрактным адресам. Комиссии: 0.99–5.5% в зависимости от метода оплаты и региона. Для Web3-проектов с фокусом на L2 сети — один из лучших вариантов из-за широкой поддержки EVM-совместимых сетей.