Magento 付款工作流程和已付款事件订单

2023-12-28

对于我的 Magento 模块之一,我需要捕获“任何订单都定义为已付款”事件。 所以我发现关联的事件是sales_order_ payment_pay。好吧,似乎完全符合我的需求。

我是一名 Magento 开发人员,而不是一名商人,目前,我从未将 Magento 实例上线并投入生产。所以支付流程对我来说相当黑暗。我在测试期间曾经选择“支票/汇票”作为付款方式。

问题是:我需要捕获这个事件(sales_order_ payment_pay),但似乎我无法触发它并且永远不会进入我的观察者函数。 我目前有 2 种付款方式:支票/汇票和信用卡。 对于第一个,商家需要在后端验证付款,我红色的是他创建发票的那一刻。所以我尝试了一下,但该事件从未被触发。 对于第二个,它更困难:因为我处于开发模式,我不知道如何通过信用卡验证付款。我在网上找到了一个万事达卡的号码,允许在Magento中进行测试,但在后端,支付的总金额仍然为零。因此,在提交订单后,没有触发任何事件(似乎很合乎逻辑),并且当我创建发票时,仍然没有触发任何事件。

您能帮助我更多地了解付款流程并捕获任何已付款的订单吗?我找不到任何有关它的信息或文档。

PS:我的模块的目的是捕获事件下订单或付款并生成用于数据导出的 XML 文件。第一个下订单的产品已经开发出来。


这个话题看起来有点棘手,所以我将分享我对支付方式和订单生命周期的看法。

艾伦·斯托姆的愿景 https://stackoverflow.com/questions/5366551/magento-payment-flow

首先,我邀请您看看最著名的 Magento 博主之一 Alan Storm 撰写的这个主题。

我认为它是这样工作的:

案例1:在线支付(Paypal、信用卡等)下单,接受付款

客户验证的订单 -> Magento 创建的订单 -> 状态待付款
客户在线支付订单 -> 付款服务验证付款 -> 付款正常 -> Magento 创建发票 -> 状态待付款(这一点不确定)。
商家发货的订单 -> Magento 创建的运费优惠券 -> 状态完成

情况2:使用在线支付(Paypal、信用卡等...)的订单,付款被拒绝

客户验证的订单 -> Magento 创建的订单 -> 状态待付款
客户在线支付的订单 -> 付款服务拒绝付款 -> Magento 取消订单 -> 状态已取消

案例 3:离线支付订单(支票/汇票、销售优惠券等)。商家在发货前开具发票

客户验证的订单 -> Magento 创建的订单 -> 状态待处理
客户离线支付的订单 -> 商家收到付款 -> 商家为订单开具发票 -> Magento 创建发票 -> 状态处理
商家发货的订单 -> Magento 创建的运费优惠券 -> 状态完成

情况 4:离线支付订单(支票/汇票、销售优惠券等)。商船在开票前发货

客户验证的订单 -> Magento 创建的订单 -> 状态待处理
客户离线支付的订单 -> 商家发货的订单 -> Magento 创建的运输优惠券 -> 状态处理
商户开具发票的订单 -> Magento 创建发票 -> 状态处理

希望这个主题对将来的人有所帮助。
如果您之后需要更多信息,请告诉我。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Magento 付款工作流程和已付款事件订单 的相关文章

随机推荐