php - 存储客户付款详细信息 - PCI 合规性

标签 php mysql payment-processing pci-dss pci-compliance

我正在与一个新客户合作一个项目,由于业务类型的原因,他们在获取商家帐户来处理在线支付时遇到了一些问题。该系统的工作方式与 Just Eat/Expedia 等类似,因为客户在网站上下订单,然后将订单传递给 field ,网站收取佣金。

客户询问我们是否可以将客户付款详细信息存储在我们的数据库中(加密),然后将它们传递给会场,以便使用他们的内部卡系统自行处理。我知道这存在 PCI 合规性问题,但我无法直接回答我们需要做什么。我已经与几家托管公司谈过,其中一家说我们需要一个具有独立 Web 和数据库服务器的集群,而另一家则说我们不需要。我以前从未做过这样的事情,我通常只是将支付处理外包给 SagePay 等公司。

这是建议的付款流程:

  • 客户在网站上下订单
  • 付款详情存储在数据库中
  • 通过电子邮件向客户发送订单确认信息。 field 通过电子邮件发送订单通知。如果场馆接受订单,订单和付款详细信息将传输以供内部离线处理
  • 一旦场馆内部付款,订单即被确认,付款细节将从网站数据库中删除
  • 客户会收到最终订单确认邮件

我想确保任何流程都是正确的,我最不希望看到的是网站受到攻击,付款细节被盗,并承担任何损失!

如有任何建议,我们将不胜感激。

最佳答案

您没有包含实际问题....

但是:PCI 合规性并非易事;有多个级别的合规性,standards有点密集......一般来说,只要你不存储付款细节,就相对容易遵守。如果您确实存储付款细节,您的合规性要求就会变得复杂得多,并且可能包括审查员工等流程。

您打算将付款详细信息转移到场馆的意图看起来像一个巨大的危险信号 - 您基本上是在向第三方提供信用卡详细信息,我作为消费者不会对此感到高兴,而且几乎肯定在任何地方都不允许的 PCI 标准。

值得与专业的支付网关提供商讨论您的选择 - 例如,大多数信用卡交易都包含“授权”调用,该调用会提交卡的详细信息和金额;该服务检查卡是否适合付款,并“围栏”帐户上的金额,并发回授权码。实际的“结算”可能稍后发生——某些卡最多需要 10 天,并且可以只使用授权码,而不是完整的卡详细信息。专业的支付提供商会知道您有哪些选择。

您可以与您的场所共享授权代码,以允许他们收款(尽管这几乎肯定需要你们都使用相同的网关提供商)。

更改您提到的流程以包含身份验证/解决逻辑会很简单:

  • 客户在网站上下订单
  • 您的站点使用信用卡详细信息和商店授权代码发出“授权”。
  • 通过电子邮件向客户发送订单确认信息。
  • field 通过电子邮件收到订单通知。
  • 如果 field 接受订单,您执行“结算”交易
  • 您向会场确认订单详情
  • 客户会收到最终订单确认邮件
  • 每周/每月/无论您向每个场所发布报告以显示未付金额,并向他们发送支票或其他任何内容。

关于php - 存储客户付款详细信息 - PCI 合规性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10583465/

相关文章:

php - 更新时将 CURRENT_TIMESTAMP 添加到 MySQL 记录

mysql - MYsql 中多对多使用哪个数据库引擎?

payment-gateway - 仅使用 Authorize.Net : Making Multiple Partial Captures on a Single Credit Card Charge Authorization

database - 支付交易与数据库交易

php - 使用 JavaScript 实现支付系统不好吗?

javascript - 选择文件后立即上传图像

php - 我如何将 CSS 规则应用到 Wordpress 插件

Mysql,如果所有列都不存在则插入

php - 如何检查 PHP 中多个日期范围之间的重叠?

javascript - 删除 Squarespace 中标签之间的逗号