Roadmap for India to become a Cashless Country via UPI

India can become Cashless Country. Yes, It is possible and Let us explore few suggestions to help in this process.

Suggestion 1 — UPI Wallet Accounts.

BHIM is an excellent Mobile app but it is not a wallet. NPCI should add UPI Wallet functionality to BHIM. It means we will be able to store money on BHIM app just like PayTM. This UPI wallet will be independent of any bank. We do not need any bank account for using BHIM UPI wallet.

Imagine a poor PaniPuri Seller on the roadside without any bank Account. He only has an “Aadhaar Card”. He can buy Aadhaar verified SIM card. NPCI can automatically create a UPI Wallet account for this new mobile number. The rule is simple, If someone has an Aadhaar verified SIM, he/she will automatically get a UPI wallet with zero balance.

This PaniPuri Seller can now install BHIM mobile app and send/receive money. If he has a feature phone, he can send/receive money using *99# USSD codes. He does not need a bank account to send/receive money.

This will not harm any National Security because Govt can always track the transactions using Aadhaar Number associated with the UPI Wallet Account.

My UPI VPA is 9891341086@upi. If someone sends money to this VPA, money will be received into my ICICI bank account because this VPA is linked to my ICICI bank account.

The UPI Wallet can have VPA something like 98913410986@upiw. So if someone sends money to 98913410986@upiw, money will be received into BHIM UPI Wallet account.

In UPI system, one can print a UPI QR code using VPA. There are many websites which can print UPI QR Code. BHIM also give this facility.

Indian markets have many photocopy(internet) shops. These shop can provide “QR code printing service”. Anybody can get their UPI QR code using their UPI VPA. So this PaniPuri Seller can visit such shops to get a printed copy of UPI QR Code. Now, this PaniPuri Seller on the roadside can accept digital UPI payments using UPI QR Code without any bank account.

These 3 things will be needed.

  1. Aadhaar Card
  2. Aadhaar verified SIM card
  3. Any feature phone or smartphone.

Imagine, One day, My maid will bring her UPI QR Code and I will be able to pay her using BHIM.

Suggestion 2— CardLess Cash Withdrawal from ATM Machine from UPI Wallet

We can send/receive money using UPI VPA. Why can’t we withdraw cash money from ATM using UPI VPA?

NPCI and banks network can implement a UPI based cash withdrawal (UCW) system which does not need any debit card swapping.

Every VPA is connected to some Bank account or UPI wallet. Every Bank account or UPI is connected to Aadhaar. Every Aadhaar is connected to some mobile number. So VPA can be authenticated using OTP on mobile number.

This is how the PaniPuri Seller will be able to withdraw cash money from his UPI wallet.

  1. He visits any ATM. Select UPI Cash Withdrawal
  2. Using OnScreen Keyboard, he will type his VPA, 7999967258@upiw.
  3. He will get OTP. OTP can be delivered using SMS or Voice call.
  4. Now that he is authenticated via OTP, he can withdraw Cash money.

We need an easy and secure cash withdrawal system. In future, ATM will become obsolete when we have 100% cashless economy.

Suggestion 3— Interoperability

for example — PayTM & Mobikwik are Wallet provider. They have a large customer set. Can we bring them into UPI ecosystem? Can their customer transfer money to each other?


PayTM accounts can be converted into UPI Wallet Account. for example — my VPA for paytm account will be 9891341086@paytm.

So, One fine day, I will go to BHIM app and send money to 9891341086@paytm. Booom. The money will be transferred from my ICICI bank account to PayTM Wallet.

And, One fine day, I will go to PayTM and send money to 7999967258@upiw (the PaniPuri Seller). So Money will be transferred from my PayTM account to UPI Wallet Account of PaniPuri Seller.

VPA for amazon pay wallet will be 9891341086@amazon. VPA for Google UPI wallet will be 9891341086@google or nsisodiya@google.

