Protocol यांत्रिकी

ZKP2P एक fiat पेमेंट को एक onchain USDC release में कैसे बदलता है।

ZKP2P वह protocol है जो USDCtoFiat के नीचे है। Sellers एक Base smart contract में USDC लॉक करते हैं, buyers एक सामान्य पेमेंट ऐप के ज़रिए fiat पेमेंट करते हैं, और एक साइन की गई payment attestation पेमेंट के ऑर्डर से मेल खाने के बाद USDC अनलॉक करती है।

01

संक्षिप्त संस्करण

एक seller Base पर EscrowV2 में USDC लॉक करके और fiat पेमेंट तरीका, करेंसी, payout identifier, और rate सूचीबद्ध करके एक deposit बनाता है। एक buyer उस लिक्विडिटी को चुनता है, एक onchain intent शुरू करता है, चुने गए पेमेंट ऐप में seller को पेमेंट करता है, और पेमेंट का साक्ष्य जमा करता है।

protocol किसी भी पक्ष से एक chat screenshot पर भरोसा करने को नहीं कहता। पेमेंट साक्ष्य attestation service द्वारा offchain जांचा जाता है, और परिणामी EIP-712 PaymentAttestation contract द्वारा USDC रिलीज़ करने से पहले onchain वेरिफ़ाई की जाती है।

02

fill जीवनचक्र

  1. 1Seller Base पर native USDC को EscrowV2 में जमा करता है और स्वीकृत पेमेंट तरीके, करेंसियां, और payee विवरण घोषित करता है।
  2. 2Buyer deposit चुनता है और OrchestratorV2 के ज़रिए एक intent संकेत देता है। वह intent buyer के पेमेंट करते समय विशिष्ट राशि आरक्षित करता है।
  3. 3Buyer चुने गए fiat ऐप में seller को सीधे पेमेंट करता है। USDCtoFiat कभी fiat ट्रांसफ़र प्राप्त या धारित नहीं करता।
  4. 4पेमेंट साक्ष्य intent के विरुद्ध वेरिफ़ाई किया जाता है: राशि, करेंसी, प्राप्तकर्ता, timestamp, पेमेंट तरीका, और रूट बाधाएं।
  5. 5attestation service एक PaymentAttestation साइन करती है। onchain verifier signature, snapshot मानों, और nullifier की जांच करता है, फिर OrchestratorV2 USDC रिलीज़ करता है।
03

contract सुरक्षित रूप से क्यों रिलीज़ कर सकता है

Primitiveयह क्या करता हैयह क्यों मायने रखता है
EscrowV2Base पर seller USDC रखता हैन तो USDCtoFiat और न ही buyer contract नियमों के बिना इसे ले जा सकते हैं
Intent hashएक buyer ऑर्डर की पहचान करता हैfiat पेमेंट प्रूफ़ को सटीक fill से बांधता है
PaymentAttestationEIP-712 साइन किया गया वेरिफ़िकेशन परिणामएक verifier contract को कई पेमेंट तरीके संभालने देता है
Nullifierएक पेमेंट के लिए एक-बार का markerएक ही पेमेंट को दो बार claim होने से रोकता है
Payee विवरण hashseller के payout identifier का hashhandle को onchain प्रकाशित किए बिना पेमेंट को seller से बांधता है
04

क्या onchain नहीं है

आपका Venmo username, Revtag, Wisetag, PayPal.me handle, Zelle email, अकाउंट session, और विस्तृत पेमेंट डेटा Base पर पोस्ट नहीं किए जाते। chain contract state, hashes, signatures, राशियां, और release events देखता है, पूरी निजी पेमेंट अकाउंट हिस्ट्री नहीं।

आपका payout identifier फिर भी उस counterparty को दिखता है जिसे आपको पेमेंट करना होता है। किसी भी पेमेंट-ऐप सेटलमेंट फ्लो में यह अपरिहार्य है: buyer एक गंतव्य के बिना fiat नहीं भेज सकता।

V3 production पथ

Non-custodial escrow प्लस offchain payment attestation।

ZKP2P V3 पेमेंट parsing को offchain ले जाता है और अंतिम release नियमों को onchain रखता है, यही कारण है कि seller UX हर rail के लिए एक विशिष्ट verifier contract के बिना अधिक पेमेंट तरीकों का समर्थन कर सकता है।

