代码之家  ›  专栏  ›  技术社区  ›  eComEvo

添加自定义WooCommerce支付网关连接

  •  0
  • eComEvo  · 技术社区  · 6 年前

    我们的支付网关和CRM,WooCommerce默认不支持作为插件,因此我需要添加自定义代码,以便在客户下订单时向我们的CRM和支付网关发送数据,然后根据支付网关API响应拒绝或接受订单。

    在Woo代码中,我应该在哪里以及如何拦截订单提交?

    1 回复  |  直到 6 年前
        1
  •  0
  •   LoicTheAztec    6 年前

    你应该试试 woocommerce_checkout_process 操作挂钩,其中计费提供程序的API响应应返回错误通知以拒绝并停止签出过程

    此挂钩位于 WC_Checkout process_checkout() method 在订单创建之前。数据可通过 $_POST 或通过 $posted_data = WC()->checkout->get_posted_data(); WC\U签出 方法

    woocommerce_checkout_order_processed 已创建订单的操作挂钩(意味着可以通过3个参数访问订单数据: $order_id ,则, $posted_data $order )但是 付款前 要停止该过程,计费提供商的API响应应: throw new Exception() –Ω

    所以无论如何,解决方案是 WC\U签出 可用挂钩