Визначення

QR-транзакція — це переказ у мережі Solana, ініційований через сканування QR-коду мобільним гаманцем. Код містить структуровану транзакційну інструкцію (зазвичай у форматі Solana Pay Transfer Request), яку гаманець розкодовує, відображає деталі та підписує після підтвердження користувача.

Як працює

Процес складається з кількох кроків, кожен із яких відбувається на стороні клієнта без посередників:

  1. Генерація. Відправник або торговець формує транзакційний запит із вказаними параметрами: адреса одержувача, сума, токен (SPL-токен або SOL), необов'язкові поля (reference, memo, label).
  2. Кодування. Запит серіалізується у форматі URL і вміщується в QR-код. Розмір коду залежить від кількості параметрів — чим їх більше, тим щільніше розташування модулів і тим точніше має бути сканування.
  3. Сканування. Користувач наводить камеру мобільного гаманця на QR-код. Гаманець розкодовує URL, валідує структуру та витягує транзакційні поля.
  4. Перевірка. Гаманець показує користувачеві зрозумілу форму: кому, скільки, який токен. На цьому етапі користувач має можливість відхилити транзакцію.
  5. Підпис і відправка. Після підтвердження гаманець підписує транзакцію приватним ключем і надсилає її в мережу через RPC-вузол.

Приклад

Кав'ярня інтегрує прийом платежів у SOL. На касі стоїть планшет із QR-кодом, який містить такий запит:

solana:7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU?amount=0.05&label=CoffeeShop&message=Latte

Ви відкриваєте мобільний гаманець, скануєте код, бачите «Оплатити 0,05 SOL — CoffeeShop — Latte», підтверджуєте. Транзакція підписується і відправляється в мережу. Кав'ярня отримує підтвердження за кілька секунд.

Типова помилка

Підтвердження без перевірки полів. Користувач сканує QR-код і одразу натискає «Підписати», не перевіряючи адресу одержувача, суму та токен. Якщо код сформовано некоректно або підмінено, кошти підуть на іншу адресу або в іншому обсязі. Завжди перевіряйте три поля: одержувач, сума, токен — до того, як підтвердите транзакцію.

Пов'язані матеріали

Внутрішні переходи:

  • Solana Pay — протокол, у рамках якого формуються стандартні QR-запити для транзакцій у мережі Solana.
  • Deep link — альтернативний спосіб передати транзакційний запит на мобільний пристрій через гіперпосилання замість QR-коду.