Magento 多个 Authorize.net 网关

Posted

技术标签:

【中文标题】Magento 多个 Authorize.net 网关【英文标题】:Magento Multiple Authorize.net Gateways 【发布时间】:2011-04-29 08:11:13 【问题描述】:

我有一个 CAD 和 USD 网关帐户,用于处理信用卡付款,这两个帐户都来自支持 Authorize.net API 的支付提供商。我已经使用 Magento 的内置 Authorize.net 支持成功配置了一个...但是如何配置第二个 Authorize.net 网关以在我的商店中使用?

【问题讨论】:

【参考方案1】:

如果您为每种货币分配单独的网站,您可以重复使用现有的 authorize.net 网关。它们实际上不需要是具有自己域的独立网站,只需在“系统”>“管理商店”菜单中指定为网站即可。然后在配置中更改左上角的配置范围下拉框以依次选择每个网站,在货币设置部分只允许一种货币,在付款方式部分中,您可以匹配您的特定网关帐户。

这种方式让您可以继续在所有商店使用相同的产品,只要基础货币不变,它也会继续自动在货币之间转换。

【讨论】:

啊,这似乎比我想的要好。我认为我们实际上会利用我们拥有的其他一些域(我们有 .com 和 .ca...),但我需要为此获得适当的 SSL 证书。非常感谢您的回答,这听起来是正确的做法。 由于您已经拥有 .ca 域,因此利用它是有意义的。祝你好运。 这是一个比我的解决方案更好的解决方案 - 不错@clockworkgeek 使用此方法是否还需要您实施网站切换器,以便每组客户都可以使用正确的网站结账以兑换他们的货币? @MarcGuay 是的。如果您也像balleyne 那样做并且拥有不同的域,那么每个客户将(希望)已经在正确的网站上。【参考方案2】:

这可以做到,但基本上需要您复制 Authorize 模块并更改所有命名空间。这需要一些麻烦,但首先将app/code/core/Mage/Paygate 模块复制到app/code/local/Yourcompany/Paygatecad 之类的地方,然后继续重命名类(Mage_Paygate_Model_Authorizenet 变为Yourcompany_Paygatecad_Model_Authorizenet 等)。注意区分大小写的文件和类名,我建议您使用所有前导大写,后跟小写。

app/etc/modules 中创建Yourcompany_Paygatecad.xml 模块声明,并在adminhtmlfrontend 中复制布局和模板文件以使用您的新模块名称。您还需要编辑system.xmlconfig.xml,以便配置值不会在命名空间中发生冲突。 grep 是你的朋友。

毕竟,您应该在系统>配置>付款方式中获得一个新的付款方式,您可以使用 CAD 详细信息进行配置,并且块应该在结帐流程中呈现。

您可能已经从我所说的内容中了解到,为了避免冲突,需要进行一些更改,并且您需要真正很好地测试这一点。但它应该工作。我不知道有任何替代方法可以实现这一点......当我想要另一种付款方式的两组不同选项并且它有效时,我已经成功地做到了这一点,但那是为了社区扩展,而不是 Magento 核心,并不是说从哪里复制它真的很重要。

--------编辑-----

理想情况下,您应该只复制和修改etcsql 文件。这样一来 原始Mage_Paygate 模型和控制器仍将被使用(为升级/补丁提供最佳保护),您只需更新配置值以指向 CAD 实例。我无法确认这是否可行,但如果可能的话,我会尝试。

HTH, 京东

【讨论】:

谢谢,这正是我所要求的,但我认为clockworkgeek 的解决方案可能比我想的更有意义。

以上是关于Magento 多个 Authorize.net 网关的主要内容,如果未能解决你的问题,请参考以下文章

使用两个 Authorize.Net 帐户设置 Magento 的支付桥

Magento:使用 Authorize.net 网关检索付款信息

Magento中的Authorize.net付款在选择时不显示信用卡表格

如何在 magento 中复制 authorize.net 模块?

Magento - 自动重定向到配置的支付网关之一

Verisign/Authorize.Net 可以将交易拆分为多个账户吗?