Created
July 2, 2014 16:43
-
-
Save rodrigowebjump/a5e2e9ad568b8dc2088e to your computer and use it in GitHub Desktop.
Magento Change Order Status Programmatically
From http://phptalks.wordpress.com/2011/09/09/magento-how-to-change-order-status-programmatically/
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$orderId = YOUR_ORDER_ID; | |
$order = Mage::getModel(‘sales/order’) | |
->load($orderId); | |
If you have order increment id, you can load order in the following way:- | |
$orderIncrementId = YOUR_ORDER_INCREMENT_ID; | |
$order = Mage::getModel(‘sales/order’) | |
->loadByIncrementId($orderIncrementId); | |
Now, here is the code to change order status:- | |
/** | |
* change order status to ‘Completed’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_COMPLETE, true)->save(); | |
Similarly, you can change the order status to pending, processing, canceled, closed, holded, etc. | |
/** | |
* change order status to ‘Pending’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_NEW, true)->save(); | |
/** | |
* change order status to ‘Pending Paypal’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true)->save(); | |
/** | |
* change order status to ‘Processing’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_PROCESSING, true)->save(); | |
/** | |
* change order status to ‘Completed’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_COMPLETE, true)->save(); | |
/** | |
* change order status to ‘Closed’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_CLOSED, true)->save(); | |
/** | |
* change order status to ‘Canceled’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_CANCELED, true)->save(); | |
/** | |
* change order status to ‘Holded’ | |
*/ | |
$order->setState(Mage_Sales_Model_Order::STATE_HOLDED, true)->save(); | |
You can also cancel an order in the following way:- | |
if($order->canCancel()) { | |
$order->cancel()->save(); | |
} | |
Hold an order:- | |
if($order->canHold()) { | |
$order->hold()->save(); | |
} | |
Unhold an order:- | |
if($order->canUnhold()) { | |
$order->unhold()->save(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment