Evaluación inicial sin contraseñas Presupuesto antes de intervenir Especialista responsable de principio a fin

Pedidos Stock Fulfilment

WooCommerce crea el pedido pero no reduce el stock

Diagnostica pedidos sin descuento de stock revisando pago, producto, reservas, hooks, notas e integraciones de inventario.

WooCommerce reduce existencias en un punto concreto del ciclo del pedido, no por el simple hecho de crear un registro. Un pedido pendiente puede reservar unidades temporalmente, mientras Processing o Completed suele indicar que el pago o la preparación avanzaron. Una pasarela personalizada puede cambiar el estado sin ejecutar el flujo normal.

No restes unidades manualmente hasta saber si WooCommerce ya registró la reducción. Repetirla puede convertir una falta de ajuste en stock descontado dos veces.

Reconstruye la cronología del pedido

Abre el pedido y revisa las notas privadas relacionadas con pago, cambio de estado y reducción de stock. Anota producto, variación, cantidad, estado actual y método de pago.

Compara la hora con los registros de la pasarela y WooCommerce. Determina si el pago quedó autorizado, capturado, rechazado o pendiente. Usa un pedido afectado como evidencia y evita cambiarlo varias veces de estado durante el análisis.

Comprueba el producto exacto

Confirma que la gestión de inventario está habilitada globalmente y revisa el producto o variación comprado.

Registra sin datos del cliente:
- ID de producto y variación de la línea
- cantidad pedida
- stock antes y después
- ajuste manage_stock
- política de pedidos pendientes

En productos variables, las existencias pueden gestionarse en la variación, en el padre o mediante código propio. Consulta el ID guardado en la línea del pedido, no solo el título visible. Un nombre igual puede ocultar variaciones distintas.

Distingue reserva y reducción

Según el checkout y el tiempo de retención configurado, WooCommerce puede reservar stock para pedidos sin pagar. La reserva afecta a la disponibilidad calculada aunque el número almacenado todavía no cambie.

Comprueba si el producto aparece agotado pese a mantener la cantidad. Revisa pedidos pendientes y cuándo vencen sus reservas. No borres reservas en bloque: un comprador puede seguir completando el pago.

Revisa estado y pasarela

Los métodos offline suelen dejar el pedido On hold. Las pasarelas pagadas normalmente llaman al proceso de pago completado. Una integración que solo asigna Processing puede omitir la reducción esperada.

$order = wc_get_order( $order_id );
if ( $order && ! wc_string_to_bool( $order->get_meta( '_order_stock_reduced' ) ) ) {
    // Investigar por qué no se ejecutó el flujo compatible de reducción.
}

El marcador interno sirve para diagnosticar, no para editarlo manualmente. Forzarlo puede romper una futura cancelación o reposición.

Busca hooks e integraciones

Revisa el código mantenido por la web que llama a funciones de stock durante pagos o cambios de estado. Un ERP, almacén o marketplace puede ser la fuente autorizada y actualizar WooCommerce después.

Relaciona los registros externos con el pedido. Una exportación fallida deja una cantidad obsoleta aunque el procesamiento local sea correcto. Define un único propietario: WooCommerce ajusta y comunica, o el sistema externo devuelve el resultado; dos escritores sin idempotencia provocan deriva.

Comprueba errores y tareas

Un error PHP o MySQL puede interrumpir el proceso antes del ajuste. Correlaciona la hora con logs y Acciones programadas fallidas.

Si HPOS está activo, confirma que las extensiones son compatibles. Consultas antiguas directas a postmeta pueden leer una representación incorrecta. Repara primero el código o la tarea y luego reproduce una sola operación controlada.

Reconcilia y verifica

Compara stock físico, cantidad en WooCommerce, reservas y pedidos del intervalo afectado. Decide qué ventas pagadas debían descontar unidades. Aplica una corrección compatible y auditable una vez; no cambies estados históricos para generar efectos secundarios.

Realiza después un pedido de control. Verifica reserva, pago, una única reducción, cancelación y reembolso según la política. El mantenimiento recurrente debe alertar sobre pedidos pagados sin nota de reducción y sincronizaciones fallidas.

ANTES DE ENVIAR LA SOLICITUD

Preguntas frecuentes.

¿Pedís contraseñas en el formulario?+

No. El formulario público nunca solicita accesos. Los datos seguros se piden únicamente después de aprobar el alcance y el presupuesto.

¿Quién revisa la incidencia?+

La solicitud llega a Jordi Ensenyat, fundador de Code Barcelona y especialista WordPress con más de 15 años de experiencia.

¿Se cambia algo antes del presupuesto?+

No. Primero se revisan los síntomas visibles y se define el alcance. La intervención empieza tras la aprobación y con una vía de vuelta preparada.

¿Trabajáis con webs en inglés y fuera de España?+

Sí. WP Repair atiende incidencias WordPress y WooCommerce en inglés y español, con servicio remoto.

Evaluar mi incidencia