捕获订单的正确的magento观察员事件是什么?

时间:2014-08-01 00:29:02

标签: php magento observers magento-1.9

我尝试在订单付款后,仅在订购后向第三方发送订单,现在已将其设置为“处理'作为地位。什么是最好的观察者用来设置它适用于所有付款类型?

看完几个来源之后,似乎是:

sales_order_invoice_pay

应该适用于所有付款方式,但似乎已在Magento 1.9上删除:http://rabee.me/codes/magento/cheatsheet/1.9/ 此列表不完整,请查看以下更新

另一个选择是:

'sales_order_payment_pay'

但是,当我测试它时,将付款方式设置为"支票/汇票"使用Order>在后端生成发票后,它不会被触发发票>提交发票

此方法仅使用其他付款方式调用吗? (贝宝/ authorize.net)

更新

阅读后:另一个问题似乎是保证我在付款(在线或离线)之后输出订单的唯一方法是在创建发票时捕获,并为Magento捕获1.9正确的观察者是:

sales_order_invoice_register

付款后,在线方法paypal / authorize.net上会自动创建和发送发票吗?在沙盒/测试模式下使用它们时仍然如此吗?

更新2:

经过大量测试后,'sales_order_invoice_pay'似乎是用来实现我所需要的正确方法。

1 个答案:

答案 0 :(得分:5)

checkout_onepage_controller_success_action怎么样?如果您的订单付款成功,则可以使用此选项。还有另一个事件sales_order_payment_capture。它也可能在你的情况下使用。我以前没用过它。

选中此LINK

修改

根据讨论,似乎sales_order_invoice_pay是捕获订单付款的完美观察者,并且该事件仍可在Magento 1.9中使用。 (不推荐)

如需更多参考,请查看此Link