Both USDT and USDC are supported for INR offramp.
1
Create User
user_id — every subsequent call needs it as the X-User-Id header.2
KYC
INR supports two KYC methods:Headers: Response:Saber may request supporting KYC documents for a KYC-Sharing user at any time — these must be shared within 72 hours of the request.
- KYC Sharing
- KYC Widget
X-User-Id: <user_id>poi = PAN, poa = Aadhaar.Set
is_nri: true if the user is a Non-Resident Indian. TDS is not deducted from INR sell payouts for NRI users; it is deducted for third-party payouts to Indian residents. A user whose country is India cannot be marked is_nri: true.3
Bank Account Linkage
X-User-Id: <user_id>account_number and bank_code (IFSC) are required — account_holder_name is not required at this step; the account holder name is fetched from the bank during penny-drop and matched against the user’s KYC legal_name instead.Response:created_at/updated_at here are ISO 8601 date strings — unlike wallet-transaction endpoints, which use epoch milliseconds. Save bank_id for the sell step.A user can have up to 4
APPROVED bank accounts at any point in time (error 304012 when exceeded).4
Transaction
Min ₹100 per transaction; max depends on the user’s assigned limits (see User Limits & EDD below).
payment_method: bank_transfer resolves internally to one of:- IMPS — for amounts from ₹100 up to ₹5,00,000. Instant, no cut-off times.
- NEFT / RTGS — for amounts above ₹5,00,000. Manual processing, ~12 hour SLA, operates 10 AM–6 PM IST. Support over weekends and public holidays may be limited.
quote_id in the sell request):- Pool Sell (recommended)
- External Sell
Get an informational quote:Then create the sell:Response:
Payouts to NRE accounts
Paying out to an NRE (Non-Resident External) bank account uses the same transaction flow with a few additional conditions — see Traditional Rails.Checking status
Example status responses
Example status responses
Pool Sell:External Sell: