В Magento 1.4 я успешно использую этот код, чтобы пометить заказ как выполненный и добавить к нему код отслеживания доставки:
$order = Mage::getModel('sales/order')->loadByIncrementId($increment_id);
if($order->canShip())
{
$itemQty = $order->getItemsCollection()->count();
$ship = Mage::getModel('sales/service_order', $order)->prepareShipment($itemQty);
$ship = new Mage_Sales_Model_Order_Shipment_Api();
$shipmentId = $ship->create($increment_id);
}
$shipment_collection = Mage::getResourceModel('sales/order_shipment_collection');
$shipment_collection->addAttributeToFilter('order_id', $order_id);
foreach($shipment_collection as $sc) {
$shipment = Mage::getModel('sales/order_shipment');
$shipment->load($sc->getId());
if($shipment->getId() != '') {
$track = Mage::getModel('sales/order_shipment_track')
->setShipment($shipment)
->setData('title', $type)
->setData('number', $code)
->setData('carrier_code', 'custom')
->setData('order_id', $shipment->getData('order_id'))
->save();
}
}
Он работает правильно, но я не могу найти нужный фрагмент кода. для отправки клиенту письма с подтверждением отправки, например, когда вы устанавливаете правильный флажок и подтверждаете отправку в бэкэнде magento.
Заранее большое спасибо за помощь.