Botón de pago

Commerce Kit se encuentra actualmente en beta. Las API pueden cambiar antes del lanzamiento estable. Para más detalles sobre Commerce Kit, consulta la documentación de Commerce Kit.

El componente PaymentButton del Commerce Kit proporciona una interfaz de pago completa que gestiona la conexión de billetera, selección de tokens, procesamiento de transacciones y estado de la interfaz de usuario de forma predeterminada.

Instalación

pnpm add @solana-commerce/kit

Uso básico

import { PaymentButton } from "@solana-commerce/kit";
function Checkout() {
return (
<PaymentButton
config={{
merchant: { name: "My Store", wallet: "your-wallet-address" },
mode: "buyNow"
}}
paymentConfig={{
products: [{ id: "item-1", name: "Coffee", price: 5.0, quantity: 1 }]
}}
onPaymentSuccess={(signature) => {
console.log("Payment confirmed:", signature);
}}
/>
);
}

Consulta el Commerce Kit Playground para configurar y probar el componente.

Botón de propina

Botón de propinaBotón de propina

Modal de pagoModal de pago

Modal de código QR de Solana PayModal de código QR de Solana Pay

Modos de pago

La opción mode determina el comportamiento del botón:

ModoDescripción
buyNowCompra de un solo producto con importe fijo
cartCarrito de compras con múltiples productos
tipEl usuario elige su propio importe (donaciones/propinas)

Configuración

Configuración requerida

PropiedadTipoDescripción
merchant.namestringNombre del negocio mostrado durante el pago
merchant.walletstringDirección de billetera Solana para recibir pagos
mode'buyNow' | 'cart' | 'tip'Tipo de flujo de pago

Configuración opcional

PropiedadTipoDescripción
network'mainnet' | 'devnet'Red de Solana (predeterminado: 'mainnet')
rpcUrlstringEndpoint RPC personalizado
allowedMintsstring[]Restringir tokens aceptados por dirección mint
showQRbooleanHabilitar opción de pago con código QR
themeThemeConfigPersonalización visual (colores, radio de borde, etc.)

Configuración de pago

Para los modos buyNow y cart, proporciona productos mediante paymentConfig:

paymentConfig={{
products: [
{ id: '1', name: 'T-Shirt', price: 25, quantity: 2 },
{ id: '2', name: 'Hoodie', price: 45, quantity: 1 }
]
}}

Callbacks de eventos

CallbackParámetrosDescripción
onPaymentSuccess(signature: string)Transacción confirmada en cadena
onPaymentError(error: Error)Pago fallido en cualquier etapa
onPaymentStart()Flujo de pago iniciado
onCancel()Usuario canceló el pago

Activador personalizado

Reemplaza el botón predeterminado con tu propio elemento:

<PaymentButton
config={{
merchant: { name: "Shop", wallet: "address" },
mode: "buyNow"
}}
paymentConfig={{
products: [{ id: "1", name: "Product", price: 10, quantity: 1 }]
}}
>
<button className="my-custom-button">Pay with Solana</button>
</PaymentButton>

Is this page helpful?

Tabla de Contenidos

Editar Página

Gestionado por

© 2026 Fundación Solana.
Todos los derechos reservados.
Conéctate