我正在创建一家 Woocommerce 商店。客户想要使用支付插件“Mollie”接受 iDeal 付款(荷兰语)。
当人们从网上商店订购商品时,他们应该能够无需付款即可订购他们想要的一切。之后,店主应该会收到一封电子邮件并检查订单。
店主通过检查所订购产品的库存来审核订单。从现在开始应该会有这样的场景:
一切都有现货。对包裹进行称重。运费已添加。客户将收到付款链接。
没有库存。应向客户发送缺货消息。
仅部分订单有货。应在 Woocommerce 订单面板中更改订单。剩余的订单将被称重并包装。客户将收到付款链接。
订单被接受后,客户应收到包含正常付款方式(包括“Mollie”付款)的付款链接。
有办法实现这一点吗? 预先感谢!
我知道这是一年后的事了,但这可以帮助其他人:-)。
我的客户想要类似的流程,在店主确认订单之前,商店客户将无法在线付款。
解决方案:
我们使用此过滤器在两个端点之间切换支付网关。
function my_switch_gateways_by_context($available_gateways) {
global $woocommerce;
$endpoint = $woocommerce->query->get_current_endpoint();
if ($endpoint == 'order-pay') {
unset($available_gateways['cod']);
} else {
unset($available_gateways['stripe']);
}
return $available_gateways;
}
add_filter( 'woocommerce_available_payment_gateways', 'my_switch_gateways_by_context');
我希望这有帮助。
六点中的第一个答案非常有效,除非您想访问 wp-管理。您需要将此行添加为代码中的第一个条件
if ( is_admin() ) 返回 $available_gateways;
据我所知,没有简单的方法可以做到这一点。正常的支付流程是让消费者下订单后立即付款。如果某些产品缺货,您可以简单地创建(部分)退款。 Mollie 的 WooCommerce 插件支持此功能。