Here I will explain how to create credit memo programmatically in magento.
Below is a php code to create a credit memo for an order in magento.
try {
$order = Mage::getModel('sales/order')->loadByIncrementId('100000004');
if (!$order->getId()) {
$this->_fault('order_not_exists');
return;
}
if (!$order->canCreditmemo()) {
$this->_fault('cannot_create_creditmemo');
return;
}
$orderItem = $order->getItemsCollection()->getItemByColumnValue('sku', '1100');
$service = Mage::getModel('sales/service_order', $order);
$data = array(
'qtys' => array(
$orderItem->getId() => 1
)
);
$creditMemo = $service->prepareCreditmemo($data)->save();
$this->_redirect('test/index/index');
}
catch (Mage_Core_Exception $e) {
print_r($e->getMessage());
}
When Execute above code credit memo will be placed successfully on magento.
If you have any queries please leave a comment.
Below is a php code to create a credit memo for an order in magento.
try {
$order = Mage::getModel('sales/order')->loadByIncrementId('100000004');
if (!$order->getId()) {
$this->_fault('order_not_exists');
return;
}
if (!$order->canCreditmemo()) {
$this->_fault('cannot_create_creditmemo');
return;
}
$orderItem = $order->getItemsCollection()->getItemByColumnValue('sku', '1100');
$service = Mage::getModel('sales/service_order', $order);
$data = array(
'qtys' => array(
$orderItem->getId() => 1
)
);
$creditMemo = $service->prepareCreditmemo($data)->save();
$this->_redirect('test/index/index');
}
catch (Mage_Core_Exception $e) {
print_r($e->getMessage());
}
When Execute above code credit memo will be placed successfully on magento.
If you have any queries please leave a comment.
No comments:
Post a Comment