문제

지불이 성공적으로 완료된 후 주문 ID를 받아야합니다.관찰자 가이 일을 할 수 있습니까?

도움이 되었습니까?

해결책

sales_order_payment_pay 이벤트를 사용하여 지불이 완료된 후 주문 ID를 얻을 수 있습니다.

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();
}
.

명확히하기 만하면됩니다.주문 ID는 데이터베이스에서 내부적으로 사용됩니다.주문 번호는 화면에 표시되고 #100000153

처럼 보입니다.

다른 팁

예 지불과 관련된 이벤트가 거의 없습니다.

이 하나의 것을 사용하는 것이 좋습니다 : sales_order_payment_pay.

이벤트 완료

나는 당신이 옵서버를 사용하는 방법을 이미 알고 있다고 믿습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 magento.stackexchange
scroll top