Пока я создаю транзакцию Paypal программно.мой заказ хранится должным образом, но когда я пытаюсь создать транзакцию для него, это вызывает ошибку, пожалуйста, помогите мне, если что-то потребуется, дайте мне знать, что я могу предоставить любые данные.
Ошибка: Должен быть установлен правильный платежный объект
if($paymentInfo != ''){
$payment = $order->getPayment();
$payment->setMethod($pay_method);
$payment->setLastTransId($paymentData['id']);
$payment->setTransactionId($paymentData['id']);
$payment->setAdditionalInformation(
[Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS => (array)$paymentData]
);
// Prepare transaction
$transaction = Mage::getModel('sales/order_payment_transaction');
$transaction->setOrder($order); // this is order Id
$transaction->setOrderId($order->getId());
$transaction->setPaymentId($paymentData['id']);
$transaction->setTxnId($paymentData['id']); // this is trasaction Id
$transaction->setTxnType(Mage_Sales_Model_Order_Payment_Transaction::TYPE_CAPTURE); // authorise or capture or both
$transaction->setIsClosed(true);
$transaction->setAdditionalInformation($arrayofdata);
try {
$transaction->save();
}
catch (Exception $e) {
echo json_encode(array('code' => 5, 'msg' => 'debug', 'transaction error'=> $e->getMessage()));
exit();
}
$payment->addTransactionCommentsToOrder($transaction);
// Add transaction to payment
$payment->setParentTransactionId(null);
echo json_encode(array('code' => 5, 'msg' => 'debug', 'paymentInfo'=>$payment->getData()));
exit();
// Save payment, transaction and order
$payment->save();
$order->save();
// $transaction->save();
$transaction_id = $transaction->getTxnId();
}