I want to create something like this

upi://pay?pa=ACCOUNT_NUMBER@IFSC_CODE.ifsc.npci&pn=MERCHANT_NAME&cu=INR

If I use the above format people are not able to pay using that link. It shows the error Transaction Limit Exceeded. This error pops up even with customers who have not breached the limit set by their bank.

I suspect that the QR is not recognised as a merchant QR.

Is there any URI parameter which I should add to make it into a merchant URI.

Also I picked up a few UPI documentation links but none of it seems to work. Please suggest where could I find the latest official documentation.

Outdated Links

https://www.npci.org.in/sites/default/files/UPI%20Linking%20Specs_ver%201.6.pdf https://www.npci.org.in/sites/all/themes/npcl/images/PDF/UPI_Linking_Specs_ver_1.5.1.pdf

The above links are giving a 404 error

Could anyone post the latest working link as of 2023 October 31?

1

There are 1 answers

0
Debanjan Dutta On

Because, I have not much reputation to comment, I am straightaway answering your Questions with follow up questions and sharing self-experience:

This event heavily depends on the following questions:

  • Which UPI app are you using?
  • Which mode are you using? (QR or Hyperlink)

For QR:

  • Although it is hard to believe but BHIM, the pioneers of UPI App, itself cannot support it (for QR and Hyperlink both). It gives an error called ‘Risk Threshold Exceeded’.
  • I have followed the same structure but with additional field mc and am, denoting merchant category and amount to pay. If your use case doesn't require am try with mc only. In such case, GPay PhonePe do support QR pay. And the UPI app by HDFC Bank provides all features one of them is mam for minimum amount support.
  • In case am is there and it's value is greater than 2000, by NPCI scan from gallery is prohibited.

For Hyperlink:

  • As I understood after lot of trials, all prominent PSP app or UPI apps for security reasons do not support hyperlinks of same text that has been QRed. They do certainly open the link but after UPI PIN entering it flashes Transaction Limit Exceeded as you pointed out correctly.
  • Well this doesnt happen if the fields like signkey, tr transaction reference ID are present. These are actually useful if UPI Apps return value can somehow tracked. (Useful for App development.) But in your use case I can almost guarantee you in all situations you receive that error message if you are using Hyperlinking without all parameters.

The reason behind not working in PSPs are their ill-implementations or over-secure implementation. In the name of security they always require the user to first open their app that actually creates a secure session for you and then make any transaction. These actually prohibit the spirit of UPI, ie despite being open, the tools or the ecology created around by apps, make it almost dependent through payment gateway.

But be assured if you are using QR medium with mc (and am), apps like GPay, PhonePe, HDFC Banks UPI work fine.