我正在尝试在订单已支付且现在已设置为“处理中”状态之后且仅在此之后将订单发送给第三方。什么是最好的观察者来设置它以适用于所有支付类型?
在阅读了几个来源之后,它看起来像:
sales_order_invoice_pay
应该适用于所有付款方式,但它似乎已在 Magento 1.9 上被删除:http ://rabee.me/codes/magento/cheatsheet/1.9/ (此列表不完整,请查看下面的更新)
另一种选择是:
'sales_order_payment_pay'
但是当我测试它将付款方式设置为“支票/汇票”时,在我使用 Order > Invoice > Submit Invoice 在后端生成发票后,它不会被触发
此方法是否仅与其他付款方式一起调用?(贝宝/authorize.net)
更新:
阅读后:this other question似乎保证我在付款(在线或离线)后导出订单的唯一方法是在创建发票时捕获,而对于Magento 1.9,正确的观察者是:
sales_order_invoice_register
通过在线方式 paypal/authorize.net 付款后是否会自动创建和发送发票?在沙盒/测试模式下使用它们时这仍然是真的吗?
更新 2:
经过大量测试,这似乎'sales_order_invoice_pay'
是实现我所需要的正确方法。