Pregunta

Quiero añadir una nueva funcionalidad a Magento cuando un orden particular se tuvo éxito. Me pregunto ¿hay alguna función común donde todas las pasarelas de pago alcances antes de destruir la información de sesión orden de modo que pueden recoger la nueva información de la orden, como cliente, tarjeta de crédito, etc para la nueva funcionalidad y luego redirigir a la página de éxito.

¿Fue útil?

Solución

No creo que hay un punto tal, ya cada método se comporta de manera diferente y puede / debe tener diferentes direcciones URL de devolución de llamada. Tal vez se puede obtener la información que necesita en la página de éxito en el uso de la controller_action_predispatch_checkout_onepage_success evento y el uso

$orderId = Mage::getSingleton('checkout/session')->>getLastSuccessQuoteId();

para obtener el último número de pedido, a continuación, cargar la orden

Mage::getModel('sales/order')->load($orderId);

y obtener la información que necesita a partir de ahí.

Otros consejos

Se puede crear un observador de evento "checkout_onepage_controller_success_action". Esto está en successAction en Mage_Checkout_OnepageController.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top