JMWX-5SPG-4PDW-S9TC
Why it matters
Test registry
JSON166 planned slots, of which 147 can ever run from a browser. Planned slots are catalogue entries, not supported payment APIs.
Version 1.0.0, released 2026-10-13. Method IDs are permanent and never reused.
How 166 was arrived at
- 108
- 9 payment apps × the 12 parameter profiles
- 4
- Google Pay alternative launch mechanisms
- 2
- PhonePe alternative launch mechanisms
- 2
- Paytm alternative launch mechanisms
- 16
- Generic UPI: 12 profiles + 4 dispatch variants
- 16
- QR and decoding scenarios
- 12
- Android native harness
- 6
- iOS native
Parameter profiles
P01 Standard merchant intent
pa + pn + tr + am + cu
What it isolates
P02 With transaction note
P01 + tn
What it isolates
P03 With merchant category code
P01 + mc
What it isolates
P04 Category code and note
P01 + mc + tn
What it isolates
P05 Transaction reference URL
P01 + url
What it isolates
P06 Category code and reference URL
P01 + mc + url
What it isolates
P07 Minimum amount
P01 + mam
What it isolates
P08 Category code and minimum amount
P01 + mc + mam
What it isolates
P09 Documented initiation metadata needs identifiers
P01 + mode + orgid (+ sign when supplied)
What it isolates
P10 Bank-issued merchant identifiers needs identifiers
P01 + mid + msid + mtid
What it isolates
P11 Imported exact QR needs import
The imported QR payload, byte-for-byte
What it isolates
P12 Imported exact payment URI needs import
The imported URI, byte-for-byte
What it isolates
All methods
Google Pay 16
GP-001 Google Pay / Standard merchant intent
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-002 Google Pay / With transaction note
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-003 Google Pay / With merchant category code
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-004 Google Pay / Category code and note
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-005 Google Pay / Transaction reference URL
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-006 Google Pay / Category code and reference URL
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-007 Google Pay / Minimum amount
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-008 Google Pay / Category code and minimum amount
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-009 Google Pay / Documented initiation metadata
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-010 Google Pay / Bank-issued merchant identifiers
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
GP-011 Google Pay / Imported exact QR
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
GP-012 Google Pay / Imported exact payment URI
- Platform
- any
- Scheme
- intent:// (Android) · tez://upi/pay (iOS)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- Google Pay for India developer documentation — UPI deep link / Tez scheme.
Expected and 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.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
GP-013 Google Pay / reached through the generic UPI chooser
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P03
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- The result depends on what the operator picked. Attribution is weaker than an app-targeted method, which is exactly why both exist.
- On iOS a upi:// link only resolves if some installed app claims the scheme; many do not.
GP-014 Google Pay / documented tez:// scheme
- Platform
- any
- Scheme
- tez://upi/pay
- Mechanism
- app scheme
- Profile
- P01
- Docs
- Google Pay for India developer documentation — the tez:// UPI deep link.
Expected and limitations
- Google has deprecated parts of the Tez-era surface over time; a failure may mean the scheme was withdrawn rather than that the parameters were wrong.
GP-015 Google Pay / gpay:// scheme
- Platform
- any
- Scheme
- gpay://upi/pay
- Mechanism
- app scheme
- Profile
- P01
- Docs
- Observed alongside the documented tez:// scheme; treated as observed rather than documented.
Expected and limitations
- Observed, not documented. May stop working without notice.
GP-016 Google Pay for Web (merchant integration)
- Platform
- any
- Scheme
- (none — JavaScript API)
- Mechanism
- vendor web
- Profile
- P10
- Docs
- Google Pay API for Web — requires a Google Pay merchant profile and a supported payment gateway.
Expected and limitations
- NOT IMPLEMENTED AND NOT RUNNABLE. It needs merchant onboarding the lab has no part in.
- Counted in the planned 166 and excluded from the runnable count.
PhonePe 14
PH-001 PhonePe / Standard merchant intent
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-002 PhonePe / With transaction note
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-003 PhonePe / With merchant category code
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-004 PhonePe / Category code and note
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-005 PhonePe / Transaction reference URL
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-006 PhonePe / Category code and reference URL
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-007 PhonePe / Minimum amount
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-008 PhonePe / Category code and minimum amount
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-009 PhonePe / Documented initiation metadata
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-010 PhonePe / Bank-issued merchant identifiers
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PH-011 PhonePe / Imported exact QR
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
PH-012 PhonePe / Imported exact payment URI
- Platform
- any
- Scheme
- intent:// (Android) · phonepe://pay (iOS)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public third-party deep-link specification. PhonePe publishes a merchant SDK/PG integration instead.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
PH-013 PhonePe / reached through the generic UPI chooser
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P03
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- The result depends on what the operator picked. Attribution is weaker than an app-targeted method, which is exactly why both exist.
- On iOS a upi:// link only resolves if some installed app claims the scheme; many do not.
PH-014 PhonePe / phonepe:// scheme
- Platform
- any
- Scheme
- phonepe://pay
- Mechanism
- app scheme
- Profile
- P01
- Docs
- No public PhonePe specification for third-party deep links. The scheme is observed in the wild.
Expected and limitations
- UNDOCUMENTED. A working result must not be treated as a supported integration; PhonePe can remove it at any time.
- PhonePe's supported path for merchants is their SDK / payment gateway, which is not a deep link and is out of scope for this lab.
Paytm 14
PT-001 Paytm / Standard merchant intent
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-002 Paytm / With transaction note
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-003 Paytm / With merchant category code
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-004 Paytm / Category code and note
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-005 Paytm / Transaction reference URL
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-006 Paytm / Category code and reference URL
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-007 Paytm / Minimum amount
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-008 Paytm / Category code and minimum amount
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-009 Paytm / Documented initiation metadata
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-010 Paytm / Bank-issued merchant identifiers
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
PT-011 Paytm / Imported exact QR
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
PT-012 Paytm / Imported exact payment URI
- Platform
- any
- Scheme
- intent:// (Android) · paytmmp://pay (iOS)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public third-party deep-link specification. Paytm publishes a merchant payment gateway with issued credentials.
Expected and 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.
- The iOS scheme used here is observed, not vendor-documented. A working result is evidence, not a supported integration.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
PT-013 Paytm / reached through the generic UPI chooser
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P03
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- The result depends on what the operator picked. Attribution is weaker than an app-targeted method, which is exactly why both exist.
- On iOS a upi:// link only resolves if some installed app claims the scheme; many do not.
PT-014 Paytm / paytmmp:// scheme
- Platform
- any
- Scheme
- paytmmp://pay
- Mechanism
- app scheme
- Profile
- P01
- Docs
- No public Paytm specification for third-party deep links. The scheme is observed in the wild.
Expected and limitations
- UNDOCUMENTED. Paytm's supported merchant path is their payment gateway with an issued merchant ID — a different integration entirely, and one the lab deliberately does not pretend to implement.
BHIM 12
BH-001 BHIM / Standard merchant intent
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-002 BHIM / With transaction note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-003 BHIM / With merchant category code
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-004 BHIM / Category code and note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-005 BHIM / Transaction reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-006 BHIM / Category code and reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-007 BHIM / Minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-008 BHIM / Category code and minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-009 BHIM / Documented initiation metadata
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-010 BHIM / Bank-issued merchant identifiers
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
BH-011 BHIM / Imported exact QR
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
BH-012 BHIM / Imported exact payment URI
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- NPCI UPI Linking Specification — BHIM is the reference implementation of the generic upi:// handling.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
Amazon Pay 12
AZ-001 Amazon Pay / Standard merchant intent
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-002 Amazon Pay / With transaction note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-003 Amazon Pay / With merchant category code
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-004 Amazon Pay / Category code and note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-005 Amazon Pay / Transaction reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-006 Amazon Pay / Category code and reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-007 Amazon Pay / Minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-008 Amazon Pay / Category code and minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-009 Amazon Pay / Documented initiation metadata
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-010 Amazon Pay / Bank-issued merchant identifiers
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
AZ-011 Amazon Pay / Imported exact QR
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
AZ-012 Amazon Pay / Imported exact payment URI
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public UPI deep-link scheme. Amazon Pay UPI lives inside the Amazon shopping app.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
WhatsApp Pay 12
WA-001 WhatsApp Pay / Standard merchant intent
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-002 WhatsApp Pay / With transaction note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-003 WhatsApp Pay / With merchant category code
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-004 WhatsApp Pay / Category code and note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-005 WhatsApp Pay / Transaction reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-006 WhatsApp Pay / Category code and reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-007 WhatsApp Pay / Minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-008 WhatsApp Pay / Category code and minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-009 WhatsApp Pay / Documented initiation metadata
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-010 WhatsApp Pay / Bank-issued merchant identifiers
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
WA-011 WhatsApp Pay / Imported exact QR
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
WA-012 WhatsApp Pay / Imported exact payment URI
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public UPI deep-link scheme. WhatsApp's own wa.me links are messaging links, not payment intents.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
CRED 12
CR-001 CRED / Standard merchant intent
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-002 CRED / With transaction note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-003 CRED / With merchant category code
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-004 CRED / Category code and note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-005 CRED / Transaction reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-006 CRED / Category code and reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-007 CRED / Minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-008 CRED / Category code and minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-009 CRED / Documented initiation metadata
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-010 CRED / Bank-issued merchant identifiers
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
CR-011 CRED / Imported exact QR
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
CR-012 CRED / Imported exact payment URI
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
Navi 12
NV-001 Navi / Standard merchant intent
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-002 Navi / With transaction note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-003 Navi / With merchant category code
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-004 Navi / Category code and note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-005 Navi / Transaction reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-006 Navi / Category code and reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-007 Navi / Minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-008 Navi / Category code and minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-009 Navi / Documented initiation metadata
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-010 Navi / Bank-issued merchant identifiers
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
NV-011 Navi / Imported exact QR
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
NV-012 Navi / Imported exact payment URI
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
super.money 12
SM-001 super.money / Standard merchant intent
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P01
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-002 super.money / With transaction note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P02
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-003 super.money / With merchant category code
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P03
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-004 super.money / Category code and note
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P04
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-005 super.money / Transaction reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P05
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-006 super.money / Category code and reference URL
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P06
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-007 super.money / Minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P07
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-008 super.money / Category code and minimum amount
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P08
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-009 super.money / Documented initiation metadata
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P09
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-010 super.money / Bank-issued merchant identifiers
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- app targeted
- Profile
- P10
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
SM-011 super.money / Imported exact QR
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P11
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
SM-012 super.money / Imported exact payment URI
- Platform
- android
- Scheme
- intent:// (Android only)
- Mechanism
- exact replay
- Profile
- P12
- Docs
- No public UPI deep-link specification.
Expected and 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.
- Not runnable on iOS at all through this method.
- Replays imported bytes. The parameters shown are whatever the original payload contained, not the lab's.
Generic UPI 16
GN-001 Generic UPI / Standard merchant intent
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P01
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-002 Generic UPI / With transaction note
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P02
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-003 Generic UPI / With merchant category code
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P03
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-004 Generic UPI / Category code and note
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P04
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-005 Generic UPI / Transaction reference URL
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P05
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-006 Generic UPI / Category code and reference URL
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P06
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-007 Generic UPI / Minimum amount
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P07
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-008 Generic UPI / Category code and minimum amount
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P08
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-009 Generic UPI / Documented initiation metadata
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P09
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-010 Generic UPI / Bank-issued merchant identifiers
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- generic chooser
- Profile
- P10
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-011 Generic UPI / Imported exact QR
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- exact replay
- Profile
- P11
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-012 Generic UPI / Imported exact payment URI
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- exact replay
- Profile
- P12
- Docs
- NPCI UPI Linking Specification — upi:// deep link.
Expected and limitations
- This group is the ONLY one that is meaningfully runnable on an iPhone, and even there it depends on an installed app claiming the upi:// scheme.
- Attribution is to whichever app the operator selected, which must be recorded with the result.
GN-013 Generic UPI / dispatch by anchor element click
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- dispatch variant
- Profile
- P01
- Docs
- Browser behaviour, not a UPI specification. See each browser's external-protocol handling.
Expected and limitations
- Holds the URI constant and changes only the dispatch, so a difference between GN-013 and this method is a BROWSER difference and never a UPI one.
GN-014 Generic UPI / dispatch by window.location assignment
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- dispatch variant
- Profile
- P01
- Docs
- Browser behaviour, not a UPI specification. See each browser's external-protocol handling.
Expected and limitations
- Holds the URI constant and changes only the dispatch, so a difference between GN-013 and this method is a BROWSER difference and never a UPI one.
GN-015 Generic UPI / dispatch by hidden iframe src
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- dispatch variant
- Profile
- P01
- Docs
- Browser behaviour, not a UPI specification. See each browser's external-protocol handling.
Expected and limitations
- Holds the URI constant and changes only the dispatch, so a difference between GN-013 and this method is a BROWSER difference and never a UPI one.
GN-016 Generic UPI / dispatch by form submission
- Platform
- any
- Scheme
- upi://pay
- Mechanism
- dispatch variant
- Profile
- P01
- Docs
- Browser behaviour, not a UPI specification. See each browser's external-protocol handling.
Expected and limitations
- Holds the URI constant and changes only the dispatch, so a difference between GN-013 and this method is a BROWSER difference and never a UPI one.
QR and decoding 16
QR-001 Decode an uploaded QR image
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-002 Decode a QR inside a screenshot
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
- A heavily compressed or small screenshot may not decode. That is a limit of the image, not of the payload.
QR-003 Decode through the device camera
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
- Needs camera permission and a secure context (https). Will not work over plain http except on localhost.
QR-004 Decode pasted raw payload text
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-005 Decode a pasted complete payment URI
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-006 Decode an EMVCo / Bharat QR payload
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
- Card-network templates on a Bharat QR carry values the lab shows raw and does not interpret.
QR-007 Validate an EMVCo checksum
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-008 Preserve unknown parameters
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-009 Detect duplicate parameters
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
- Apps disagree about which duplicate wins; the lab reports the duplication and does not pick a winner.
QR-010 Percent-encoding fidelity
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-011 Signed-payload detection
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
- The lab cannot verify a signature — only the issuing PSP holds the key. It reports presence and the consequences of editing, never validity.
QR-012 Scan a lab-generated unsigned QR
- Platform
- any
- Scheme
- upi://pay (encoded in the QR)
- Mechanism
- qr scan
- Profile
- P03
- Docs
- NPCI UPI Linking Specification; ISO/IEC 18004.
Expected and limitations
- A scan is a DIFFERENT CODE PATH inside a payment app from a deep link. An app that accepts a parameter by scan may reject it by intent, and vice versa — that difference is the entire reason this group exists.
QR-013 Scan an imported original QR replayed by the lab
- Platform
- any
- Scheme
- upi://pay (encoded in the QR)
- Mechanism
- qr scan
- Profile
- P03
- Docs
- NPCI UPI Linking Specification; ISO/IEC 18004.
Expected and limitations
- A scan is a DIFFERENT CODE PATH inside a payment app from a deep link. An app that accepts a parameter by scan may reject it by intent, and vice versa — that difference is the entire reason this group exists.
- Requires an imported payload.
QR-014 Compare original against regenerated payload
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
QR-015 Cross-device scan
- Platform
- any
- Scheme
- upi://pay (encoded in the QR)
- Mechanism
- qr scan
- Profile
- P03
- Docs
- NPCI UPI Linking Specification; ISO/IEC 18004.
Expected and limitations
- A scan is a DIFFERENT CODE PATH inside a payment app from a deep link. An app that accepts a parameter by scan may reject it by intent, and vice versa — that difference is the entire reason this group exists.
- Needs two devices, each recorded separately in the results matrix.
QR-016 Report an undecodable or proprietary QR
- Platform
- any
- Scheme
- (none)
- Mechanism
- decode only
- Profile
- P11
- Docs
- EMVCo merchant QR specification; NPCI UPI Linking Specification; ISO/IEC 18004 (QR).
Expected and limitations
- Decode-only. No app opens and no money can move, so this method is safe to run as often as you like.
- The lab will NOT fetch a web link found in a QR. Following an arbitrary URL that arrived in a QR is how a diagnostic tool becomes a phishing launcher.
Android native 12
AN-001 Implicit ACTION_VIEW with a upi:// URI
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-002 Explicit chooser via Intent.createChooser
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-003 Package-targeted explicit intent
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-004 Enumerate UPI handlers with queryIntentActivities
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-005 Observe the activity result
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-006 Parse the UPI response string
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-007 Capture app version via PackageManager
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-008 Android 11+ package visibility
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-009 App-switch and return timing
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-010 FLAG_ACTIVITY_NEW_TASK behaviour
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-011 WebView versus Chrome Custom Tab dispatch
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
AN-012 Signed intent handling (mode/orgid/sign)
- Platform
- android
- Scheme
- upi:// (via Android Intent)
- Mechanism
- native android
- Profile
- P03
- Docs
- Android Intent and PackageManager documentation; NPCI UPI Linking Specification.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- A browser cannot enumerate installed apps, read an activity result, or learn an app version. Claiming otherwise is the most common lie in this problem space.
iOS native 6
IO-001 canOpenURL for upi://
- Platform
- ios
- Scheme
- upi:// and app-specific schemes
- Mechanism
- native ios
- Profile
- P01
- Docs
- Apple UIApplication and Universal Links documentation.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- iOS restricts scheme queries far more tightly than Android; several questions that are answerable on Android are not answerable at all here.
IO-002 canOpenURL per app scheme
- Platform
- ios
- Scheme
- upi:// and app-specific schemes
- Mechanism
- native ios
- Profile
- P01
- Docs
- Apple UIApplication and Universal Links documentation.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- iOS restricts scheme queries far more tightly than Android; several questions that are answerable on Android are not answerable at all here.
IO-003 UIApplication.open with upi://
- Platform
- ios
- Scheme
- upi:// and app-specific schemes
- Mechanism
- native ios
- Profile
- P01
- Docs
- Apple UIApplication and Universal Links documentation.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- iOS restricts scheme queries far more tightly than Android; several questions that are answerable on Android are not answerable at all here.
IO-004 UIApplication.open with an app scheme
- Platform
- ios
- Scheme
- upi:// and app-specific schemes
- Mechanism
- native ios
- Profile
- P01
- Docs
- Apple UIApplication and Universal Links documentation.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- iOS restricts scheme queries far more tightly than Android; several questions that are answerable on Android are not answerable at all here.
IO-005 Universal Link handling
- Platform
- ios
- Scheme
- upi:// and app-specific schemes
- Mechanism
- native ios
- Profile
- P01
- Docs
- Apple UIApplication and Universal Links documentation.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- iOS restricts scheme queries far more tightly than Android; several questions that are answerable on Android are not answerable at all here.
IO-006 Return path after payment
- Platform
- ios
- Scheme
- upi:// and app-specific schemes
- Mechanism
- native ios
- Profile
- P01
- Docs
- Apple UIApplication and Universal Links documentation.
Expected and limitations
- NOT RUNNABLE FROM A BROWSER, AND THE HARNESS DOES NOT EXIST YET. Counted in the planned 166 and excluded from the runnable count.
- iOS restricts scheme queries far more tightly than Android; several questions that are answerable on Android are not answerable at all here.