SHiNE-server/TODO/near/2026-05-25_1106_wallet_topup_solana_arweave.md
2026-06-28 09:30:59 +04:00

5.6 KiB
Raw Permalink Blame History

Пополнение Solana и Arweave через внешний сервис покупки

  • Горизонт: near
  • Ориентир: сегодня/завтра
  • Статус: proposal

Кратко

Нужно добавить удобное пополнение кошельков на экране регистрации/кошелька: для Solana и Arweave дать отдельные действия Пополнить, которые ведут на международный сервис покупки криптовалюты с карты и помогают пользователю скопировать адрес кошелька.

Пользовательский сценарий

  1. Пользователь видит адрес кошелька Solana или Arweave.
  2. Нажимает Пополнить.
  3. Открывается промежуточное окно с инструкцией:
    • сейчас пользователь перейдёт на страницу покупки/пополнения;
    • нужно указать или проверить адрес кошелька;
    • после оплаты нужно закрыть внешнюю страницу и вернуться назад;
    • Solana обычно приходит быстро, ориентир 10-15 секунд после подтверждения сети;
    • Arweave может идти дольше, точное время нужно уточнить по выбранному сервису.
  4. В окне есть кнопки:
    • Скопировать адрес и перейти;
    • Перейти без копирования.
  5. Для Solana и Arweave используются разные окна/инструкции и, возможно, разные внешние ссылки.

Что нужно сделать

  1. Найти текущий экран, где показываются кошельки при регистрации и пополнении.
  2. Найти текущую ссылку покупки Arweave, если она уже есть в UI.
  3. Выбрать международный сервис покупки Solana с карты, не российский.
  4. Проверить, поддерживает ли сервис deep link с предзаполненным адресом кошелька.
  5. Если deep link невозможен, реализовать промежуточное окно с копированием адреса.
  6. Добавить отдельные действия для Solana и Arweave.
  7. Сделать текст инструкции коротким и понятным.
  8. Проверить, что адрес копируется в буфер обмена в браузере.
  9. Проверить мобильный сценарий и desktop-сценарий.

Вопросы перед реализацией

  1. Какой сервис покупки Solana использовать: тот же провайдер, что для Arweave, или другой международный on-ramp.
  2. Нужно ли разрешать покупку только SOL или также USDC/SPL-токены на Solana.
  3. Где именно показывать кнопку Пополнить: только регистрация, настройки кошелька или оба места.
  4. Нужно ли показывать предупреждение о комиссиях и стороннем сервисе.
  5. Нужно ли открывать внешнюю страницу в новой вкладке или в текущем окне.
  6. Нужно ли логировать факт нажатия Пополнить на сервере.
  7. Какой точный текст использовать для времени прихода Arweave.

Риски и ограничения

  • On-ramp-сервисы меняют ссылки и параметры, поэтому deep link нужно проверять перед реализацией.
  • Clipboard API может требовать HTTPS и пользовательский жест.
  • Нельзя обещать точное время поступления средств: лучше писать ориентир и зависимость от сети/провайдера.
  • Внешний сервис может быть недоступен в отдельных странах или для отдельных карт.

Документы, которые обновить при реализации

  • Документацию UI/кошельков, если такая есть.
  • Dev_Docs/Pending_Features/ - добавить файл ручной проверки после реализации.
  • Dev_Docs/API/, только если появится новый серверный API или логирование.

Минимальная проверка

  1. На Solana-кошельке открывается правильное окно пополнения.
  2. Кнопка Скопировать адрес и перейти копирует Solana-адрес и открывает внешний сервис.
  3. Кнопка Перейти без копирования открывает внешний сервис без копирования.
  4. Аналогичный сценарий работает для Arweave.
  5. На мобильном экране текст и кнопки не перекрываются.
  6. Возврат назад в приложение не ломает состояние регистрации/кошелька.