使用Activemerchant gem的多个商家帐户

时间:2010-05-13 23:43:42

标签: ruby-on-rails activemerchant e-commerce

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

在这种情况下,每个商家都有自己的商家帐户来处理付款。像这样存储银行信息不是我的粉丝。这可以通过排序订单并允许商家登录网站,输入凭证和处理订单来解决。

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

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

1 个答案:

答案 0 :(得分:3)

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

请参阅gem attr_encrypted

我不确定您为什么不想存储商家的信息。也许你应该多说一点。

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

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

你没错,在商家登录并提供商家信息之前,你真的不想推迟信用卡交易:

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

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

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

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