Продукти

QR-коди, deep links і підпис транзакцій: де мобільний UX ламається найчастіше

Мобільний UX у Solana найчастіше ламається на трьох переходах: відкриття гаманця через QR-код, перехід із застосунку в гаманець через deep link і момент підпису транзакції. У кожному з цих місць користувач стикається з н

Опубліковано 09.09.2026Оновлено 11.08.20266 хв читанняРедакція солана.укр
Редакційна ілюстрація до матеріалу про продукти та щоденний досвід Solana
editorial illustrationПродукти
Авторство Редакція солана.укрАктуальність оновлено 11.08.2026Посилання 1 зовнішнє у текстіФормат редакційний матеріал

Теза, від якої відштовхуємося

Мобільний UX у Solana найчастіше ламається на трьох переходах: відкриття гаманця через QR-код, перехід із застосунку в гаманець через deep link і момент підпису транзакції. У кожному з цих місць користувач стикається з невизначеністю — чи відкриється потрібний гаманець, чи передасться транзакція без спотворень, чи підписує саме те, що очікував. Перевірка цих трьох точок дає змогу оцінити, чи можна довіряти мобільному шляху взагалі.

Як перейти від теорії до дії

QR-коди: візуальний міст між екранами

Сценарій: користувач відкриває dApp на десктопі, бачить QR-код і сканує його мобільним гаманцем. Очікування — гаманець отримує інструкцію підписати конкретну транзакцію.

Критерій перевірки: чи містить QR-код повну транзакцію в серіалізованому вигляді, чи лише посилання (URL), яке веде на сторонній сервер. Якщо це посилання, сервер може повернути іншу транзакцію, ніж та, що відображалася на екрані.

Що саме можна перевірити: відкрити QR-код у текстовому редакторі або декодері й подивитися на структуру. Якщо починається з https:// — це посилання, а не транзакція. Якщо містить серіалізовану транзакцію (зазвичай довгий рядок base58), підпис відбувається локально.

Ризик: серверний проміжний ланка може підмінити одержувача, суму або додати непомітну інструкцію. Межа висновку — без аналізу самого рядка неможливо стверджувати, що підміна сталася чи не сталася. Можна лише констатувати наявність або відсутність серверного кроку.

Deep links: програмний міст між застосунками

Сценарій: користувач натискає кнопку у мобільному dApp, і система має відкрити встановлений гаманець із готовою транзакцією. Очікування — миттєвий перехід без проміжних екранів.

Критерій перевірки: чи підтримує гаманець стандартні схеми deep linking (наприклад, solana: або універсальні посилання), чи вимагає власного формату. Якщо dApp генерує посилання у форматі одного гаманця, а в користувача встановлено інший — перехід не спрацює.

Що саме можна перевірити: у налаштуваннях гаманця знайти розділ про deep links або схеми URI. Перевірити, чи є в dApp вибір гаманця або ж він жорстко прив’язаний до одного. Спробувати створити тестову транзакцію й подивитися, чи відкривається гаманець.

Ризик: якщо deep link не спрацьовує, користувач потрапляє в тупик — транзакція не підписана, пояснень немає, альтернативний шлях не запропоновано. Додатковий ризик — якщо кілька гаманців реєструють одну схему URI, система може відкрити не той застосунок.

Підпис транзакцій: момент остаточного рішення

Сценарій: гаманець відкрився, користувач бачить деталі транзакції й натискає «Підписати». Очікування — те, що відображено на екрані, точно відповідає тому, що підписується криптографічно.

Критерій перевірки: чи показує гаманець розбір транзакції на зрозумілі поля (відправник, одержувач, сума, токен, програма) чи відображає лише сирі дані. Чи є можливість переглянути інструкції всередині транзакції, особливо якщо це складна транзакція з кількома кроками.

Що саме можна перевірити: відкрити гаманець, ініціювати підпис і порівняти відображені дані з тим, що очікувалося. Звернути увагу на наявність кнопки «Деталі» або «Розбір транзакції». Перевірити, чи показується назва програми, яку викликає транзакція.

Ризик: якщо гаманець показує лише «Підписати транзакцію» без розбору, користувач не може перевірити зміст. Якщо транзакція містить кілька інструкцій (наприклад, своп і затвердження токена), непомітна інструкція може виконати небажану дію. Межа висновку — без інструменту декомпозиції транзакції користувач покладається на довіру до гаманця.

Точка переходу Що може піти не так Критерій перевірки
QR-код Підміна транзакції на сервері Чи містить QR серіалізовану транзакцію чи посилання
Deep link Гаманець не відкривається або відкривається чужий Чи підтримує гаманець стандартну схему, яку використовує dApp
Підпис Непомітні інструкції в транзакції Чи розбиває гаманець транзакцію на зрозумілі поля

