Я обновляю плагин оплаты в нашем приложении для работы с новой версией opencart 2.0 и выше.
Я следовал инструкции, найденной на Добавление страницы администратора в OpenCart версии 2 и все почти работало нормально.
Когда моя транзакция одобрена, статус заказа обновляется нормально, но когда он не подтвержден, он не обновляется.
Пожалуйста, есть что-то, чего мне не хватает?
public function callback() {
if ( $_REQUEST['transaction_id'] != '' ){
$xml = file_get_contents('https://payx.com/?v_transaction_id='.$_REQUEST['transaction_id']);
$xml_elements = new SimpleXMLElement($xml);
$transaction = array();
foreach($xml_elements as $key => $value)
{
$transaction[$key]=$value;
}
$email = $transaction['email'];
$total = $transaction['total'];
$date = $transaction['date'];
$order_id = $transaction['merchant_ref'];
$status = $transaction['status'];
$transaction_id = $transaction['transaction_id'];
if ($order_id !== ''){
$this->load->model('checkout/order');
$order_info = $this->model_checkout_order->getOrder($order_id);
if ($order_info) {
if (trim(strtolower($status)) == 'approved'){
$message = 'Payment Status : - '.$status.' - Transaction Id: '.$transaction_id;
$this->model_checkout_order->addOrderHistory($order_id, $this->config->get('payx_order_status_id'), $message , false);
}else{
$message = 'Payment Status : - '.$status.' - Transaction Id: '.$transaction_id;
$this->model_checkout_order->addOrderHistory($order_id, $this->config->get('payx_order_status_id'), $message, false);
}
}
}
}
}
Задача ещё не решена.
Других решений пока нет …