Entwickler · Apps
Einen Sell-USDC-Flow bauen, den Nutzer wirklich abschließen können.
Eine gute Off-Ramp-App ist größtenteils gewöhnliches State-Management: Route sammeln, Wallet signieren lassen, extension-gesteuerte Zahlungsmethoden wiederherstellen, einen Einzahlungslink anzeigen und Lifecycle-Events nach dem Tab-Schließen abgleichen.
01
Frontend-Pfad
- 1Betrag, Zahlungsplattform, Fiat-Währung und Auszahlungskennung sammeln.
- 2Den verbundenen viem WalletClient an useOfframp() oder createOfframp({ walletClient }) übergeben.
- 3Fortschrittsstatus anzeigen: approving, registering, depositing, confirming, delegating, restricting, resuming, done.
- 4EXTENSION_REGISTRATION_REQUIRED für PayPal und Wise abfangen, dann usePeerExtensionRegistration(platform) steuern.
- 5deposits(address) beim Laden der Seite aufrufen, damit eine Aktualisierung keinen laufenden Verkäufer blockiert.
02
Status, den Sie speichern sollten
| Feld | Grund |
|---|---|
| depositId | Primäres Handle für close(), OTC-Links und Support |
| txHash | Nachweis, dass der Nutzer die Einzahlungstransaktion signiert und gesendet hat |
| platform + currency | Routenanzeige, Support und Analytics-Segmentierung |
| identifier label | Menschlich lesbare Auszahlungsreferenz; keine Geheimnisse speichern |
| integratorId | Stabile Attribution für Produkt-Telemetrie und Support |
03
UX-Einschränkungen
- Das SDK zielt auf das Base-Mainnet ab; es gibt keine öffentliche Sandbox. Testen Sie mit dem Minimum von 1 USDC.
- Jede vom SDK erstellte Einzahlung delegiert die Preisgestaltung an den Delegate-Vault. Zeigen Sie für diesen Pfad keine manuellen Kurssteuerungen an.
- Fiat bleibt außerhalb des SDK. Käufer und Verkäufer wickeln direkt in der gewählten Zahlungs-App ab.
- Behandeln Sie Webhooks als Lifecycle-Hinweise und gleichen Sie dann den engen Eigentümer-Status mit deposits() ab; verwenden Sie die Peerlytics API für breitere Marktdaten und Analytics.
Keep exploring
Common questions
Sollte eine Wallet-App die Standalone-Funktion oder den React-Hook verwenden?
Verwenden Sie den React-Hook, wenn Sie integrierten Lade-, Fortschritts-, Fehler- und Ergebnisstatus möchten. Verwenden Sie createOfframp({ walletClient }), wenn Ihre App ihre eigene State-Machine hat.
Was sollte ich anzeigen, wenn die PayPal- oder Wise-Registrierung fehlschlägt?
Fangen Sie EXTENSION_REGISTRATION_REQUIRED ab, fordern Sie den Nutzer auf, die Peer-Extension zu installieren oder zu verbinden, schließen Sie die Verkäufer-Credential-Erfassung über usePeerExtensionRegistration() ab, dann wiederholen Sie die ursprüngliche Einzahlung.