将订单ID发送到Authorize.net而不是Magento中的交易ID

时间:2013-05-08 15:59:58

标签: php magento magento-1.7

我正在使用Magento 1.7中的authorize.net模块来处理信用卡交易。现在,发送交易ID,而不是订单号。有没有办法发送订单号?

我会在app / code / core / Mage / Paygate / Model / Authorize.net的第1367行更改 - > setLastTransId($ response-> getTransactionId())到getOrderID吗?

当然,我不会更改核心文件,我会先将它复制到本地。

1 个答案:

答案 0 :(得分:1)

看起来目前Magento Community Edition 1.7中的Authorize.Net支付方法将订单增量ID号(通常被认为是订单号)发送到XInvoiceNum字段中的Authorize.Net网关。请参阅app / code / core / Mage / Paygate / Model / Authorizenet.php中的第1154至1156行:

    if ($order && $order->getIncrementId()) {
        $request->setXInvoiceNum($order->getIncrementId());
    }

从Magento获取更多订单信息到Authorize.Net的一种可能方法是使用Authorize.Net的CIM(客户信息管理器)版本的网关,以及Magento支付方法,如我们的:

http://www.storefrontconsulting.com/authorize-net-cim-saved-credit-cards-extension-for-magento/