Jump to content

Mensaje "Fuera de stock" en cada pedido


colives

Recommended Posts

¡Hola! Desde hace unos días, mi Prestashop manda un correo al cliente cada vez que se realiza un pedido de "Fuera de stock" y marca el pedido como "Pedido pendiente por falta de stock". Obviamente los productos tienen el stock correctamente puesto.

¿Alguien sabe que puede estar sucediendo?

Trabajo con PS 1.7.3.1

¡¡¡Mil gracias!!!

Link to comment
Share on other sites

  • 3 weeks later...

Hola Nata! 

Puedes engañar un poco al sistema, vete a pedido - estado de pedido y donde veas lo de Stock modificas el nombre por el que tu quieras como por ejemplo:

 

Tu pedido llegara en un pis pas. Es solo una traduccion. ¿Podria servirte?

Link to comment
Share on other sites

Mismo problema por aquí con 1.7.3.3... Un cliente acaba de hacer un pedido de un producto que estaba en stock, solo quedaba 1 unidad. Tras el pago, el pedido quedó en estado "Pedido pendiente por falta de stock (Pagado)" y la tienda envió un email al cliente informando de eso lo cual es falso.

Tengo desactivado permitir pedir productos sin stock, pero vamos, que estaba en stock cuando el cliente lo compró.

¿Alguna solución que no sea la de cavallanti? Que para salir del paso no es mala idea, todo sea dicho :)

Gracias :)

Link to comment
Share on other sites

10 hours ago, cavallanti said:

En preferencias - productos ¿Cuanto es el mínimo que tienes para que te muestre si la cantidad es inferior?

En mi caso 0 (desactivado), me interesa que se sepa cuántos quedan en stock independientemente de la cantidad que quede.

Link to comment
Share on other sites

10 hours ago, sebarrab said:

Poner 999 en las cantidades del producto.

A ver, chapuza es pero es también para salir del paso.

¿Cómo vas a hacer eso si trabajas con stock real? ¿Si te compran 10 y solo tienes 5? Eso no es una opción, solo traería problemas, a no ser que vendas algo que tengas "ilimitado" o que puedas conseguir al momento.

Link to comment
Share on other sites

Yo de momento lo que he hecho es una mezcla de la solución que dio Cavallanti. Edité el estado "Pedido pendiente por falta de stock (Pagado)", le puse ocultar al cliente y no enviar email, de ese modo ese estado el cliente no lo ve y no se le notifica. También le cambié el nombre para no liarme yo.

Link to comment
Share on other sites

  • 2 weeks later...
  • 3 weeks later...
  • 4 months later...

Tengo este mismo problema en 1.7.3.3, me imagino que es por la configuracion por defecto que trae prestashop en cuanto a los correos, estuve mirando propongo que se soluciona por medio de habilitar o deshabilitar los correos que se envian a los clientes.

dentro de lo que he podido observar este correo se envia cuando se finaliza la orden y el stock pasa de cualquier cantidad a "0"

configurar -> Parametros de la tienda -> configuracion de pedidos -> estados -> Pedido pendiente por falta de stock (no pagado)

 

Link to comment
Share on other sites

  • 4 months later...

Esto sucede porque en el archivo de la clase está puesto al reves la comprobación de si está sin stock, se soluciona cambiando este código en el archivo /classes/PaymentModule.php 

// Set the order status
$new_history = new OrderHistory();
$new_history->id_order = (int)$order->id;
$new_history->changeIdOrderState((int)$id_order_state, $order, true);
$new_history->addWithemail(true, $extra_vars);
 
// Switch to back order if needed
if (Configuration::get('PS_STOCK_MANAGEMENT') && ($order_detail->getStockState() || $order_detail->product_quantity_in_stock <= 0)) {
$history = new OrderHistory();
$history->id_order = (int)$order->id;
$history->changeIdOrderState(Configuration::get($order->valid ? 'PS_OS_OUTOFSTOCK_PAID' : 'PS_OS_OUTOFSTOCK_UNPAID'), $order, true);
$history->addWithemail();
}

Por este otro:

// Switch to back order if needed
if (Configuration::get('PS_STOCK_MANAGEMENT') && ($order_detail->getStockState() || $order_detail->product_quantity_in_stock <= 0)) {
$history = new OrderHistory();
$history->id_order = (int)$order->id;
$history->changeIdOrderState(Configuration::get($order->valid ? 'PS_OS_OUTOFSTOCK_PAID' : 'PS_OS_OUTOFSTOCK_UNPAID'), $order, true);
//$history->addWithemail(); Se comenta para que no envie el correo como que no queda stock
}
// Set the order status
$new_history = new OrderHistory();
$new_history->id_order = (int)$order->id;
$new_history->changeIdOrderState((int)$id_order_state, $order, true);
$new_history->addWithemail(true, $extra_vars);
 
Un saludo.
Edited by Carlostlr (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...