Программно пометить заказ Magento как завершенный

Я пытаюсь пометить заказ «Обработка» как завершенный, когда я получаю определенный ответ от сторонней службы . У меня для этого все настроено, но проблема только в том, что заказы остаются в состоянии обработки.

Я выставляю счет (я не думаю, что он мне нужен, поскольку каждый элемент помечен как «выставленный счет» в бэкэнде Magento) и отправку примерно так:

$order = Mage::getModel('sales/order')... (etc)
$shipment = $order->prepareShipment($quantities);
$shipment->register();
$shipment->setOrder($order);
$shipment->save();

$invoice = $order->prepareInvoice($quantities);
$invoice->register();
$invoice->setOrder($order);
$invoice->save();

Это не похоже хотя делаю это - я не получаю никаких ошибок из этого кода, но порядок остается как обработка. В бэкэнде я все еще вижу кнопку «Отправить» в верхней части заказа, и каждый элемент находится в состоянии «выставлен счет».

Будем признательны за любые советы.

7
задан gregdev 18 January 2012 в 07:35
поделиться