The UPI system is great, unless you are a tourist, who doesn't have access to it. On a recent trip to India we came across many weird payment rules that made our trip much harder than it should have been, it felt like going back to the early 2000s where you had to pay cash for everything if you travel abroad.
Although Visa is everywhere, most places do not accept foreign cards. We stopped in a rest stop on a highway and they had a large food court with a mixture of Indian and Western brands - had to pay cash for all of it, as my card was always rejected by their bank.
One time I had to pay for my accomodation by cash, as their bank would not allow them to accept foreign cards or foreign bank transfers. I had pay 70,000rs (around $850) which meant going to a cash machine and taking out repeated transactions of 10,000rs (the ATMs also have limits for foreign cards). If you aren't familiar with Indian cash, that's a big stack, around 160 notes. It felt like I was doing something illegal :D
If you try to buy something online, almost everything expects you to use UPI. If they do accept cards, then they almost always have the same rule about foreign cards. For example we wanted to buy bus tickets from Red Bus, but couldn't. The only places we found that consistently worked was Swiggy and Uber.