¿Qué te ha parecido?
(Votos: 0 Promedio: 0)

Los pedidos realizados en WooCommerce con el método de pago contra reembolso, se guardan con el estado «Procesando». No se trata de un un error, pero en determinados casos o proyectos, resulta útil modificar el estado de pedido con pago por contra reembolso a «En Espera». Por ejemplo recientemente, un cliente que en su tienda online vende bonos regalo, quería dar la posibilidad a los usuarios de comprar online el bono y de poder pagarlo en metálico en el establecimiento.

El problema en este caso era que al tratarse de un producto virtual, el usuario se lo podía desacargar una vez realizado el pedido aunque no estuviera pagado.

Con este sencillo código es posible cambiar el estado de pedido con pago por contra reembolso a «En Espera» en lugar de «Procesando»:

add_filter( 'woocommerce_cod_process_payment_order_status', 'change_cod_payment_order_status' );
function change_cod_payment_order_status( $order_status, $order ) { return 'on-hold'; }

Fuente: Stack Overflow