代码之家  ›  专栏  ›  技术社区  ›  Cu1ture

使用ActiveMerchant和特定API之间的主要区别是什么?

  •  1
  • Cu1ture  · 技术社区  · 10 年前

    我刚接触rails,并开始学习如何集成支付处理。我试图找到一些方向,让我把学习的重点放在支付处理器集成上。

    据我所知,ActiveMerchant是从Shopify中提取的,它允许您轻松集成许多主要支付网关,如Stripe和Braintree。我还了解到,这些平台也有自己的API用于其特定服务。

    如果将来有可能想要切换支付处理器,或者如果您打算在不同的站点使用不同的处理器,那么使用activecommercer似乎有明显的好处。

    我的问题是,使用ActiveMerchant作为特定API的替代,有哪些缺点。如果我使用ActiveMerchant,我是否会对安全性承担更大的责任?

    我问这个问题的原因是,当我可以学习ActiveMerchant并在所有提供商中使用它时,我不想将时间和精力集中在学习特定的API上。

    谢谢:)

    1 回复  |  直到 10 年前
        1
  •  2
  •   Richard Peck    10 年前

    我只使用过一次ActiveMerchant(用于电子商务系统),因为它与我们所需的各个支付网关集成

    --

    使用案例

    “本机”API的问题是,它们有一种习惯,即在您最不期望的时候进行更改,这使得最初实现它们的所有自定义(野蛮)工作在突然发生故障时很难调试

    我发现ActiveMerchant是Rails开发与开发之间的一个很好的“缓冲区”;支付提供商。如果Shopify为其用户处理支付而获得报酬,那么他们将提供最新的体验,这无疑是一件好事

    尽管您仍需要自己管理大部分集成,ActiveMerchent无疑是一个非常可靠的 abstraction layer 用于接受付款

    --

    缺点

    根据我的经验,主要缺点是ActiveMerchant可能不支持特定API的一些更“小众”功能(例如货币转换或类似功能)。尽管所有人都认为Shopify非常自由地根据[拉]的要求提供功能,但您通常仍必须遵守其规范

    另一件需要考虑的事情是,您可能必须“弯曲”API以适合您的应用程序。在我们公司,我们有很多不同的方式来创造我们所需要的财富,因此,我们不想依赖于与我们的供应商“接受付款”。

    我们喜欢创造综合体验,这总是意味着让人们有机会购买高级账户或应用内升级等产品 "micro payments" (我们严格来说不是这样;我们只是有不同的方法来吸引买家),你开始需要通过使用非常定制的实现来使API工作

    --

    新闻报道

    从开发人员的角度来看 主要的 ActiveMerchant提供的好处是,您可以“覆盖”这么多不同的支付提供商。

    回顾我对API更改的评论,这意味着如果您将应用程序与ActiveMerchant接口正确集成 应该 能够与众多不同的支付提供商合作

    列表 supported providers is monumental -这意味着,如果你想将你的支付提供商从Paypal更改为Stripe或其他东西,你可以通过不大量编辑你的核心代码来做到这一点

    --

    资源

    最后,因为ActiveMerchant是一个基本标准,所以您将获得比使用各种API直接实现更多的支持。这反映在 likes of Railscasts :

    enter image description here