【问题标题】:Credit Point Web application信用点网络应用程序
【发布时间】:2011-09-26 16:19:40
【问题描述】:

我已经开始在电子商务网站上工作。本网站将运行 PHP 和 MySQL,并且需要为用户提供信用系统;他们将能够使用信用卡付款、通过代金券或定期付款充值以及提款。

现在我确实有使用信用卡处理 API 的经验,因此进出付款应该不是问题;然而,问题在于如何安全地存储信用信息。将其存储为单个数字字段并不完全理想,并且可能相当容易暴露。我的想法是将每个用户的所有交易和信用记录保存在一个单独的表中,并且每次他们登录时重新计算他​​们的信用应该是多少。在他们尝试进行的任何交易之前,同样适用。 我想听听您的想法应该如何实施。

编辑:只是为了澄清;我的问题不是关于如何处理信用卡,也不会存储信用卡信息。我将使用众所周知且安全的 API 来处理付款(例如通过贝宝)。但是,根据信用卡付款,我需要以信用形式分配适当的用户积分。这些积分将代表网站上的资金(而资金将保留在公司帐户中,直到用户尝试付款/取款)并将用于付款和取款。同样对于实际的支付处理,我将使用安全 API,但是我不确定如何从应用程序本身的结构角度正确实现信用点。我不想使用简单的单场点系统,因为我认为这非常危险。 我希望这能澄清一点。

干杯

【问题讨论】:

    标签: php mysql web-applications architecture e-commerce


    【解决方案1】:

    这可能不是您正在寻找的答案,但这是我的 2 美分。

    在我个人看来,除非有人 24/7 全天候监控您的专用服务器,否则您永远不应该以任何格式在您的数据库中存储信用卡号,这太冒险了。

    我去年遇到的一个非常好的解决方案是 BrainTree http://www.braintreepayments.com/。您可以建立一个非常好的信用卡支付系统,而无需自己承担任何责任。他们的 API 允许服务器到服务器和透明重定向(将帖子发送到他们的站点,然后重定向回您的站点)交易。同时,他们的Vault 服务允许您在他们的终端存储信用卡,您只需使用服务器中的令牌到服务器 API 来处理付款。您可以将最后 4 位数字(他们在交易详细信息中提供)与 CC 类型和令牌一起存储在您的数据库中,这样您就可以显示一个下拉列表供用户选择他们想要使用的卡,而您只需在与他们的 API 交谈时使用令牌。

    API 有很好的文档,包含完整的示例。我认为你应该调查一下。

    编辑: 我相信您应该有一个表格,正如您建议的那样,将所有历史记录和“总计”字段存储在 users 表格中,可用于在各个地方显示。每次进行交易时,都会计算总数并将其缓存在此字段中以供使用。但是,最好在某些关键位置重新计算,以确保一切正常。即使此字段已公开,但您拥有完整的日志,可以帮助您在需要时重新计算所有内容。

    【讨论】:

    • 谢谢,我会看看它,但是我可能必须对精确的应用程序规格足够清楚。我不会存储信用卡信息(原因有很多),我会使用安全的 API 来处理信用卡付款。然而,基于信用卡支付,我会将积分(信用)归于用户,我不确定确保此类系统架构的安全性和完整性的最佳实践是什么。我希望这能澄清一点,我将编辑我的问题以澄清。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-14
    • 1970-01-01
    • 2010-09-30
    • 1970-01-01
    • 2012-12-14
    • 2011-02-01
    • 2016-01-24
    相关资源
    最近更新 更多