Bouton de paiement

Le Commerce Kit est actuellement en version bêta. Les API peuvent changer avant la version stable. Pour plus de détails sur Commerce Kit, consultez la documentation Commerce Kit.

Le composant PaymentButton du Commerce Kit fournit une interface de paiement complète — gérant la connexion au portefeuille, la sélection de jetons, le traitement des transactions et l'état de l'interface utilisateur prêts à l'emploi.

Installation

pnpm add @solana-commerce/kit

Utilisation de base

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);
}}
/>
);
}

Consultez le Commerce Kit Playground pour configurer et tester le composant.

Bouton de pourboire

Bouton de pourboireBouton de pourboire

Fenêtre de paiement

Fenêtre de paiementFenêtre de paiement

Fenêtre QR code Solana Pay

Fenêtre QR code Solana PayFenêtre QR code Solana Pay

Modes de paiement

L'option mode détermine le comportement du bouton :

ModeDescription
buyNowAchat d'un seul produit avec montant fixe
cartPanier d'achat avec plusieurs produits
tipL'utilisateur choisit son propre montant (dons/pourboires)

Configuration

Configuration requise

PropriétéTypeDescription
merchant.namestringNom de l'entreprise affiché lors du paiement
merchant.walletstringAdresse du portefeuille Solana pour recevoir les paiements
mode'buyNow' | 'cart' | 'tip'Type de flux de paiement

Configuration optionnelle

PropriétéTypeDescription
network'mainnet' | 'devnet'Réseau Solana (par défaut : 'mainnet')
rpcUrlstringPoint de terminaison RPC personnalisé
allowedMintsstring[]Restreindre les jetons acceptés par adresse mint
showQRbooleanActiver l'option de paiement par QR code
themeThemeConfigPersonnalisation visuelle (couleurs, rayon de bordure, etc.)

Configuration de paiement

Pour les modes buyNow et cart, fournissez les produits via paymentConfig :

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

Callbacks d'événements

CallbackParamètresDescription
onPaymentSuccess(signature: string)Transaction confirmée on-chain
onPaymentError(error: Error)Échec du paiement à n'importe quelle étape
onPaymentStart()Flux de paiement initié
onCancel()L'utilisateur a annulé le paiement

Déclencheur personnalisé

Remplacez le bouton par défaut par votre propre élément :

<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?

Table des matières

Modifier la page

Géré par

© 2026 Fondation Solana.
Tous droits réservés.
Restez connecté