🔄 Complete API Integration Flow
Complete flow for converting Crypto → Fiat. Users deposit cryptocurrency and receive fiat currency.
📋 Step-by-Step OffRamp Process
🔐 User Login
Authenticate user with email and generate JWT access token for all subsequent API calls. Token expires in 1 hour.
POST /api/user-login →
📋 Fetch KYC Status
Check user's KYC verification status. If KYC is completed, proceed to link bank account. Otherwise, upload KYC documents first.
POST /api/fetch-kyc-status →
📝 Upload KYC
Upload user's PAN card, Aadhaar, selfie and other information for identity verification. Required for compliance.
POST /api/upload-kyc →
🏦 Fetch Linked Bank Accounts
Get list of user bank accounts that are already linked. If not linked then link them first.
GET /api/fetch-bank-accounts →
🏦 Link Bank Account
Connect user's bank account if not linked already or user wants to add new for receiving fiat payments. Bank details must match KYC information.
POST /api/link-bank-account →
💱 Fetch Sell Quotation
Get real-time exchange rates for crypto to fiat conversion. Quotation valid for 30 seconds with live market rates.
POST /api/fetch-sell-quotation →
📝 Create Offramp Order
Initialize the offramp transaction with confirmed details. Order created with status cryptoInit.
POST /api/create-offramp-order →
🔗 Submit Transaction Hash
Provide blockchain transaction hash after sending crypto. Required to verify the crypto transfer on-chain.
POST /api/update-transaction-hash →
⏳ Fetch Order Status
Monitor transaction progress and current state. Poll this endpoint to track order status from cryptoInit to completed.
POST /api/fetch-offramp-order-status →
📊 OffRamp Order Status Guide
📈 Order Status Flow
🔔 Important Notes
KYC verification is mandatory for all users. Always check KYC status before proceeding with bank linking. Bank account details must match KYC information.
Bank linking is mandatory before order creation for offRamp transactions:
- Bank addition mandatory to receive fiat payouts in user's account