Obtener ID de pedido después de la compra completada
-
13-12-2019 - |
Pregunta
Necesito obtener ID de pedido después de que el pago se complete con éxito.¿Hay observador para hacer esto?
Solución
Puede usar el evento sales_order_payment_pay
para obtener el ID de pedido después de que se complete el pago correctamente.
por debajo del código en 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>
y modelo / observador.php
public function getOrder($observer) {
$orderId = $observer->getPayment()->getOrder()->getId();
$orderNumber = $observer->getPayment()->getOrder()->getIncrementId();
}
solo para aclarar;El ID de pedido se usa internamente en la base de datos.El número de pedido es lo que se muestra en la pantalla y se ve como #100000153
Otros consejos
Sí, hay pocos eventos relacionados con el pago.
Sugeriría usar este: sales_order_payment_pay
.
Creo que ya sabes cómo usar observador.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange