使用URL方案的Google Pay UPI集成-iOS

时间:2019-11-28 07:07:20

标签: android ios google-pay

根据NPCI文档提供的指南,我正在开发一个使用UPI接受付款的应用程序,该指南位于链接 https://www.npci.org.in/sites/all/themes/npcl/images/PDF/UPI_Linking_Specs_ver_1.5.1.pdf 中,我能够在android中复制Intent基本行为根据链接 https://developers.google.com/pay/india/api/android/in-app-payments 上提供的Google Pay文档,但是如果在iPhone中安装了多个UPI支持的应用程序,则我无法使用URL方案在iOS中实现相同的行为。< / p>

例如如果我仅在安装了Google Pay的情况下在iPhone中使用以下代码,则以下代码运行正常

let urlString = "upi://pay?pa=test@dcb&cu=INR&mc=0000&appName=TEST&tn=To&am=1.0&pn=TEST&tr=TEST-1574159602900"

guard let url = URL.init(string: textView.text) else {
            return
        }
UIApplication.shared.openURL(url)

如果安装了多个支持 UPI URL方案的应用程序,那么任何人都可以帮助我找出Google Pay支持的确切URL方案以使用URL方案进行付款。 upi://

3 个答案:

答案 0 :(得分:2)

您可以使用应用程序本机Web视图代替打开浏览器(在应用程序外部) 使用网络搜索create payment request

supportedMethods:“ https://tez.google.com/pay

答案 1 :(得分:2)

根据https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector,印度和世界其他地区的Google Pay之间存在很大差异,因此,如果您想在未安装Google Pay的情况下处理来自印度和世界其他地区的请求(或者存在其他问题,使用开放式网址方案),您需要确定从何处开始付款。 对于印度,应使用AtulParmar的解决方案,对于其他地方,请尝试使用上述文章中的指南。本机Web视图可能但不一定会有所帮助。 祝你好运!

答案 2 :(得分:0)

在进行UPI PSP调用之前,需要在deeplink中为iOS添加前缀。

e.x。 tez:// upi / pay?pa=exeex.payu@indus&pn=exexe%20E-Retail%20Private%20Limited&tr=11426866303&tid=NYK-176044-6770938&am=7.00&cu=INR&tn=UPI%20Transaction%20for%20NYK-176044-6770938