15

我想知道接受需要3-D 安全验证的信用卡付款的最佳方式是什么。目前结账流程是这样的:

  1. 客户提交付款
  2. 支付网关返回一个错误,指出该卡需要 3-D 安全代码处理。在响应中返回 ACS URL
  3. 我将用户重定向到发卡行的验证站点,并在验证完成后传递回调 URL 供 ACS 重定向
  4. 客户输入验证码,ACS 将重定向到回调 URL,并带有指示验证成功的授权令牌
  5. 要完成该过程,我必须将带有授权令牌的原始请求重新提交到支付网关

我的问题是在最后一步。由于我需要重新提交原始请求(其中包含客户的信用卡信息),因此我需要将其临时存储在某个地方,以便在调用回调 URL 时可以检索它。有没有替代方案?

我正在考虑尝试 iframe 解决方案:原始表单永远不会关闭,我在 iframe 中显示验证过程。当该过程完成时,即调用回调 url,我隐藏 iframe 并使用所需的值更新原始表单并重新提交。有没有人尝试过这种技术?


4

3 回答 3

9

正如您在链接的文章中可能已经注意到的那样,在 iframe 中显示银行页面是首选选项。尽管如果您进一步阅读,它会提供其他安全功能,特别是在网络钓鱼防护方面。因为您的客户不知道他真正将密码发送给谁。

但是回到您的提议,如果您在 iframe 或弹出窗口中显示它,您将能够将原始表单存储在您的基本页面上,然后使用收到的身份验证令牌重新提交它。这是一个非常好的主意,因为您不需要执行任何 PCI 合规性工作。因此,不仅对您来说更容易,建议您使用它:)。

于 2012-12-07T11:48:18.790 回答
3

使用 Sage Pay(我会假设其他支付提供商),您无需在最后一步再次传递完整的订单信息,只需来自 3D 安全表单的响应代码和唯一的交易参考。因此不需要存储卡的详细信息。

对我来说,过程是:

  1. 卡详细信息等以及提交给支付网关的唯一交易参考。
  2. 支付网关以 3D 安全详细信息(ACSURL 和参考代码)进行响应。
  3. 将用户重定向到他们输入详细信息的 3D 安全表单(传递参考代码和回调 URL)。
  4. 验证码传回回调 URL。
  5. 服务器必须将步骤 1 中的验证码和相同的交易参考发送到支付网关。
  6. 支付网关以成功/失败信息进行响应。
于 2014-06-13T08:32:34.730 回答
-1

我最近用 3d 安全完成了一些工作。根据我的个人经验:

  1. 我将带有转发 url 的信用卡信息传递给银行 3d 安全 url。
  2. 用户被重定向到 3d 安全 URL 并提示输入他的密码。
  3. 当他点击继续时,用户将被传递到带有授权令牌的转发 url——信用卡信息也被传递。
于 2013-12-11T00:57:19.900 回答