網站支付寶接口錯誤代碼:TRADE_DATA_MATCH_ERROR怎麼處理? 做過支付寶支付接口應該都知道,這是因為訂單重復的原因所造成。
今天在處理客戶一網站的時候,經客戶反饋,在顧客通過支付寶提交訂單出現“錯誤代碼:TRADE_DATA_MATCH_ERROR”,經過在支付寶對接平台手冊上的查閱問題出在,顧客已經在支付寶平台上將訂單生成,只是還未支付就關閉了的支付窗口,在次進入客戶網站會員後台點擊支付,這時候出現了上面的錯誤代碼“TRADE_DATA_MATCH_ERROR”,這說明肯定這個訂單的屬性有變動,一般是價格有變動,正好我們為客戶建設的一個商城網站後台支持修改價格,這才導致上面的問題。
解決方案:重新修改訂單號
不管你的屬於什麼原因,只要是出現"錯誤代碼:TRADE_DATA_MATCH_ERROR",都可以修改訂單號解除錯誤,我們可以在後台修改價格的同時去改變訂單號,如下面是我給客戶改的
$newsddon=ReturnDdNo();
query("update 表 set pretotal='$pretotal',ddno='$newsddon' where 條件"); //修改價格的同時 修改訂單號
function ReturnDdNo(){ //隨機生成訂單號
$ddno=time().rand(10000,99999);
return $ddno;
}
當然上面的代碼只是我所用的程序,我們只需要在修改訂單號價格的文件中,相應的重新生成/修改一個新的訂單號就可以了。