2015-07-11 23 views
1

我建立了2個使用opencart 2的網站(在Opencart 1上有更多),並且都設置爲接受Sagepay服務器支付,但它現在發現兩個站點當Sagepay試圖與opencart交談時,Sagepay付款失敗。這意味着沒有失敗的電子郵件通知發送給店主,並且銷售在Sagepay取消?你可以想象這兩家店主都不開心。我聯繫了Sagepay,看看發生了什麼,他們告訴我付款失敗,出現以下錯誤,但就Sagepay而言,付款已通過所有測試,但由於致電網站無法將正確回覆發送給Sagepay,他們不得不取消交易!供應商系統返回無效或錯誤,以響應POST通知 - Sagepay服務器

看着Sagepay是如何工作的,它煤層sagepay回報autorisation到Opencart的,然後Opencart的不得不說其是否會接受基於正在發送的付款,而且接縫這就是Opencart的2未能正確響應?

這又是一個OC2的錯誤?

能欣賞到這人來,我怎麼把這個權利

一個站點上的OC 2.0.2.0,另一種是2.0.3.1 一切都設置正確的支付模塊和IP地址記錄與sagepay它只是支付授權後的一個問題。

交易完成但供應商系統返回INVALID或ERROR 響應通知POST。交易由供應商取消。

這是一個非常大的問題,並且不知道如何解決這個問題,因爲Opencart 2的目的是能夠開箱即付sagepay付款,一旦管理部分添加了一些設置,但它沒有正確設置它的接縫..我不相信沒有人遇到過這個?

+0

這可能是由於簽名值不匹配 - Opencart可能會拒絕該交易。協議3中還有一些額外的字段 - 可能值得檢查...... –

回答

0

我使用內置的鼠標付費調試選項告訴我這是一個MD5哈希不匹配,在進一步挖掘並閱讀官方Sage支付服務器文檔後,在Bold Red中發佈了一條通知,聲明確保Vendor名稱是全部以小寫提供,我的管理部分是標題案例。它看起來像Opencart 2的創建者已經看過這個,我只是在sagepay_server.php控制器文件中的MD5比較之前使用php的strtolower函數將供應商名稱轉換爲小寫。當然這可以通過在sage pay server admin部分輸入供應商名稱作爲小寫來避免。但看到輸入時沒有註釋,opencart應該將供應商名稱轉換爲小寫,正如我所做的那樣,以確保不會出現此錯誤。

相關問題