Получить идентификатор заказа после завершения покупки

magento.stackexchange https://magento.stackexchange.com//questions/84103

  •  13-12-2019
  •  | 
  •  

Вопрос

Мне нужно получить идентификатор порядка после оплаты успешно завершен.Есть ли наблюдатель, чтобы сделать это?

Это было полезно?

Решение

Вы можете использовать событие sales_order_payment_pay, чтобы получить идентификатор заказа после успешной завершенности оплаты.

Ниже приведен код в etc / config.xml

<?xml version="1.0"?>
<config>
    <global>
        <events>
            <sales_order_payment_pay>
                <observers>
                    <Namespace_Module>
                        <type>singleton</type>
                        <class>Namespace_Module/Observer</class>
                        <method>getOrder</method>
                    </Namespace_Module>
                </observers>
            </sales_order_payment_pay>     
        </events>
     </global>
</config>
.

и модель / Observer.php

public function getOrder($observer) {
    $orderId = $observer->getPayment()->getOrder()->getId();
    $orderNumber = $observer->getPayment()->getOrder()->getIncrementId();
}
.

просто чтобы уточнить;Идентификатор заказа используется внутри базы данных.Номер заказа - это то, что отображается на экране и выглядит как #100000153

Другие советы

Да, есть несколько событий, связанных с оплатой.

Я бы предложил использовать этот: sales_order_payment_pay.

Полные события

Я верю, что вы уже знаете, как использовать наблюдателя.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top