Imagine, Ravi who upload videos on YouTubes. He earns money from Google ads on youtube. Google will transfer ad revenue to his Google UPI wallet. For example, Ravi has UPI VPA ravigupta@google. Once he receives money on his Google UPI Wallet account, he can send money to his bank account. He can also use UPI based Cash Withdrawal system to get cash on any ATM.

Online Shopping will be simplified.

Let suppose I want to buy a book from Amazon. I will follow following procedure.

  1. select item, add to shopping cart and click checkout. At the Checkout page, It will show zero balance in my Amazon UPI wallet.
  2. I will use BHIM or any UPI app to transfer money to my Amazon UPI wallet.
  3. If I have feature phone then I will use *99# to transfer money to my Amazon UPI wallet.
  4. Once the money is received in Amazon UPI wallet, Amazon will automatically deduct the amount and the order will be placed successfully.

Imagine, Sunita wants to buy a mobile app for her kid. She can buy using UPI. She just needs to transfer money to her Google UPI wallet and PlayStore will automatically deduct money from Google UPI wallet while app purchase.

Suggestion 4— UPI QR Code for merchants

We love QR code based Payment.

But there is a problem.

My SabjiWala does not have a UPI QR Code for payment. My DoodhWala does not have a UPI QR Code.

Can we solve this? Let us understand what is QR Code. Profile section of BHIM app display following UPI QR Code.

One can Scan and Pay me using above UPI QR Code. If we decode the above QR code, we get following TEXT.


QR code is basically a machine-readable pictorial representation of a TEXT.

UPI QR Code contains VPA and Name. There are many websites which can create/print this kind UPI QR code. These sites will ask VPA and Name to print UPI QR Code.

My SabjiWala and Other merchants do not use BHIM or any UPI app So they do not have any QR Code.

is it possible? YES

Solution — Print QR Code from bank details

UPI specification tells following things about VPA.

UPI Spec — Page 10 —

Note, the first point. VPA can be created using bank account and IFSC code. If Merchant/vendor has a bank account then they already have a VPA.

for example — Prime Minister National Relief Fund (PMNRF) has following bank details — bank account number — 10482011012215, IFSC — ORBC0101048

So the VPA will be 10482011012215@ORBC0101048.ifsc.npci and UPI Pay URL will


And UPI QR Code will be.

UPI QR Code for PM Relief Fund Generated from Bank account number and IFSC Code.

BUT there is a Problem.

Right now, we cannot Scan and Pay this QR Code. As of Today (18 Sept 2017), BHIM or any other app DO NOT support this kind of QR VPA. BHIM and other apps must fix this BUG/Issue ASAP.

Update 24 May 2018: BHIM has not solved this BUG yet. PayTM and PhonePe can San the above QR code. Good work PhonePe and PayTM.

Update 24 May 2018: I have created Utility to generate such QR code —

If you able to Scan and Pay with above UPI QR Code, then it means this BUG is solved.

Indian markets have many photocopy(internet) shops. These shop can provide “UPI QR code printing service”. These merchants will visit such shop and show their bank passbook and get a printed copy of UPI QR Code in just 10 rupees. Banks must give(print) a UPI QR Code in the welcome kit while opening a new bank account.

If we have an extremely simple process to generate QR code All shopkeeper/merchant going display it on their shops.

Merchant and Shopkeepers will like it. WHY ?

When we swap our credit card or debit card, these merchants pay extra “2%” transaction fees to these card swapping companies. Merchant will love UPI QR Code because right now it has 0% transaction fee.

Suggestion 5 — Income Receipt printer.

There is an unnoticed problem with QR code based payment at merchant shop.

When we pay with such QR code, The shop owner gets SMS like “payment is received”. Most of the time, Owner is not present in the shop. So the guy at the shop refuses to take payment using QR code and other digital payments.

At Bengaluru, Once, I visited a local snacks center and the shop has pasted almost all kinds of QR code payment stickers. Yet, the guy refused to take any digital payment because Owner was not present at the shop. Same with any petrol pump. At petrol pump, there are multiple workers who take payments. The owner usually does not comes to Petrol pump so it is impossible to have QR code based payment in such places.

Can we solve this? Yes. We can solve this problem using this simple device.

