2012-12-17 77 views
0

Magento 1.6.1Magento - Authorize.net - 獲取過期交易的付款更新

我已經爲客戶的商店設置了Authorize.net(AIM)。以前,他們使用保存的CC方法並在Authorize.net的商戶終端中手動輸入信息。

其中大部分按預期工作,但對於Authorize.net標記爲「可疑欺詐」的交易,如果客戶在授權過期前未手動更新交易,則使用Magento中的「獲取付款更新」因爲交易已過期而失敗(我相信這是僅限於授權交易的五天)。

對於客戶端來說,似乎在Magento中更新此訂單的唯一方法就是簡單地刪除訂單,因爲Paygate模型不知道過期交易。執行「獲取付款更新」只需返回「此付款沒有更新」。

我已經修改了文件:/app/code/core/Mage/Paygate/Model/Authorize.net以具有問題#27117(http://www.magentocommerce.com/bug-tracking/issue?issue=12991 - 必須先登錄才能查看)中所述的正確API URL。這解決了按鈕不適用於所有其他命令;然而這並不能解決我所描述的問題。

是否有人熟悉Authorize.net的AIM API,以便我們可以將這些訂單在Magento中更新爲有意義的東西(取消等)而不必刪除訂單?我認爲這應該是一個向Magento添加新訂單狀態的情況,檢查更新是否爲「過期」狀態,並將訂單設置爲新創建的訂單狀態。

- 編輯 -

我只跑了上述文件中的差異,發現Magento的1.7.0.2包括_isTransactionExpired()方法,好像這將是該修補程序。它可以像用新版本更新這個模型一樣簡單嗎?

回答

0

在這種情況下,我手動將app/code/core/Mage/Paygate/Model/Authorize.php中提到的_isTransactionExpired()方法包含在app/code/core/Mage/Paygate/Model/Authorize.php中,事情看起來很正常,看起來似乎按預期工作。

現在已經過了一個半月了,我沒有讓客戶回來告訴我事情沒有起作用,所以我認爲這解決了問題。

-1

我發現Magneto Issue#27117(http://www.magentocommerce.com/bug-tracking/issue?issue=12991)在1.6和1.7版本中解決了失敗的Authorize.net「獲得支付更新」

+1

正是我在我的問題中提到的。 – pspahn