Для кого це практично важливо

Ця перевірка стосується трьох груп.

  • Користувачі, які працюють із Solana переважно з телефону. Для них мобільний шлях — не запасний, а основний. Будь-яка точка обриву означає неможливість завершити дію.
  • Розробники dApp, які проєктують мобільний UX. Вибір між QR, deep link і WalletAdapter визначає, яка частка користувачів зможе пройти шлях до підпису.
  • Люди, які підписують транзакції з незнайомих dApp. Чим менше прозорості на етапі підпису, тим вищий ризик схвалити те, чого не розуміють.

Якщо ви використовуєте Solana лише через десктопний браузер із розширенням гаманця, цей матеріал має опосередковане значення — але може стати актуальним, коли десктопний шлях недоступний.

Що може піти не так

Ризик невідповідності між відображенням і реальністю

Найсерйозніший ризик — розрив між тим, що користувач бачить на екрані dApp, і тим, що потрапляє до гаманця. dApp може показувати «Відправити 10 USDC на адресу X», а в гаманець прийти транзакція з додатковою інструкцією. Без розбору транзакції в гаманці цей розрив непомітний.

Спосіб перевірки: порівняти хеш транзакції, що відображається в dApp, із хешем у гаманці до підпису. Якщо гаманець не показує хеш — це обмеження, яке варто враховувати.

Обмеження екосистеми: відсутність єдиного стандарту

На відміну від традиційних мобільних платежів, де існують усталені протоколи, у Solana мобільний зв’язок між dApp і гаманцем не має одного загальноприйнятого стандарту. Різні гаманці можуть реалізовувати deep links по-різному, а деякі взагалі не підтримують зовнішні виклики.

Межа висновку: неможливо стверджувати, що якийсь підхід працює «скрізь». Можна лише перевірити сумісність конкретної пари dApp і гаманця.

Типова помилка: довіра до QR без декодування

Користувачі часто сканують QR-код як автоматичну дію, припускаючи, що зображення на екрані десктопу безпосередньо перетворюється на транзакцію в телефоні. Якщо між ними стоїть сервер, це припущення хибне.

Типова помилка: ігнорування вибору гаманця в dApp

Якщо dApp пропонує кнопку «Підключити гаманець» без вибору, це означає жорстку прив’язку до одного реалізації. Якщо у вас інший гаманець — шлях обірветься на етапі deep link. Перевірити це можна до початку роботи: подивитися, чи є в dApp список підтримуваних гаманців.

Що варто зробити далі

Перед тим як покладатися на мобільний шлях у конкретній парі dApp і гаманця, перевірте п’ять пунктів.

  1. Тип QR-коду. Декодуйте і подивіться: це транзакція чи посилання. Якщо посилання — розумійте, що серверний крок присутній.
  2. Сумісність deep links. Перевірте, чи підтримує ваш гаманець схему, яку генерує dApp. Спробуйте тестову транзакцію.
  3. Розбір транзакції в гаманці. Подивіться, чи показує гаманець поля транзакції зрозуміло, чи лише кнопку «Підписати».
  4. Наявність непомітних інструкцій. Якщо транзакція складна (більше ніж одна інструкція), перевірте, чи є в гаманці можливість побачити кожну окремо.
  5. Альтернативний шлях. Якщо мобільний шлях не спрацював, чи є в dApp десктопна альтернатива або ручне введення даних транзакції.

Для загального розуміння мобільного середовища Solana варто ознайомитися з матеріалом Mobile Solana: гаманець, застосунки й щоденне використання. Якщо вас цікавить, як екосистема структурує мобільні продукти, це розкрито в статті Навіщо екосистемі окремий каталог мобільних застосунків. Питання ресурсів телефону під час роботи з dApp розглянуто далі — Як Solana-застосунок витрачає батарею, трафік і увагу користувача.

Для розробників, які проєктують мобільний UX, корисний розділ Будувати на Solana: від ідеї до працюючого продукту. Загальні принципи безпеки, що стосуються підпису транзакцій, зібрані на сторінці Безпека Solana: спокійно, конкретно, перевірено. Усі перевірені продукти екосистеми доступні в каталозі Продукти Solana: що працює для людей.

Редакція солана.укр

Джерела для перевірки. Первинні джерела для перевірки цього механізму: документація Solana Mobile про Mobile Wallet Adapter.

джерела в матеріалі

Зовнішні посилання та документація

Нижче — зовнішні URL, які вже використані в тексті. Це не автоматична позначка «перевірено»: редакція показує джерела прозоро й не підміняє фактчек бейджем.