UPI Cash Withdrawal API for Assisted Cash-out
Turn any retailer into a cash point. Generate a UPI QR for the withdrawal amount, the customer scans and pays from any UPI app with their own UPI PIN, and the retailer hands over cash once the payment is confirmed — the retailer's wallet is credited with the amount plus commission.
Key Features
Everything you need to integrate and scale
Pay With Any UPI App
The customer scans a QR and authorises with their own UPI PIN — no card, Aadhaar or fingerprint.
No Biometric Device
No RD-service scanner and no daily eKYC for the customer — just a screen to show the QR.
Two-step Flow
Generate the QR, then poll the status API on the schedule returned — a clear paid / failed / pending answer.
Wallet Credit + Commission
On success the retailer's wallet is credited with the amount plus commission, less TDS.
Location-Verified
Every withdrawal carries the retailer's live GPS fix; geo-fencing is enforced.
Why Choose Eko?
Earn Commission
Same commercials as AePS cash withdrawal — earn on every successful withdrawal.
Serve Every UPI User
Any customer with a UPI app and PIN can withdraw cash — no Aadhaar-bank linking needed.
Lower Setup Cost
No fingerprint devices to buy or certify — the QR is shown on a screen.
Build Retailer Network
Let local retailers become cash points alongside AePS, DMT and bill payments.
Primary Use Cases
How to Integrate
Get started in minutes with our simple integration process
- 1
Sign Up
Sign up in minutes with your mobile number (OTP verify).
- 2
Verify Identity
Complete your basic KYC with PAN and address details to verify your identity.
- 3
Test APIs Live
Load funds into your wallet and test the verification APIs live — evaluate before you integrate.
- 4
Integrate with AI
Ready to build? Visit our AI hub for free plugins & tools to integrate faster.
- 5
Onboard Retailers
Onboard retailers and complete their UPI Cash Withdrawal eKYC.
- 6
Go Live
Show the QR, poll the status, and dispense cash only on a confirmed payment.
Frequently Asked Questions
How much can a customer withdraw?+
₹100 to ₹5,000 per transaction, in multiples of ₹100, whole rupees only. The acquiring bank also sets a per-merchant daily cap of ₹10,000 / ₹30,000.
Are there times when withdrawals don't work?+
Yes. Transactions are blocked between 23:30 and 00:05 IST — an NPCI / acquirer maintenance window, not an Eko rule.
Does the customer need Aadhaar or a fingerprint scan?+
No. The customer scans the QR from any UPI app and authorises with their own UPI PIN. There is no biometric, Aadhaar or daily eKYC step for the customer.
When should the retailer hand over the cash?+
Only after the status API returns tx_status "0" (paid). A generated QR means no money has moved yet; failed, pending, unknown or timed-out results all mean not paid.
What does the retailer need before going live?+
The retailer must be onboarded and eKYC-complete for UPI Cash Withdrawal. Until then the API returns response_type_id 99016 (not enabled) — a provisioning state; contact your relationship manager.
What does it cost and what do I earn?+
The commercials are the same as AePS cash withdrawal. See the earnings calculator on the pricing page for the commission per transaction.
Can I test it in the sandbox?+
Not yet — UPI Cash Withdrawal is not available on the UAT / sandbox environment.
How do I get started?+
Four steps: sign up at the developer console page, verify your identity with PAN and address details, load your wallet to test the APIs live, then integrate and go live. Sandbox credentials are issued immediately — you can call your first endpoint before any paperwork clears.
What is EPS?+
EPS (Eko Platform Services) is the technology arm of Eko — the developer tools, AI tooling and APIs that power modern fintech integration, from money transfer and AePS to identity verification.
What are the different ways to integrate with Eko EPS?+
Three paths, pick whichever suits your stack:
- Call the REST APIs directly.
- Use our official Node.js, Python, PHP, Go or Java SDKs to skip request-signing boilerplate.
- Let an AI coding agent build it via our MCP server and agent skills.
For multi-step flows (onboard a sender, then transfer) start from a transaction-flow recipe rather than wiring single endpoints together yourself.
How does API authentication work?+
Each request carries your static developer_key header plus a per-request secret-key header — an HMAC-SHA256 signature of the current timestamp, keyed by your access key. The access key itself is never sent over the wire. You receive UAT keys on signup and production keys after KYC.
The How Authentication Works guide has the full signing recipe in five languages plus an in-browser playground that generates and verifies a real secret-key against your own access key.
Why does my API call return 401 Unauthorized?+
Authentication failed. For the known causes, the response body's status names the check that failed:
2483— The developer_key is wrong.2484— The secret-key (signature) is wrong.2485— The secret-key-timestamp is more than 2 minutes older or newer than the server clock, or was reused from an earlier request.2486— The secret-key-timestamp is not in milliseconds (13 digits) — often seconds (10 digits).2487— The secret-key or secret-key-timestamp header is missing.
If your signature checks out in the secret-key playground and you still get a 401, make sure the base URL matches your keys (UAT vs production) and, in production, that your server's IP is whitelisted.
Is there a sandbox environment for testing?+
Yes. A full sandbox is available immediately on signup — test your integration end-to-end before going live, no commitment required. For offline work you can also run our mock server (npx -y @ekoindia/eps-mock-server) and get canned responses with no network calls at all.
What are the sandbox and production base URLs?+
Sandbox and production share the same paths and differ only by base URL:
- UAT / Sandbox —
https://staging.eko.in/ekoapi/v3 - Production —
https://api.eko.in/ekoicici/v3
A common cause of failures is calling the sandbox URL with live credentials, or vice-versa — make sure the base URL matches the keys you are using.
Do I need to whitelist my server IP?+
It's optional. IP whitelisting is available for production access as an extra layer of security — share your static public (server) IP with us and we'll whitelist it.
Can an AI coding agent build the integration for me?+
Yes — that is the fastest path. Point your agent (Claude Code, Codex, Cursor, Copilot, …) at our MCP server and it can look up any endpoint, generate correctly-signed requests, and scaffold the integration in your own stack. Install it in one step from the AI hub, or start from a ready-made prompt.
We also publish an OpenAPI 3.1 spec, a Postman collection and per-agent context packs (AGENTS.md, CLAUDE.md, .cursorrules) so an agent has the ground truth instead of guessing.
What response times can I expect?+
Most verification APIs return in real time with sub-second responses, and 99th-percentile latency stays under two seconds across verification endpoints. Transaction APIs (DMT, AePS, BBPS) respond within seconds.
Can the API handle high volumes?+
Yes. The API is designed to handle large-scale volumes reliably without performance degradation.
How is API usage billed?+
Usage is billed per successful API call with no minimum commitment. Volume-based pricing tiers are available — see the pricing calculator for indicative rates, or contact our team for a custom quote.
Recommended Solution Packs
Pre-bundled API stacks that include UPI Cash Withdrawal API, designed for common industry workflows.