Solana Pay — це стандартний протокол і набір еталонних реалізацій, які дозволяють розробникам інтегрувати децентралізовані платежі у свої додатки та сервіси. Він забезпечує уніфікований підхід до платежів в екосистемі Solana, гарантуючи сумісність між гаманцями, додатками та сервісами.
Огляд протоколу
Solana Pay визначає два основні типи платіжних запитів:
Запити на переказ (неінтерактивні)
Запити на переказ описують прості перекази SOL або SPL-токенів за допомогою URL-параметрів. Гаманець може безпосередньо сформувати та підписати транзакцію без додаткової комунікації з сервером.
solana:recipient?amount=1.5&spl-token=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Варіанти використання:
- Прості платежі та пожертви
- QR-код платежі в точках продажу
- Платіжні посилання в електронних листах або повідомленнях
- Діплінки мобільних додатків
Запити на транзакції (інтерактивні)
Запити на транзакції дозволяють складні взаємодії, коли гаманець спілкується з сервером для формування будь-якої транзакції Solana. Це відкриває розширені можливості, які виходять за межі простих переказів.
solana:https://merchant.com/api/payment
Варіанти використання:
- Мінтинг NFT у точках продажу
- Динамічне ціноутворення та знижки
- Багатоетапні DeFi-транзакції
- Інтеграція програм лояльності
- Власна бізнес-логіка
Основні переваги
Для розробників
- Стандартний протокол: одна реалізація працює з усіма гаманцями Solana
- Незалежність від фреймворку: використовуйте з будь-яким веб-фреймворком або мобільною платформою
- Типобезпечність: повна підтримка TypeScript у JavaScript SDK
- Гнучкість: від простих переказів до складних багатоінструкційних транзакцій
Для користувачів
- Швидко: транзакції підтверджуються менш ніж за секунду
- Дешево: середня вартість $0.0005 за транзакцію
- Безпечно: без посередників або сторонніх процесорів
- Універсально: працює з будь-яким гаманцем Solana
Для продавців
- Без комісій: Прямі платежі без комісій за обробку
- У реальному часі: Миттєве підтвердження та розрахунок
- Глобальні: Приймайте платежі з будь-якої точки світу
- Композитність: Інтеграція з DeFi-протоколами та NFT-маркетплейсами
Технічна архітектура
Схема URL
Solana Pay використовує власну схему URL solana:, яка працює у веб-браузерах
та мобільних операційних системах:
- Веб: URL можна використовувати як посилання або кодувати в QR-коди
- Мобільні пристрої: Інтеграція глибокого посилання з додатками гаманців
- Десктоп: Обробники протоколів для безперешкодного запуску гаманця
JavaScript SDK
SDK @solana/pay (побудований на @solana/kit) надає:
- Фабрики клієнтів:
createMerchantClient,createWalletClient,createSolanaPayClientдля композитних платіжних потоків - Кодування/розбір URL:
encodeURL,parseURLдля URL Solana Pay - Створення переказів:
createTransferдля інструкцій платежу SOL та SPL-токенів - Валідація платежів:
findReference,validateTransfer,watchReferenceдля виявлення та перевірки платежів - QR-коди: Вбудований
createQRдля генерації скануємих платіжних кодів - Плагіни Kit:
solanaPayMerchant(),solanaPayWallet()для композиції з іншими плагінами@solana/kit
Інтеграція гаманця
Підтримувані гаманці реалізують:
- Обробку та розбір схеми URL
- Композицію та валідацію транзакцій
- Потоки підтвердження користувача
- Трансляцію та моніторинг транзакцій
Приклади платіжних потоків
Веб-додаток до мобільного гаманця
- Веб-додаток генерує QR-код з URL Solana Pay
- Користувач сканує QR-код додатком гаманця
- Гаманець розбирає URL і показує деталі платежу
- Користувач підтверджує платіж у гаманці
- Гаманець підписує та транслює транзакцію
- Веб-додаток виявляє підтвердження платежу
Веб-додаток до браузерного гаманця
- Веб-додаток показує кнопку «Оплатити через Solana»
- Користувач натискає кнопку для запуску гаманця
- Розширення гаманця показує підтвердження платежу
- Користувач схвалює транзакцію
- Транзакція підписується та відправляється
- Веб-додаток отримує підтвердження платежу
З мобільного додатка до мобільного гаманця
- Мобільний додаток створює deep link для платежу
- Deep link відкриває додаток гаманця
- Гаманець показує підтвердження платежу
- Користувач підтверджує або відхиляє платіж
- Гаманець повертається до початкового додатка
- Додаток отримує результат платежу
Міркування щодо безпеки
Для торговців
- Перевіряйте транзакції: Завжди підтверджуйте деталі транзакцій у блокчейні
- Використовуйте посилання: Включайте унікальні ключі посилань для ідентифікації платежів
- Валідація на стороні сервера: Розраховуйте суми та перевіряйте платежі на стороні сервера
- Обмеження частоти запитів: Впроваджуйте відповідні обмеження частоти запитів на кінцеві точки платежів
Для розробників гаманців
- Валідація URL: Перевіряйте та санітизуйте всі компоненти URL
- Підтвердження користувача: Завжди показуйте чіткі деталі платежу користувачам
- Валідація транзакції: Перевіряйте вміст транзакції перед підписанням
- Тільки HTTPS: Дозволяйте лише HTTPS URL для запитів транзакцій
Шаблони інтеграції
Оформлення замовлення в електронній комерції
- Клієнт додає товари до кошика
- Торговець генерує запит на оплату з деталями замовлення
- Клієнт сканує QR-код або натискає кнопку оплати
- Гаманець показує деталізований чек та загальну суму
- Клієнт підтверджує платіж
- Торговець перевіряє транзакцію та виконує замовлення
Точка продажу
- Касир вводить суму продажу
- POS-система відображає QR-код
- Клієнт сканує мобільним гаманцем
- Платіж обробляється миттєво
- Чек друкується автоматично
Сервіси підписки
- Користувач підписується на сервіс
- Сервіс створює розклад регулярних платежів
- Автоматизована система генерує запити на оплату
- Користувач підтверджує платежі через гаманець
- Сервіс відстежує статус платежів
Найкращі практики
Генерація URL
- Використовуйте HTTPS для всіх кінцевих точок запитів транзакцій
- Включайте описові мітки та повідомлення
- Генеруйте унікальні посилання для відстеження платежів
- Перевіряйте всі параметри перед створенням URL
Обробка транзакцій
- Завжди перевіряйте транзакції на стороні сервера
- Використовуйте відповідну кількість підтверджень для безпеки
- Реалізуйте належну обробку помилок і повторні спроби
- Логуйте події платежів для звірки
Користувацький досвід
- Надавайте чіткі підтвердження платежів
- Показуйте оновлення статусу транзакцій
- Обробляйте підключення гаманця коректно
- Підтримуйте декілька варіантів гаманців
Наступні кроки
Готові інтегрувати Solana Pay? Почніть із цих посібників:
- Посібник з встановлення - Налаштуйте SDK і інструменти
- Запити на переказ - Створюйте прості URL-адреси платежів
- Запити транзакцій - Будуйте інтерактивні потоки
- Приклади інтеграції - Перегляньте реальні реалізації
Ресурси
- Офіційна специфікація - Повна специфікація протоколу
- Репозиторій GitHub - Вихідний код і приклади
- Рекомендації щодо бренду - Логотипи та брендові активи
Is this page helpful?