सटीक पेमेंट ऐप फ्लो तरीके के अनुसार भिन्न हो सकता है। Wise और PayPal seller सेटअप को एक-बार extension रजिस्ट्रेशन की ज़रूरत होती है।

EscrowV20x777777779d229cdF3110e9de47943791c26300Efseller custody contract
OrchestratorV20x888888359E981B5225CA48fbCdCeff702FC3b888intent जीवनचक्र
USDC0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913native Base token
VerifierUnifiedPaymentVerifierV2payment attestations की जांच करता है

Common questions

USDCtoFiat क्या है?

USDCtoFiat आपको Base पर USDC को Venmo, Cash App, Chime, Revolut, Wise, Zelle, PayPal और Monzo में पैसे के बदले बेचने देता है। आप अपने wallet का नियंत्रण बनाए रखते हैं, और ट्रेड Base पर non-custodial ZKP2P smart contracts के ज़रिए सेटल होते हैं।

क्या USDCtoFiat मेरा फंड रखता है?

नहीं। आप हर ट्रांज़ैक्शन को अपने खुद के wallet से साइन करते हैं। आपका USDC एक सार्वजनिक Base contract में लॉक रहता है और buyer को तभी रिलीज़ होता है जब उनका पेमेंट साबित हो जाता है। आप किसी भी अधूरे deposit को कभी भी निकाल सकते हैं।

बेचने में क्या खर्च आता है?

एक seller deposit बनाना और मैनेज करना मुफ़्त है, हालांकि onchain कार्यों पर Base gas लगता है। offramp SDK को इंटीग्रेट करना मुफ़्त है। delegated fills पर, Delegate की 0.10% manager fee buyer को रिलीज़ किए गए USDC से आती है, आपकी fiat आय या आपके quoted rate से नहीं। Peerlytics analytics, webhooks और API credits की कीमत अलग से तय होती है।

क्या मुझे एक centralized exchange अकाउंट की ज़रूरत है?

USDCtoFiat इस्तेमाल करने के लिए किसी exchange अकाउंट की ज़रूरत नहीं है। आपको Base पर USDC रखने वाला एक wallet चाहिए और जिस पेमेंट ऐप में आप पेमेंट पाना चाहते हैं उसका एक अकाउंट चाहिए। पेमेंट ऐप के अपने अकाउंट नियम और सीमाएं फिर भी लागू होती हैं।

क्या मुझे KYC पूरा करना होगा?

USDCtoFiat न तो पहचान दस्तावेज़ इकट्ठा करता है, न आपका fiat रखता है, न आपकी keys रखता है। आप जो पेमेंट ऐप इस्तेमाल करते हैं वह अपनी खुद की वेरिफ़िकेशन, सीमाओं और अकाउंट नियमों को नियंत्रित करता है। USDC सेटलमेंट Base smart contracts के ज़रिए होता है, और Venmo, PayPal, Wise, Zelle या आपका बैंक जो मांगता है उसे हम नहीं बदल सकते।

क्या ZKP2P और USDCtoFiat एक ही चीज़ हैं?

नहीं। ZKP2P अंतर्निहित protocol और contract सिस्टम है। USDCtoFiat इसके ऊपर बनाया गया एक seller-केंद्रित प्रोडक्ट है जो समर्थित पेमेंट ऐप्स के ज़रिए Base USDC को fiat में बदलने के लिए है।

क्या एक ही fiat पेमेंट दो बार USDC रिलीज़ कर सकता है?

नहीं। Payment attestations में एक nullifier शामिल होता है, एक एक-बार का marker जिसे verifier द्वारा जांचा जाता है ताकि एक ही पेमेंट को कई intents के विरुद्ध दोहराने से रोका जा सके।

यदि buyer एक intent शुरू करता है पर कभी पेमेंट नहीं करता तो क्या होता है?

seller deposit का वह हिस्सा खुले intent से अस्थायी रूप से बंधा रहता है जब तक वह समाप्त नहीं होता या रद्द नहीं होता। अधूरी लिक्विडिटी seller द्वारा निकाले जाने योग्य रहती है।