Todas las colecciones
Soluciones
Cómo Completar las Transacciones en WordPress Automáticamente.
Cómo Completar las Transacciones en WordPress Automáticamente.

Función PHP para cambiar el status de una transacción de manera automática.

Amanda avatar
Escrito por Amanda
Actualizado hace más de una semana

Uno de los dolores más comunes de quienes operan con Wordpress es que, Por defecto, tienen que completar sus transacciones de manera manual porque una vez que sus clientes, ya han pasado por nuestra pasarela de Pago y han efectuado la compra, WooCommerce no les asigna el estado Completado, sino que les asigna el estado Procesando.

Solución

Aća te mostramos la solución que encontramos en la Comunidad Wordpress para hacer que WooCommerce asigne automáticamente el estado Completado a los pedidos realizados y pagados en Pago Fácil.

Para resolver esto te dejamos una función creada por la Comunidad Wordpress y adaptada para funcionar en Pago Fácil, que debe agregarse al archivo functions.php dentro de las carpetas de WordPress.

PRECAUCIÓN

Recomendamos hacer una copia de tu sitio antes de efectuar estos cambios en tu sitio productivo, o realizarlos en una nueva intalación de WP, para evitar cualquier posible afectación en tu sitio productivo, en caso que la solución no sirva en tu configuración de WP.



La ruta es la siguiente:

Carpeta Raiz =>

wp-includes =>

functions.php

1.- Dentro de la Carpeta Raiz de Wordpress en nuestro Servidor abrimos la carpeta wp-Includes.

2.- Dentro de la carpeta wp-Includes, buscamos el archivo function.php

Se abre el archivo y se agrega al final la siguiente función:


Acá te dejamos el código para que lo copies y lo agregues:


// Update the Order status to Completed from Pago Facil
add_action( 'woocommerce_order_status_processing','updateToCompleted');
function updateToCompleted( $order_id ) {
global $woocommerce;

//Reading payment gateway ID
$paymentMethods = array( 'tbkaas' );
if ( !$order_id ) return; $order = new WC_Order( $order_id );
if ( !in_array( $order->payment_method, $paymentMethods ) ) return;

$order->update_status( 'completed' );
}

Guardas los cambios y con eso las siguientes transacciones se completarán de manera automática.


Para visualizar una transacción realizada, pincha "Mis Servicios" > elige el servicio donde deseas revisar las transacciones, presiona el botón "Ver más" a la derecha y baja para ver las transacciones realizadas en ese servicio.

Al final de la página está el histórico de transacciones, con las columnas Order Id Tienda, Monto, Estado, Email y Actualizado.

Aparecerán ordenadas desde la última realizada.

¿Ha quedado contestada tu pregunta?