Как определить статус заказа после создания счета-фактуры
Я много искал в Google, но почему-то я использую неправильные условия поиска или пока нет ответа на мою конкретную проблему.
В Magento я хотел бы выполнить следующую процедуру: Клиент создает заказ, я создаю счет-фактуру (статус переключается на payment_review или что-то в этом роде), я отправляю заказ (статус переключается на завершено).
В настоящее время после создания счета-фактуры статус автоматически переключается на завершено.
Итак, как должен ли я указывать, какой статус используется после создания счета-фактуры?
Спасибо за предложения
1 answers
Самый простой способ подумать о том, как Magento обрабатывает все заказы, - это сначала узнать, что Magento использует состояние внутреннего заказа и статус.
Состояния:
-
new
: Этот заказ новый, необработанный, не принят платежным шлюзом или чем-то еще. -
pending_payment
: Платеж обрабатывается платежным шлюзом (это всегда должно автоматически разрешаться, если шлюз настроен правильно/построен правильно). Инвентарь уже есть уменьшенный. -
processing
: Счет-фактура создан, заказ готов к обработке -
complete
: Отправка произведена, загрузка или подарочная карта отправлены по почте. -
closed
: Заказ закрывается до создания счета-фактуры. Запасы возвращаются на склад -
canceled
: Кредит-нота была составлена. -
holded
: Состояние вручную, чтобы вы могли удерживать или разворачивать заказ. -
payment_review
: Интеграция с платежным шлюзом, иногда платеж необходимо пересмотреть (когда платеж подозревается в мошенничестве, PayPal использует это, например).
В коде говорится: https://github.com/LokeyCoding/magento-mirror/blob/magento-1.8/app/code/core/Mage/Sales/Model/Order.php#L333
Статусы
Каждое состояние в Magento может быть сопоставлено нескольким статусам. Статусы - это то, что вы можете определить сами (http://www.magentocommerce.com/knowledge-base/entry/custom-order-status ) и вы можете установить определенный статус по умолчанию статус.
Платежные шлюзы, соединения с другими системами обычно имеют возможность устанавливать статус, отличный от установленного по умолчанию. Платежные шлюзы иногда вводят новые статусы и используют их вместо стандартных.
Ваша ситуация
В Magento я хотел бы иметь следующую процедуру: Клиент создает заказ, я создаю счет-фактуру (статус переключается на payment_review или что-то в этом роде), я отправляю заказ (Статус переключается на завершено).
Вариант 1: Обычно, когда создается счет-фактура (и не создается отгрузка), он устанавливает состояние обработки, а статус - статус по умолчанию (или какой-либо другой статус, если он установлен в способе оплаты).
Вариант 2: Если отправка уже создана или если мы говорим о виртуальных продуктах (подарочных картах или загружаемых продуктах или других виртуальных продуктах), состояние переключается на завершено, а статус - на статус по умолчанию "отменено". (по умолчанию также завершено).
В настоящее время после создания счета-фактуры статус автоматически переключается на завершено.
Похоже, здесь мы говорим о варианте 2, что означает, что заказ полностью обработан. Если вы хотите сделать что-то еще с заказом после этого (возможно, вам нужно выполнить последующие действия), вы можете создать новый статус по умолчанию для полного состояния, и он автоматически переключится в этот статус.
Я надеюсь, что это имеет смысл.