如何在本地移动应用(如IOS)上实施3D安全(Visa / MasterCard SecureCodevalidation)

这个问题是特定于本地移动应用程序(例如IOS,Android,WP应用程序,实际上并不使用浏览器访问网站)。

我们有一个现有的电子商务网站,支付大多数主要信用卡的付款,并通过3DSecure计划(实施为VisavalidationMasterCard SecureCode )执行付款人身份validation。 这有助于消除欺诈并减less费用。

现有的实施方式是,在结帐和付款阶段,将客户从您的网站转移到银行/发卡机构网站,客户可以在其中input之前设置的密码,以确认他们确实是持卡人。 然后,网站会将客户redirect到您的网站,并提供完成交易所需的信息。 (还有很多,但这是它的基本前提)。

因此,我们正在努力为iOS(最初)创build一个本地应用程序,不仅仅是用户通过Safari浏览器访问网站,而是一个ObjectiveC实现,它提供了丰富且专注于用户界面的本地体验,并且易于用户使用操作。

我们不能做的是从本机应用程序中打开浏览器窗口,以便用户redirect到某处,进行身份validation,然后redirect回去。 原因是:

  • 这是一个原生的应用程序,而不是一个网站,所以没有地方(URL)redirect回。
  • 用户体验是从一个干净的用户界面切换到另一个网站上的一个眯着眼睛和不同风格的网页表单,然后回来。

有没有人不得不尝试使用本机应用程序( WP / IOS / Andriod )来实现3D安全 (VbV / SecureCode)? 可以这样做吗? 你采取了不同的方法吗?

谢谢阅读!

Solutions Collecting From Web of "如何在本地移动应用(如IOS)上实施3D安全(Visa / MasterCard SecureCodevalidation)"

即使在本地应用程序中,您也应该使用embedded式WebView组件打开银行ACS服务器url,让用户在其中input密码或其他代码,并通过银行validation并取回应用程序的结果,以便进一步转发到您的卡处理API。

至于Android,你可以看看它是如何在我的帮助类 – https://github.com/LivotovLabs/3DSView (在做了一些3D安全支持的应用程序之后,我决定为这样的任务创build一个微型组件)

希望这可以帮助

由于可怕的用户体验,我们与收购方(Global Payments aka HSBC)做出了一个早期决定,不在原生应用(甚至移动网站)上实施3DS。 我们没有退款问题或用户问题。 您应该与收购方谈论此事,并与您的支付网关联系 – 在我看来,您应该closures手机本地/networking的3DS,直到certificate为止。 否则客户将不能完成交易。

也就是说,像Mopowered这样的公司声称通过更好的实施解决了这个问题。 我还没有看到这些。

您可以使用自定义url-schemes解决3D安全redirect问题。 如你所说,这不是一个好的用户体验,但是我们在我们的ios项目上这样解决了这个问题。

正如其他人所提到的,购物者在本地authentication过程中的体验太差,不能考虑实施。

但是,随着3D Secure 2.0的推出 ,3D Secure提供商将能够提供原生的SDK,允许以更less的放弃率进行身份validation。