Платёжная кнопка

Commerce Kit сейчас находится в бета-версии. API могут измениться до стабильного релиза. Дополнительную информацию о Commerce Kit смотрите в документации Commerce Kit.

Компонент PaymentButton из Commerce Kit предоставляет полноценный платёжный интерфейс — подключение кошелька, выбор токена, обработка транзакций и управление состоянием UI из коробки.

Установка

pnpm add @solana-commerce/kit

Базовое использование

import { PaymentButton } from "@solana-commerce/kit";
function Checkout() {
return (
<PaymentButton
config={{
merchant: { name: "My Store", wallet: "your-wallet-address" },
mode: "tip"
}}
onPaymentSuccess={(signature) => {
console.log("Payment confirmed:", signature);
}}
/>
);
}

Ознакомьтесь с песочницей Commerce Kit, чтобы настроить и протестировать компонент.

Кнопка чаевых

Кнопка чаевыхКнопка чаевых

Модальное окно оплаты

Модальное окно оплатыМодальное окно оплаты

Модальное окно с QR-кодом Solana Pay

Модальное окно с QR-кодом Solana PayМодальное окно с QR-кодом Solana Pay

Режимы оплаты

Опция mode определяет поведение кнопки:

РежимОписание
tipПользователь сам выбирает сумму (донаты/чаевые)

Конфигурация

Обязательные параметры

СвойствоТипОписание
merchant.namestringНазвание бизнеса, отображаемое при оплате
merchant.walletstringАдрес Solana-кошелька для получения платежей
mode'tip'`Тип платёжного сценария

Необязательные параметры

СвойствоТипОписание
network'mainnet' | 'devnet'Сеть Solana (по умолчанию: 'mainnet')
rpcUrlstringПользовательский RPC-эндпоинт
allowedMintsstring[]Ограничить принимаемые токены по mint-адресу
showQRbooleanВключить оплату через QR-код
themeThemeConfigВизуальная настройка (цвета, скругление углов и др.)

Обратные вызовы событий

CallbackПараметрыОписание
onPaymentSuccess(signature: string)Транзакция подтверждена в блокчейне
onPaymentError(error: Error)Платёж не прошёл на любом этапе
onPaymentStart()Запущен процесс оплаты
onCancel()Пользователь отменил платёж

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

Замените стандартную кнопку своим элементом:

<PaymentButton
config={{
merchant: { name: "Shop", wallet: "address" },
mode: "tip"
}}
>
<button className="my-custom-button">Pay with Solana</button>
</PaymentButton>

Is this page helpful?

Управляется

© 2026 Фонд Solana.
Все права защищены.
Подключиться