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

  1. 01Betrag, Zahlungsplattform, Fiat-Währung und Auszahlungskennung sammeln.
  2. 02Zeigen Sie die aktuelle Richtliniengrenze des Anbieters an und verlangen Sie, dass der Benutzer die Berechtigung für Konto, Region und Transaktion bestätigt.
  3. 03Übergeben Sie den verbundenen viem WalletClient an useOfframp() oder createOfframp({ walletClient }).
  4. 04Zeigen Sie die Fortschrittsstatus approving, registering, depositing, confirming, delegating, restricting, resuming und done an.
  5. 05Fangen Sie für eine zulässige, erweiterungsgebundene Route EXTENSION_REGISTRATION_REQUIRED ab und führen Sie usePeerExtensionRegistration(platform) aus.
  6. 06deposits(address) beim Laden der Seite aufrufen, damit eine Aktualisierung keinen laufenden Verkäufer blockiert.
02

Status, den Sie speichern sollten

FeldGrund
depositIdPrimäres Handle für close(), OTC-Links und Support
txHashNachweis, dass der Nutzer die Einzahlungstransaktion signiert und gesendet hat
platform + currencyRoutenanzeige, Support und Analytics-Segmentierung
identifier labelMenschlich lesbare Auszahlungsreferenz; keine Geheimnisse speichern
integratorIdStabile 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.
  • Reconcile narrow owner state with deposits(); use Peerlytics API for broader market data, deposits, intents, and analytics.

Häufige Fragen

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?

Zeigen Sie zuerst die politische Grenze: Wise verbietet P2P-Kryptoverkaufsbelege und PayPal erfordert möglicherweise eine Vorabgenehmigung. Nur für einen berechtigten Provider-Flow sollten Sie EXTENSION_REGISTRATION_REQUIRED abfangen, die Erweiterung anschließen, usePeerExtensionRegistration() vollständig verwenden und erneut versuchen.