Developers · Apps
एक sell-USDC फ़्लो बनाएँ जिसे यूज़र वाकई पूरा कर सकें।
एक अच्छा ऑफ़-रैंप ऐप ज़्यादातर सादा स्टेट मैनेजमेंट है: रूट इकट्ठा करें, वॉलेट को साइन करने दें, एक्सटेंशन-गेटेड पेमेंट मेथड रिकवर करें, एक डिपॉज़िट लिंक दिखाएँ, और टैब बंद होने के बाद लाइफ़साइकल इवेंट्स रिकॉन्साइल करें।
01
फ़्रंटएंड रास्ता
- 1राशि, पेमेंट प्लेटफ़ॉर्म, फिएट करेंसी, और पेआउट आइडेंटिफ़ायर इकट्ठा करें।
- 2कनेक्टेड viem WalletClient को useOfframp() या createOfframp({ walletClient }) में पास करें।
- 3प्रोग्रेस स्टेट्स दिखाएँ: approving, registering, depositing, confirming, delegating, restricting, resuming, done।
- 4PayPal और Wise के लिए EXTENSION_REGISTRATION_REQUIRED कैच करें, फिर usePeerExtensionRegistration(platform) चलाएँ।
- 5पेज लोड पर deposits(address) कॉल करें ताकि एक रिफ़्रेश किसी इन-फ़्लाइट सेलर को अधर में न छोड़े।
02
जो स्टेट आपको स्टोर करनी चाहिए
| फ़ील्ड | कारण |
|---|---|
| depositId | close(), OTC लिंक, और सपोर्ट के लिए प्राइमरी हैंडल |
| txHash | प्रमाण कि यूज़र ने डिपॉज़िट ट्रांज़ैक्शन साइन और ब्रॉडकास्ट किया |
| platform + currency | रूट डिस्प्ले, सपोर्ट, और एनालिटिक्स सेगमेंटेशन |
| identifier label | मनुष्य-पठनीय पेआउट रेफ़रेंस; secrets स्टोर न करें |
| integratorId | प्रोडक्ट टेलीमेट्री और सपोर्ट के लिए स्थिर एट्रिब्यूशन |
03
UX बाधाएँ
- SDK Base मेननेट को टार्गेट करता है; कोई पब्लिक सैंडबॉक्स नहीं है। 1 USDC मिनिमम के साथ टेस्ट करें।
- हर SDK-निर्मित डिपॉज़िट प्राइसिंग को Delegate vault को डेलिगेट करता है। इस रास्ते के लिए मैन्युअल रेट कंट्रोल पेश न करें।
- फिएट SDK के बाहर रहता है। बायर और सेलर सीधे चुने गए पेमेंट ऐप के अंदर सेटल करते हैं।
- Webhooks को लाइफ़साइकल हिंट मानें, फिर deposits() के साथ संकीर्ण ओनर स्टेट रिकॉन्साइल करें; व्यापक मार्केट डेटा और एनालिटिक्स के लिए Peerlytics API इस्तेमाल करें।
Keep exploring
Common questions
क्या एक वॉलेट ऐप को स्टैंडअलोन फ़ंक्शन या React hook इस्तेमाल करना चाहिए?
React hook तब इस्तेमाल करें जब आप बिल्ट-इन लोडिंग, प्रोग्रेस, एरर, और रिज़ल्ट स्टेट चाहते हों। createOfframp({ walletClient }) तब इस्तेमाल करें जब आपके ऐप के पास अपनी खुद की स्टेट मशीन हो।
जब PayPal या Wise रजिस्ट्रेशन में फ़ेल हो जाए तो मुझे क्या दिखाना चाहिए?
EXTENSION_REGISTRATION_REQUIRED कैच करें, यूज़र को Peer एक्सटेंशन इंस्टॉल या कनेक्ट करने का प्रॉम्प्ट दें, usePeerExtensionRegistration() के ज़रिए सेलर-क्रेडेंशियल कैप्चर पूरा करें, फिर मूल डिपॉज़िट को रीट्राई करें।