3

我正在开发一个允许一组商家(5-10 人)在线接受信用卡订单的 rails 网站。我计划使用 Activemerchant gem 来处理处理。

在这种情况下,每个商家都会有自己的商家账户来处理付款。我不喜欢这样存储银行信息。这可以通过排队订单并允许商家登录网站、输入他们的凭据并处理订单来解决。

但是,如果我走那条路,那么在我看来,我必须暂时存储客户的信用卡信息,直到商家有机会登录并处理订单,这对我来说是更大的邪恶。

有没有人处理过这种情况?如果是这样,有哪些可用选项以及我应该注意哪些陷阱?在我看来,安全客户信用卡信息是第一优先级,商户账户信息紧随其后。

4

1 回答 1

3

当您使用 ActiveMerchant 创建网关对象时,您指定了商家的信息。因此,我认为您的软件可以代表多个商家进行交易。只需将他们的信息保存在数据库中并根据需要使用。我建议您加密商家的信息。

见 gem attr_encrypted

我不确定您为什么不想存储商家信息。也许您应该对此多说一些。

如果商家使用的是 Authorize.Net,您只需要每个商家的 Authorize.net 登录名和密码。

我建议您在一个支付网关(例如 Authorize.net 或其竞争对手之一)上标准化您的所有商家。处理一个网关已经够难了,为什么要处理多个网关。此外,您可以轻松成为 authorize.net 的经销商,并为您的商家简化流程。

你是对的,你真的不想延迟信用卡交易,直到商家登录并提供他们的商家信息:

  1. 根据商家登录的频率,您将违反商家关于及时收费和批处理的卡协议。

  2. 您无法向最终客户提供快速反馈——他们的收费成功与否?

  3. 您必须存储完整的信用卡号和其他信息。这需要高水平的 pci 合规性。不值得。无论如何,您都被禁止存储 CVV 编号。因此,根据您从最终客户那里获得的其他信息,您的收费将具有较低的资格(对您的商家而言更高的交易成本)。

我的建议是存储商家信息。-- 加密它,不要让商家(或其他任何人)看到它。只允许商家替换他们的信息,不要让他们看到当前信息以便编辑它。这将减少错误的人看到商家信息的安全风险。

于 2010-05-14T04:55:30.350 回答