Proof of concept: scan a UPI QR, choose to pay with a preset amount, a custom amount, or no amount at all, then hand off to your UPI app.
upi://pay deep link and redirects the browser to it, which is what triggers Android's "choose a UPI app" sheet (GPay, PhonePe, Paytm, BHIM, etc). iOS does not register a system-wide upi:// handler, so this step is Android-first by design of the UPI spec itself.