1. Sandbox कॉन्फ़िगर करें
अपने backend से एक sandbox API key का उपयोग करें:2. एक customer बनाएँ
POST /v3/customers के साथ एक individual customer बनाएँ:
data.id को CUSTOMER_ID के रूप में संग्रहीत करें।
3. Outcome चुनें
- Pay-in: USD प्राप्त करें और customer के issued wallet में USDC settle करें।
- Payout: Customer के issued wallet से customer-owned bank account में USDC भेजें।
- Issued bank account: एक ACH/USD account जारी करें जो customer के issued wallet में settle होता है।
4. एक eligible capability खोजें
समर्थित capabilities कोGET /v3/customers/{customerId}/capabilities/supported के साथ सूचीबद्ध करें:
availability available या beta पर सेट हो, eligibility.eligible true पर सेट हो, आवश्यक directions और method, और मेल खाता accountType हो। Pay-in destination, payout source, या bank-account settlement account के रूप में customer के issued wallet का उपयोग करें; इस payout path के लिए destinationId के रूप में customer-owned account का उपयोग करें। यदि institutions लौटाए जाते हैं, तो केवल एक लौटाए गए institution choice का उपयोग करें। Entry के id को CAPABILITY_ID के रूप में संग्रहीत करें; एक universal capability ID को hardcode न करें।
5. Capability का अनुरोध करें
चुनी गई capability का अनुरोधPOST /v3/customers/{customerId}/capabilities/{capabilityId} के साथ करें:
data.status को CAPABILITY_STATUS और data.openTaskIds को TASK_IDS के रूप में संग्रहीत करें।
6. Sandbox में onboarding पूरा करें
यदिTASK_IDS खाली नहीं है, तो Capabilities और tasks के माध्यम से प्रत्येक वर्तमान आवश्यकता पूरी करें।
इस walkthrough के लिए, capability को POST /v3/sandbox/customers/{customerId}/capabilities/{capabilityId}/status के साथ ready पर सेट करें:
GET /v3/customers/{customerId}/capabilities/{capabilityId} के साथ पुन: प्राप्त करें:
data.status और data.openTaskIds से CAPABILITY_STATUS और TASK_IDS को refresh करें। केवल तब जारी रखें जब CAPABILITY_STATUS ready हो।
7. चयनित flow बनाएँ
Base पर एक issued USDC walletPOST /v3/customers/{customerId}/accounts के साथ बनाएँ:
data.id को FLOW_WALLET_ID, data.status को FLOW_WALLET_STATUS, और data.openTaskIds को FLOW_WALLET_TASK_IDS के रूप में संग्रहीत करें। यदि FLOW_WALLET_TASK_IDS खाली नहीं है, तो Capabilities और tasks के माध्यम से वर्तमान tasks पूरे करें।
Wallet को GET /v3/customers/{customerId}/accounts/{accountId} के साथ पुन: प्राप्त करें:
data.status और data.openTaskIds से FLOW_WALLET_STATUS और FLOW_WALLET_TASK_IDS को refresh करें। केवल तब जारी रखें जब FLOW_WALLET_STATUS ready हो।
- Pay-in
- Payout
- Issued bank account
POST /v3/quotes के साथ USD-to-USDC quote बनाएँ:data.id को QUOTE_ID के रूप में संग्रहीत करें, फिर उसे POST /v3/transfers के साथ execute करें:data.id को TRANSFER_ID के रूप में संग्रहीत करें। Instructions को GET /v3/transfers/{transferId}/instructions के साथ प्राप्त करें:data.transferId और data.instructions होते हैं। data.transferId को TRANSFER_ID और data.instructions को FUNDING_INSTRUCTIONS के रूप में संग्रहीत करें।GET /v3/transfers/{transferId} के साथ TRANSFER_ID की निगरानी करें:
Pay-in
पूर्ण pay-in flow बनाएँ।
Payout
Production payout handling बनाएँ।
Issued bank account
Provisioning और details संभालें।