Open karug opened 7 years ago
Por cierto, tengo la versión 4.7.2 de WordPress y la 2.6.4 de WooCommerce
Hola Karug, ¿Puedes probar en modo normal? Creo que le ha pasado a otros que en modo de pruebas como a tí pero luego se arreglaba al quitar el modo de pruebas, supongo que por algún problema de configuración, https o algo así.
Buenas, no he podido probar aun en modo de producción porque aun no nos han dado la clave real. En cuanto me la den probaré a ver si funciona.
Buenas.
Ya he podido probar en modo real y tampoco los pone como completados, tengo todos los productos como virtuales y descargables, así que no se que puede ocurrir.
Por cierto, he probado también solo con virtual y solo con descargable y nada. He añadido en el código que cada vez que entre en la función successful_request incluya una nota en la orden del pedido y nunca llega a entrar en esa función.
Un saludo.
Hola @karug has podido conseguir que te funcione? A mi me da un error similar y al usar la solucion del #4 me dice que hay un error de comunicación, no se si es similar lo que nos pasa pero si lo has solucionado te agradecería me comentaras como lo has hecho.
Yo he añadido este código en el functions.php y cuando el cliente realiza el pago, el pedido aparece en "procesando pedido" en vez de a la espera de pago
add_action( 'woocommerce_thankyou', 'custom_woocommerce_auto_complete_order' ); function custom_woocommerce_auto_complete_order( $order_id ) { if ( ! $order_id ) { return; } $order = wc_get_order( $order_id ); $metodo = $order->payment_method; if ($metodo != 'bacs'){ wp_mail( 'correo@mitiendaonline.com', 'Nuevo pedido por tarjeta', 'Has recibido un nuevo pedido pagado con tarjeta' ); $order->update_status( 'processing' ); } }
SI lo que quieres es que el pedido se ponga en estado completado, cambia el "processing" por "completed", si no te funciona, pon este código:
$order->payment_complete();
en vez de $order->update_status( 'processing' );
Buenas.
Después de realizar el pago en Ceca, me devuelve a la pagina de pedido recibido, pero no me actualiza el pedido a completo, no se porque no ejecuta la función de successful_request donde actualiza el pedido a completado.
Tengo el modo pruebas activado y no consigo encontrar cual es el problema.