Payment system I use (let's name it "PS" for later) sends "success notify" url, and then, if payed via VISA/MC, it takes some time to process payment inside PS. If customer pressed "back to shop" during this time, PS refers to "cancel" url (because payment still in process in fact), but payment is already confirmed and order status set to "payed".
Result: customers mailed about "payed order", next with "status changed to pending" and I must immediately go to admin and change order status manually.
In real life it may take from minute (I got SMS and near my PC) to undefined time (I can sleep, out of home or any other reason). So many customers can't download their files (pending!) and asks for payback.
So question is - how to deny automatic order status rollback after it set to "payed"?
My plugin can check itself (just for example):
if ($order->order_status != $pmconfigs['transaction_end_status']) return array(0,'Cancelled') else return($pmconfigs['transaction_end_status'],'');
but it's simply ignored by JS - cancel sequence hardcoded in controllers/checkout.php step7
if ($act == "cancel"){
$this->_cancelPayOrder($order_id);
return 0;
}
Core hack only?
Letzte Änderung: 05.05.2013 01:25