Pengembang · Aplikasi
Bangun alur sell-USDC yang benar-benar bisa diselesaikan pengguna.
Aplikasi off-ramp yang baik sebagian besar adalah manajemen state yang membosankan: kumpulkan rute, biarkan wallet menandatangani, pulihkan metode pembayaran yang dikunci ekstensi, tampilkan tautan deposit, dan rekonsiliasi event siklus hidup setelah tab ditutup.
01
Jalur frontend
- 1Kumpulkan jumlah, platform pembayaran, mata uang fiat, dan identifikasi payout.
- 2Masukkan viem WalletClient yang terhubung ke useOfframp() atau createOfframp({ walletClient }).
- 3Tampilkan state progres: approving, registering, depositing, confirming, delegating, restricting, resuming, done.
- 4Tangkap EXTENSION_REGISTRATION_REQUIRED untuk PayPal dan Wise, lalu jalankan usePeerExtensionRegistration(platform).
- 5Panggil deposits(address) saat halaman dimuat agar refresh tidak meninggalkan penjual yang sedang berlangsung.
02
State yang harus disimpan
| Bidang | Alasan |
|---|---|
| depositId | Handle utama untuk close(), tautan OTC, dan dukungan |
| txHash | Bukti bahwa pengguna menandatangani dan menyiarkan transaksi deposit |
| platform + currency | Tampilan rute, dukungan, dan segmentasi analitik |
| label identifikasi | Referensi payout yang dapat dibaca manusia; jangan simpan rahasia |
| integratorId | Atribusi stabil untuk telemetri produk dan dukungan |
03
Batasan UX
- SDK menargetkan mainnet Base; tidak ada sandbox publik. Uji dengan minimum 1 USDC.
- Setiap deposit yang dibuat SDK mendelegasikan penetapan harga ke vault Delegate. Jangan tampilkan kontrol tarif manual untuk jalur ini.
- Fiat tetap di luar SDK. Pembeli dan penjual menyelesaikan langsung di dalam aplikasi pembayaran yang dipilih.
- Perlakukan webhook sebagai petunjuk siklus hidup, lalu rekonsiliasi state pemilik yang sempit dengan deposits(); gunakan API Peerlytics untuk data pasar dan analitik yang lebih luas.
Keep exploring
Common questions
Haruskah aplikasi wallet menggunakan fungsi mandiri atau React hook?
Gunakan React hook ketika Anda menginginkan state loading, progres, error, dan hasil bawaan. Gunakan createOfframp({ walletClient }) ketika aplikasi Anda memiliki mesin state sendiri.
Apa yang harus ditampilkan ketika registrasi PayPal atau Wise gagal?
Tangkap EXTENSION_REGISTRATION_REQUIRED, minta pengguna menginstal atau menghubungkan ekstensi Peer, selesaikan pengambilan seller-credential melalui usePeerExtensionRegistration(), lalu coba ulang deposit asli.