Solana Pay ist ein Standardprotokoll und eine Reihe von Referenzimplementierungen, die es Entwicklern ermöglichen, dezentrale Zahlungen in ihre Apps und Dienste zu integrieren. Es bietet einen einheitlichen Ansatz für Zahlungen im gesamten Solana-Ökosystem und gewährleistet die Kompatibilität zwischen Wallets, Apps und Diensten.
Protokollüberblick
Solana Pay definiert zwei Haupttypen von Zahlungsanforderungen:
Überweisungsanforderungen (Nicht-interaktiv)
Überweisungsanforderungen beschreiben einfache SOL- oder SPL-Token-Überweisungen mithilfe von URL-Parametern. Das Wallet kann die Transaktion direkt zusammenstellen und signieren, ohne zusätzliche Serverkommunikation.
solana:recipient?amount=1.5&spl-token=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Anwendungsfälle:
- Einfache Zahlungen und Spenden
- QR-Code-Zahlungen am Point of Sale
- Zahlungslinks in E-Mails oder Nachrichten
- Mobile-App-Deep-Linking
Transaktionsanforderungen (Interaktiv)
Transaktionsanforderungen ermöglichen komplexe Interaktionen, indem das Wallet mit einem Server kommuniziert, um beliebige Solana-Transaktionen zusammenzustellen. Dies eröffnet fortgeschrittene Anwendungsfälle, die über einfache Überweisungen hinausgehen.
solana:https://merchant.com/api/payment
Anwendungsfälle:
- NFT-Prägung am Point of Sale
- Dynamische Preisgestaltung und Rabatte
- Mehrstufige DeFi-Transaktionen
- Integration von Treueprogrammen
- Individuelle Geschäftslogik
Hauptvorteile
Für Entwickler
- Standardprotokoll: Eine Implementierung funktioniert mit allen Solana-Wallets
- Framework-agnostisch: Verwendbar mit jedem Web-Framework oder jeder mobilen Plattform
- Typsicherheit: Vollständige TypeScript-Unterstützung im JavaScript SDK
- Flexibel: Von einfachen Überweisungen bis zu komplexen Multi-Instruktions-Transaktionen
Für Nutzer
- Schnell: Transaktionen werden in unter einer Sekunde bestätigt
- Günstig: Durchschnittliche Kosten von 0,0005 $ pro Transaktion
- Sicher: Keine Vermittler oder Drittanbieter-Zahlungsabwickler
- Universell: Funktioniert mit jedem Solana-Wallet
Für Händler
- Keine Gebühren: Direkte Zahlungen ohne Bearbeitungsgebühren
- Echtzeit: Sofortige Abwicklung und Bestätigung
- Global: Zahlungen von überall auf der Welt akzeptieren
- Kombinierbar: Integration mit DeFi-Protokollen und NFT-Marktplätzen
Technische Architektur
URL-Schema
Solana Pay verwendet ein benutzerdefiniertes URL-Schema solana:, das über
Webbrowser und mobile Betriebssysteme hinweg funktioniert:
- Web: URLs können als Links verwendet oder in QR-Codes codiert werden
- Mobil: Deep-Linking-Integration mit Wallet-Apps
- Desktop: Protokoll-Handler für nahtloses Wallet-Starten
JavaScript SDK
Das @solana/pay SDK (basierend auf @solana/kit) bietet:
- Client-Factories:
createMerchantClient,createWalletClient,createSolanaPayClientfür kombinierbare Zahlungsabläufe - URL-Codierung/-Parsing:
encodeURL,parseURLfür Solana Pay URLs - Transfer-Erstellung:
createTransferfür SOL- und SPL-Token-Zahlungs- Anweisungen - Zahlungsvalidierung:
findReference,validateTransfer,watchReferencezur Erkennung und Verifizierung von Zahlungen - QR-Codes: Integriertes
createQRzur Generierung scannbarer Zahlungscodes - Kit-Plugins:
solanaPayMerchant(),solanaPayWallet()zur Kombination mit anderen@solana/kit-Plugins
Wallet-Integration
Unterstützende Wallets implementieren:
- URL-Schema-Verarbeitung und -Parsing
- Transaktionszusammensetzung und -validierung
- Benutzerbestätigungsabläufe
- Transaktionsübertragung und -überwachung
Beispiele für Zahlungsabläufe
Web-App zu Mobile Wallet
- Web-App generiert QR-Code mit Solana Pay URL
- Benutzer scannt QR-Code mit Wallet-App
- Wallet analysiert URL und zeigt Zahlungsdetails an
- Benutzer bestätigt Zahlung im Wallet
- Wallet signiert und sendet Transaktion
- Web-App erkennt Zahlungsbestätigung
Web-App zu Browser-Wallet
- Web-App zeigt "Mit Solana bezahlen"-Schaltfläche an
- Benutzer klickt auf Schaltfläche, um Wallet zu starten
- Wallet-Erweiterung zeigt Zahlungsbestätigung an
- Benutzer genehmigt Transaktion
- Transaktion wird signiert und gesendet
- Web-App erhält Zahlungsbestätigung
Mobile App zu Mobile Wallet
- Mobile App erstellt Payment-Deep-Link
- Deep-Link startet Wallet-App
- Wallet zeigt Zahlungsbestätigung an
- Benutzer genehmigt oder lehnt Zahlung ab
- Wallet kehrt zur ursprünglichen App zurück
- App erhält Zahlungsergebnis
Sicherheitsaspekte
Für Händler
- Transaktionen validieren: Transaktionsdetails immer On-Chain verifizieren
- Referenzen verwenden: Eindeutige Referenzschlüssel zur Identifizierung von Zahlungen einbinden
- Server-seitige Validierung: Beträge berechnen und Zahlungen server-seitig validieren
- Rate Limiting: Angemessene Rate Limits für Payment-Endpunkte implementieren
Für Wallet-Entwickler
- URL-Validierung: Alle URL-Komponenten validieren und bereinigen
- Benutzerbestätigung: Zahlungsdetails dem Benutzer immer klar anzeigen
- Transaktionsvalidierung: Transaktionsinhalte vor dem Signieren verifizieren
- Nur HTTPS: Ausschließlich HTTPS-URLs für Transaktionsanfragen zulassen
Integrationsmuster
E-Commerce-Checkout
- Kunde fügt Artikel zum Warenkorb hinzu
- Händler generiert Zahlungsanfrage mit Bestelldetails
- Kunde scannt QR-Code oder klickt auf Zahlungs-Button
- Wallet zeigt aufgeschlüsselte Quittung und Gesamtbetrag an
- Kunde bestätigt Zahlung
- Händler validiert Transaktion und erfüllt Bestellung
Point of Sale
- Kassierer gibt Verkaufsbetrag ein
- POS-System zeigt QR-Code an
- Kunde scannt mit Mobile Wallet
- Zahlung wird sofort verarbeitet
- Quittung wird automatisch gedruckt
Abonnement-Services
- Benutzer abonniert Service
- Service erstellt wiederkehrenden Zahlungsplan
- Automatisiertes System generiert Zahlungsanfragen
- Benutzer genehmigt Zahlungen über Wallet
- Service verfolgt Zahlungsstatus
Best Practices
URL-Generierung
- HTTPS für alle Transaktionsanfrage-Endpunkte verwenden
- Aussagekräftige Labels und Nachrichten einbinden
- Eindeutige Referenzen für Payment-Tracking generieren
- Alle Parameter vor URL-Erstellung validieren
Transaktionsabwicklung
- Validieren Sie Transaktionen immer serverseitig
- Verwenden Sie angemessene Bestätigungszähler für die Sicherheit
- Implementieren Sie ordnungsgemäße Fehlerbehandlung und Wiederholungsversuche
- Protokollieren Sie Zahlungsereignisse zur Abstimmung
Benutzererfahrung
- Bieten Sie klare Zahlungsbestätigungen
- Zeigen Sie Transaktionsstatusaktualisierungen an
- Behandeln Sie Wallet-Verbindungen sorgfältig
- Unterstützen Sie mehrere Wallet-Optionen
Nächste Schritte
Bereit, Solana Pay zu integrieren? Beginnen Sie mit diesen Anleitungen:
- Installationsanleitung - Richten Sie das SDK und die Tools ein
- Transfer-Anfragen - Erstellen Sie einfache Zahlungs-URLs
- Transaktionsanfragen - Erstellen Sie interaktive Abläufe
- Integrationsbeispiele - Sehen Sie sich reale Implementierungen an
Ressourcen
- Offizielle Spezifikation - Vollständige Protokollspezifikation
- GitHub-Repository - Quellcode und Beispiele
- Markenrichtlinien - Logos und Marken-Assets
Is this page helpful?