Solana Pay est un protocole standard et un ensemble d'implémentations de référence qui permettent aux développeurs d'intégrer des paiements décentralisés dans leurs applications et services. Il fournit une approche unifiée des paiements au sein de l'écosystème Solana, assurant la compatibilité entre les portefeuilles, applications et services.
Présentation du protocole
Solana Pay définit deux principaux types de demandes de paiement :
Demandes de transfert (non interactives)
Les demandes de transfert décrivent de simples transferts de SOL ou de jetons SPL à l'aide de paramètres d'URL. Le portefeuille peut directement composer et signer la transaction sans communication supplémentaire avec le serveur.
solana:recipient?amount=1.5&spl-token=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Cas d'usage :
- Paiements et dons simples
- Paiements par code QR en point de vente
- Liens de paiement dans les e-mails ou messages
- Liens profonds d'application mobile
Demandes de transaction (interactives)
Les demandes de transaction permettent des interactions complexes en faisant communiquer le portefeuille avec un serveur pour composer n'importe quelle transaction Solana. Cela déverrouille des cas d'usage avancés au-delà des simples transferts.
solana:https://merchant.com/api/payment
Cas d'usage :
- Frappe de NFT en point de vente
- Tarification dynamique et remises
- Transactions DeFi en plusieurs étapes
- Intégration de programme de fidélité
- Logique métier personnalisée
Avantages clés
Pour les développeurs
- Protocole standard : Une implémentation fonctionne avec tous les portefeuilles Solana
- Indépendant du framework : Utilisable avec n'importe quel framework web ou plateforme mobile
- Sécurité des types : Support complet de TypeScript dans le SDK JavaScript
- Flexible : Des transferts simples aux transactions complexes à instructions multiples
Pour les utilisateurs
- Rapide : Les transactions se confirment en moins d'une seconde
- Économique : Coût moyen de 0,0005 $ par transaction
- Sécurisé : Aucun intermédiaire ni processeur tiers
- Universel : Fonctionne avec n'importe quel portefeuille Solana
Pour les commerçants
- Sans frais : Paiements directs sans frais de traitement
- Temps réel : Règlement et confirmation instantanés
- Mondial : Acceptez les paiements du monde entier
- Composable : Intégration avec les protocoles DeFi et les places de marché NFT
Architecture technique
Schéma d'URL
Solana Pay utilise un schéma d'URL personnalisé solana: qui fonctionne sur les
navigateurs web et les systèmes d'exploitation mobiles :
- Web : Les URL peuvent être utilisées comme liens ou encodées dans des codes QR
- Mobile : Intégration par liens profonds avec les applications de portefeuille
- Bureau : Gestionnaires de protocole pour un lancement transparent du portefeuille
SDK JavaScript
Le SDK @solana/pay (basé sur @solana/kit) fournit :
- Fabriques de clients :
createMerchantClient,createWalletClient,createSolanaPayClientpour des flux de paiement composables - Encodage/analyse d'URL :
encodeURL,parseURLpour les URL Solana Pay - Création de transferts :
createTransferpour les instructions de paiement en SOL et jetons SPL - Validation de paiement :
findReference,validateTransfer,watchReferencepour détecter et vérifier les paiements - Codes QR :
createQRintégré pour générer des codes de paiement scannables - Plugins Kit :
solanaPayMerchant(),solanaPayWallet()pour composer avec d'autres plugins@solana/kit
Intégration de portefeuille
Les portefeuilles compatibles implémentent :
- Gestion et analyse du schéma d'URL
- Composition et validation de transaction
- Flux de confirmation utilisateur
- Diffusion et surveillance de transaction
Exemples de flux de paiement
Application web vers portefeuille mobile
- L'application web génère un code QR avec l'URL Solana Pay
- L'utilisateur scanne le code QR avec l'application de portefeuille
- Le portefeuille analyse l'URL et affiche les détails du paiement
- L'utilisateur confirme le paiement dans le portefeuille
- Le portefeuille signe et diffuse la transaction
- L'application web détecte la confirmation du paiement
Application web vers portefeuille navigateur
- L'application web affiche un bouton « Payer avec Solana »
- L'utilisateur clique sur le bouton pour lancer le portefeuille
- L'extension de portefeuille affiche la confirmation de paiement
- L'utilisateur approuve la transaction
- La transaction est signée et envoyée
- L'application web reçoit la confirmation de paiement
Application mobile vers portefeuille mobile
- L'application mobile crée un lien profond de paiement
- Le lien profond lance l'application de portefeuille
- Le portefeuille affiche la confirmation de paiement
- L'utilisateur approuve ou rejette le paiement
- Le portefeuille retourne à l'application d'origine
- L'application reçoit le résultat du paiement
Considérations de sécurité
Pour les commerçants
- Valider les transactions : Vérifiez toujours les détails des transactions sur la blockchain
- Utiliser des références : Incluez des clés de référence uniques pour identifier les paiements
- Validation côté serveur : Calculez les montants et validez les paiements côté serveur
- Limitation du débit : Implémentez des limites de débit appropriées sur les points de terminaison de paiement
Pour les développeurs de portefeuilles
- Validation d'URL : Validez et nettoyez tous les composants d'URL
- Confirmation utilisateur : Affichez toujours des détails de paiement clairs aux utilisateurs
- Validation de transaction : Vérifiez le contenu des transactions avant la signature
- HTTPS uniquement : N'autorisez que les URL HTTPS pour les demandes de transaction
Modèles d'intégration
Paiement e-commerce
- Le client ajoute des articles au panier
- Le commerçant génère une demande de paiement avec les détails de la commande
- Le client scanne le code QR ou clique sur le bouton de paiement
- Le portefeuille affiche le reçu détaillé et le total
- Le client confirme le paiement
- Le commerçant valide la transaction et traite la commande
Point de vente
- Le caissier saisit le montant de la vente
- Le système de point de vente affiche le code QR
- Le client scanne avec son portefeuille mobile
- Le paiement est traité instantanément
- Le reçu est imprimé automatiquement
Services par abonnement
- L'utilisateur s'abonne au service
- Le service crée un calendrier de paiements récurrents
- Le système automatisé génère des demandes de paiement
- L'utilisateur approuve les paiements via le portefeuille
- Le service suit l'état des paiements
Bonnes pratiques
Génération d'URL
- Utilisez HTTPS pour tous les points de terminaison de demande de transaction
- Incluez des étiquettes et messages descriptifs
- Générez des références uniques pour le suivi des paiements
- Validez tous les paramètres avant la création d'URL
Gestion des transactions
- Toujours valider les transactions côté serveur
- Utiliser un nombre approprié de confirmations pour la sécurité
- Implémenter une gestion d'erreurs et des tentatives de relance appropriées
- Enregistrer les événements de paiement pour la réconciliation
Expérience utilisateur
- Fournir des confirmations de paiement claires
- Afficher les mises à jour du statut des transactions
- Gérer la connexion au portefeuille avec élégance
- Prendre en charge plusieurs options de portefeuille
Prochaines étapes
Prêt à intégrer Solana Pay ? Commencez par ces guides :
- Guide d'installation - Configurez le SDK et les outils
- Demandes de transfert - Créez des URL de paiement simples
- Demandes de transaction - Créez des flux interactifs
- Exemples d'intégration - Découvrez des implémentations concrètes
Ressources
- Spécification officielle - Spécification complète du protocole
- Dépôt GitHub - Code source et exemples
- Directives de marque - Logos et éléments graphiques de la marque
Is this page helpful?