3G/4G connected Income printer

Bank should create this device and distribute to merchants/shopkeepers. This will be a 3G/4G internet connected income printer.

Whenever any money is received in the Bank account or UPI wallet, the machine will print the “Income receipt”. It does not matter if money is received using UPI or NEFT or cheque or Interest.

Suggestion 6– Zero transaction fee

AFAIK, UPI transactions are free. But if you have an online shopping website and you want to accept UPI payment then there are two options available.

  1. Contact Banks and get UPI API access. Banks MAY charge 2 to 5 Lakh rupees per annum. They may charge 0.3 to 0.7% per transaction.
  2. Contact Payment Gateway and they will give you UPI API access. Payment Gateway may charge 1% to 2% fee.

How can we reduce this transaction fee?

  • Competition — Right now, Only banks has access to UPI API. Companies have to partner with banks to get UPI API access. If NPCI allows private players to participate in UPI access then competition will reduce the cost of UPI transaction fees. Most payment gateway will promote UPI because it has lowest transaction fee
  • Govt Subsidy — Govt can provide subsidy to transaction fee
  • TAX-Free — digital payment system is a backbone of the economy. Why Govt put a tax on a Payment system? money transfer related systems help the economy. Indian Govt can declare UPI payments as completely Tax-Free.

Suggestion 7— Promote BHIM Aggressively

A few months back, when I was traveling on a train and my co-passenger was a bank employee. I was surprised to know that these Bankers get strict instructions not to support to promote BHIM app. They get strict instructions to promote and support their own Banking apps.

Indian banks do not support BHIM app.

Govt must promote BHIM. If we assume that Cost to Install the app is 10 rupees. Then in-order to reach 100 Crore public of India, Govt of India, must spend 1000 Crore of publicity of the app.

Govt can give money on referral based install. Let suppose, I am a regular BHIM user. I can ask my friend to install BHIM app with my referral code. I will earn 20 rupees per referral. Many people will become BHIM installer by this kind of referral scheme.

Govt can make a rule for compulsory install of BHIM app on all the new smartphone. Users will get BHIM as pre-installed mobile app.

Suggestion 8— *99# support on JIO

We can send/receive money using dialing *99# on our smartphone or feature. *99# do not need Internet or wifi or smartphone. You can right now transfer/send/receive payments by dialing *99# on your mobile phone. If you are registered for mobile banking then only you can use *99#.

Want to see the power of #99#. Check this.

  • If you want to send me 5 rupees, just dial *99*1*1*9891341086*5# on your mobile. You will be able to send money by dialing this number.
  • If you want to send me 314 rupees, you need to dial *99*1*1*9891341086*314#
  • If you want to check your bank balance, Dial — *99*3#

But there is a problem Right now, JIO does not support *99# USSD system.

JIOPhone is a new phone from JIO, and JIO must support *99# USSD or they should pack at least one UPI app on that phone.


We have a large number of favorable conditions to cashless.

  • Internet data is available till village level
  • SmartPhone and feature phone penetration is huge.
  • Govt’s willpower to support startup eco-system.
  • BlackMoney removal.
  • UPI Technology

We have all possible good factors which are needed to jump in the cashless economy. If you have any other suggestions, do let us know, Please comment.


  1. Generate UPI Payment button for your mobile website —
  2. Generate QR Code from your VPA
  3. *99# — &
  4. UPI Technical Spec —


Copyright © 2017, Narendra Sisodiya, All Rights Reserved. A large number of trademarks are used in the article. These trademarks are properties of their respective companies and are hereby acknowledged.


Narendra Sisodiya has 9 years of industry experience. He has done MTech from IITD and recently started his own startup in FinTech domain. He enjoys programming and architecting system. In past, he has worked with startups like Unicommerce, Clickable, Syncapse, Tejas Networks.

To get the permission to republish this article, Please contact or

12+yrs exp. JavaScript Expert. Full Stack Expert. React, Nodejs Mongo AWS, Terraform Pulumi. IITian, Open Source. Currently Software Architect @