Реализация покупки криптовалюты за фиат (On-Ramp) в мобильном приложении

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.
Разработка и поддержка любых видов мобильных приложений:
Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Предлагаемые услуги
Показано 1 из 1 услугВсе 1735 услуг
Реализация покупки криптовалюты за фиат (On-Ramp) в мобильном приложении
Средняя
~5 рабочих дней
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    760
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    640
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1056
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    878
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    449

Реализация покупки криптовалюты за фиат (On-Ramp) в мобильном приложении

On-ramp — точка входа фиатных денег в криптоэкосистему. Пользователь платит картой или банковским переводом, получает криптовалюту на кошелёк. Мобильное приложение не обрабатывает платёж напрямую — это задача лицензированного провайдера. Задача разработчика — корректно встроить виджет или API.

Два подхода: виджет vs API

Виджет-подход — провайдер предоставляет WebView или нативный SDK. Минимальная интеграция: передать адрес кошелька, валюту, опционально сумму. Провайдер сам обрабатывает KYC и платёж.

API-подход — полный контроль над UI, но требует партнёрского соглашения и прохождения compliance-ревью со стороны провайдера. Не всем доступно.

Для большинства кошельков — виджет с deeplink или WebView. MoonPay, Transak, Mercuryo предоставляют оба варианта.

Выбор провайдера: ключевые параметры

Провайдер Комиссия Методы оплаты KYC порог Охват
MoonPay 1–4.5% Карта, банк, Apple Pay $150/мес без KYC 160+ стран
Transak 0.5–1% Карта, банк Зависит от страны 130+ стран
Mercuryo 1.5–3.9% Карта $100/мес без KYC 100+ стран
Ramp Network 0.49–2.9% Карта, банк $250 без KYC 150+ стран

Охват и доступные методы оплаты в конкретной стране проверять через API провайдера, а не по документации — данные меняются.

Интеграция через WebView

Базовый флоу: сформировать URL с параметрами, открыть в SFSafariViewController (iOS) или CustomTabsIntent (Android). Не используй WKWebView / WebView для платёжных форм — они не дают полного доступа к cookie и могут конфликтовать с 3DS.

// iOS — открытие MoonPay через SFSafariViewController
import SafariServices
let baseURL = "https://buy.moonpay.com"
var components = URLComponents(string: baseURL)!
components.queryItems = [
    .init(name: "apiKey", value: moonPayPublicKey),
    .init(name: "walletAddress", value: userWalletAddress),
    .init(name: "currencyCode", value: "eth"),
    .init(name: "colorCode", value: "%23FF6600"),
    .init(name: "language", value: "ru")
]
// Подписать URL на бэкенде через HMAC-SHA256
let safariVC = SFSafariViewController(url: signedURL)
present(safariVC, animated: true)

URL должен быть подписан HMAC-SHA256 на вашем бэкенде с секретным ключом MoonPay — это обязательное требование безопасности, не опциональное.

Deeplink callback и отслеживание статуса

MoonPay поддерживает redirectURL — когда покупка завершена, провайдер редиректит на указанный URL. В мобильном приложении это кастомная URL-схема или Universal Link.

// Android — обработка deeplink по завершению on-ramp
// AndroidManifest.xml: intent-filter с data scheme="myapp" host="onramp-callback"
override fun onNewIntent(intent: Intent) {
    val uri = intent.data ?: return
    if (uri.host == "onramp-callback") {
        val transactionId = uri.getQueryParameter("transactionId")
        val status = uri.getQueryParameter("status") // completed, failed, pending
        handleOnRampResult(transactionId, status)
    }
}

Webhook на бэкенде — более надёжный способ получить финальный статус. Callback в deeplink может не сработать, если пользователь закрыл приложение во время покупки.

Агрегатор on-ramp провайдеров

Если хочется предложить лучший курс из нескольких провайдеров — использовать агрегатор: Onramper (onramper.com/api), Transak One или встроенный виджет Li.Fi. Пользователь видит сравнение курсов и выбирает провайдера. Это повышает конверсию.

Сроки: 5 дней на интеграцию одного провайдера через виджет с deeplink-коллбэком. Агрегатор нескольких провайдеров с UI выбора — 8–10 дней.