I have the utmost respect to people who makes UPI work. Made even the old people in the nation completely go digital for payments - a feat unparalleled in the world.
22B transactions a year mean an average of ~700 QPS for the NPCI switch. Of course the traffic is not uniform, it probably peaks at many times that number, but that still doesn't sound that bad - for comparison, a quick Google tells me Nasdaq TotalView ITCH feed peaks at 100k+ QPS at market open.
The right comparison for Nasdaq's order processing volume or messaging volume would be India's National Stock Exchange (NSE). It does more executed orders per day than nasdaq.
I worked on scaling UPI a few years ago. Real-time Payments is vastly more complex as it is much more distributed - each transaction involves the two banks holding funds, two end-user apps (and their banks), and the network (npci) – for the payment to complete end to end, multiple message exchanges need to happen between these parties while the user at both ends are waiting. So, if you measure the scale in messages/sec it would 10-25x higher.
Real-time payment rails that works 24/7 365 days a year from any bank to any bank (domestic, no exceptions) for free is truly a game-changer. Compare that to US payment rails which is slow and expensive. Apart from UPI, India has 3 more payment rails – NEFT (similar to ACH – batch settlement), IMPS (similar to UPI, instantaneous - but different user experience), RTGS (real-time, intermediated by the central bank RBI, but only for high-value transactions) – all are 24/7/365 and free. Then, there's credit card rails – apart from Visa and Mastercard, India also has RuPay which has much lower interchange rate.
A great lesson for system design job interviews - if this is a popular payment system in a country with 1.5 billion people, your theoretical system you're designing for a small company cargo culting Google interviews will not likely support millions or even tens of thousands of average TPS.
Yep. Here's the accurate Month-to-date stats published daily by the network operator NPCI https://x.com/NPCI_NPCI. If you want official stats across all banks, across all payment rails, look at the central bank (RBI)'s website.
It’s extremely good, at least in terms of user experience and how practical it is. Adoption is massive and at small chai shops it makes transactions a breeze, allowing businesses to serve more volume. The downside is making it incredibly frustrating for foreigners to pay using this as it’s tied to your government ID that your bank has authorized.
It's the intention and use case. The government want to reduce the fund leakages and reduce corruption, directly transfer the money to citizens, reduce transaction costs. Hence it works.
The government does not track all the transactions. You need a police FIR, to review these transactions.
In short, Indian government does not track or they don't have the scaling to track. But they can do it, if there is any criminal complaint.
I worked on scaling UPI a few years ago. Real-time Payments is vastly more complex as it is much more distributed - each transaction involves the two banks holding funds, two end-user apps (and their banks), and the network (npci) – for the payment to complete end to end, multiple message exchanges need to happen between these parties while the user at both ends are waiting. So, if you measure the scale in messages/sec it would 10-25x higher.
Real-time payment rails that works 24/7 365 days a year from any bank to any bank (domestic, no exceptions) for free is truly a game-changer. Compare that to US payment rails which is slow and expensive. Apart from UPI, India has 3 more payment rails – NEFT (similar to ACH – batch settlement), IMPS (similar to UPI, instantaneous - but different user experience), RTGS (real-time, intermediated by the central bank RBI, but only for high-value transactions) – all are 24/7/365 and free. Then, there's credit card rails – apart from Visa and Mastercard, India also has RuPay which has much lower interchange rate.
They put out a lot of useful stats here https://www.rbi.org.in/Scripts/Statistics.aspx
Daily payment settlement stats here: https://rbidocs.rbi.org.in/rdocs/content/docs/PSDDP04062020....
The government does not track all the transactions. You need a police FIR, to review these transactions.
In short, Indian government does not track or they don't have the scaling to track. But they can do it, if there is any criminal complaint.