GP-010
Needs your identifiers
Google Pay — Bank-issued merchant identifiers
No mid and msid and mtid set, so this is the same payload as the plain control.
Why
Profile P10 is defined by mid and msid and mtid, and neither your UPI profile nor this run supplies one — so comparing P10 against P01 would be comparing a method against itself and reading the noise as a finding. Set mid and msid and mtid on the profile first, or run P01 and know what you measured.
pa — A payment needs a payee address. Nothing can be launched without pa.
Missing mid — values a bank, PSP or acquirer issues and the lab must never invent.
What would unblock it
Needs the merchant / store / terminal identifiers your acquirer actually assigned you. An invented mid is not a merchant identifier, it is a string, and a result against one would be meaningless.
Scan with the phone you want to test.
Parameters
pa
tr
LABAK4MFR3JAAAN
am
2.00
cu
INR
Advanced details
tez://upi/pay?pa=&tr=LABAK4MFR3JAAAN&am=2.00&cu=INR
- Launch
- app scheme
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Profile
- P10 — P01 + mid + msid + mtid
- Platform
- Android + iOS
- Browser
- Android: Chrome or any browser that follows intent: URIs. iOS: Safari, only where the app registers a scheme.
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme. (vendor documented)
- Reference
- LABAK4MFR3JAAAN
- Registry
- 1.0.0
Whether an acquirer-issued merchant triple changes the receiving experience.
Expected
Google Pay opens on its payment confirmation screen showing the payee and ₹2.00. Whether an acquirer-issued merchant triple changes the receiving experience.
Limitations
- A browser cannot tell you whether an app is installed. "App did not open" and "app is not installed" look identical from here; AN-004 in the Android harness is what separates them.
Prerequisites
- A saved UPI profile with a payee address.
- Needs the merchant / store / terminal identifiers your acquirer actually assigned you. An invented mid is not a merchant identifier, it is a string, and a result against one would be meaningless.
- On iOS: Google Pay installed and registered for tez://upi/pay
- On Android: Google Pay installed (com.google.android.apps.nbu.paisa.user).
How the lab runs it
Android: an intent:// URI naming com.google.android.apps.nbu.paisa.user, with no browser_fallback_url so a failure to open stays visible. iOS: the tez://upi/pay scheme carrying the same query.