BEAR - WooCommerce Bulk Editor and Products Manager Professional

Editar en masa el coste de los productos y el precio de compra en WooCommerce

Para editar en masa el coste de los productos en WooCommerce, la primera pregunta no es cómo sino dónde: el coste de un producto no es una columna estándar de la lista de productos y, según el plugin que lo registra, vive en una clave meta distinta o en una tabla propia. Una vez que conoces la clave, BEAR lo edita como un precio: lo fija para cientos de productos a la vez, lo sube un porcentaje cuando un proveedor cambia sus precios o lo calcula como una parte del precio normal. A continuación verás dónde guarda el coste cada fuente, cómo añadirlo, la fórmula para calcular el coste a partir del precio normal y qué no se puede editar de esta manera.

Dónde guarda WooCommerce el coste del producto

Origen del costeDónde se almacenaEditable en masa en BEAR
WooCommerce Cost of Goods Sold (integrado)Clave meta _cogs_total_value en productos y variacionesSí, como campo meta numérico
La extensión WooCommerce Cost of GoodsClave meta _wc_cog_costSí, como campo meta numérico
Otros plugins de coste o precio de compra, campos personalizadosNormalmente una clave meta propiaSí, si es meta de entrada
Precio de compra y datos de proveedor de ATUMTabla propia de la base de datos de ATUM, no meta de entradaNo

El campo propio de WooCommerce se activa en WooCommerce → Ajustes → Avanzado → Funcionalidades → Coste de los bienes vendidos (Cost of Goods Sold). Entonces aparece un campo Coste de los bienes (Cost of goods) en la pestaña General del editor de producto y en cada variación. Una variación sin coste propio usa el coste de su producto padre, de modo que un producto variable puede llevar un coste predeterminado para todas sus variaciones y sustituirlo en las que cuestan más. WooCommerce guarda el coste con cada pedido cuando se calculan sus totales, normalmente al finalizar la compra, así que cambiar los costes más adelante afecta a los pedidos nuevos y no a los pasados.

Para cualquier otro plugin, busca la clave en lugar de adivinarla. En la pestaña Campos meta (Meta Fields) de BEAR, Obtener claves meta de cualquier producto mediante su ID (Get meta keys from any product by its ID) carga todas las claves meta de un producto: introduce el ID de un producto que tenga el coste rellenado y busca la clave que contiene ese número. La documentación de Campos meta muestra las dos formas de añadir claves.

Añadir el campo de coste como columna

  1. En la pestaña Campos meta usa Añadir clave personalizada a mano (Add Custom key by hands) con _cogs_total_value (o la clave de tu plugin), o elige la clave en Obtener claves meta de cualquier producto mediante su ID.
  2. Ponle un título corto como Coste, elige el tipo número (number) y la vista campo de texto (textinput), y pulsa Guardar campos meta (Save meta fields).
  3. En la pestaña Ajustes (Settings) activa la nueva columna Coste y guarda. Este paso es obligatorio: un campo meta aparece en las pestañas Filtros (Filters) y Edición en masa (Bulk Edit) solo mientras su columna está activada.

La columna ya muestra el coste de cada producto; se puede editar celda por celda, ordenar y filtrar por un rango desde/hasta. Introducir 0 en las dos casillas de su filtro lista los productos que todavía no tienen coste; hay más comprobaciones de este tipo en encontrar productos con datos que faltan.

Editar en masa el coste de muchos productos

Filtra los productos, por ejemplo por etiqueta de proveedor o por categoría, comprueba la línea La edición en masa se aplicará a (Bulk editing will be applied to) en la parte superior de la pestaña Edición en masa y usa la fila Coste en la sección numérica:

  • establecer nuevo (set new) da el mismo coste a todos los productos seleccionados.
  • aumentar en % (increase by %) y disminuir en % (decrease by %) siguen el cambio de precios de un proveedor: 8 con aumentar en % sube todos los costes un 8 %.
  • aumentar en valor (increase by value) y disminuir en valor (decrease by value) suman o restan una cantidad fija, por ejemplo un nuevo recargo de envío por unidad.

Para los productos variables, activa variaciones (variations) en el panel de herramientas para que la ejecución escriba el coste de cada variación. Como alternativa, escribe un único coste en los productos padre con el interruptor desactivado y deja que las variaciones sin coste propio lo hereden.

Coste como porcentaje del precio normal

Cuando conoces tu margen y no cada precio de compra, calcula el coste a partir del precio. Debajo de las filas numéricas hay un bloque llamado Campos numéricos seleccionados (Selected num fields): un operador (+, -, *, /) y una lista de campos numéricos. Después de la operación propia de la fila, BEAR aplica ese operador con el campo elegido del mismo producto. Para un coste igual al 30 % del precio normal:

  1. Filtra los productos y excluye los que no tienen precio: precio normal desde (regular price from) 0.01.
  2. Marca solo la fila Coste, elige establecer nuevo e introduce 0.3.
  3. En Campos numéricos seleccionados elige * y PRECIO NORMAL (regular price).
  4. Pulsa Realizar edición en masa (Do Bulk Edit). Un producto con precio 100 recibe un coste de 30.

Dos reglas mantienen el resultado limpio. La fórmula se aplica a todas las filas numéricas marcadas, así que no marques nada más en la misma ejecución. Y ejecuta los productos variables con el interruptor variaciones activado: los productos padre no tienen precio normal propio, por lo que sin el interruptor recibirían un coste de 0, que sus variaciones heredarían después. Un margen del 70 % significa un coste del 30 % del precio; el factor es 1 - margin.

El mismo bloque copia un coste de un campo a otro, que es la forma de pasar de un plugin al campo propio de WooCommerce. Añade las dos claves como campos meta numéricos, filtra por el campo antiguo desde 0.01 para dejar fuera los productos sin coste, marca la nueva fila Coste con establecer nuevo y 0, y elige + con el campo antiguo: cada producto recibe 0 más su coste anterior.

Redondear el coste a céntimos

Los porcentajes producen fracciones largas. El desplegable de redondeo bajo las filas numéricas redondea a números enteros, hasta 0,05 o 0,10, o a terminaciones de precio como .99, como se describe en redondeo de precios; no tiene una opción de «dos decimales». Para redondear el coste a céntimos, deja el desplegable sin redondeo y añade este filtro, que recibe el valor después de la fórmula:

/*
 * BEAR: round the cost to whole cents when a bulk edit or a cell edit writes it.
 * Child theme functions.php or a code snippets plugin.
 * Use the meta key of your cost field.
 */
add_filter('woobe_number_field_manipulation', function ($value, $field_key, $product_id) {
    if ('_cogs_total_value' === $field_key && is_numeric($value)) {
        return round((float) $value, 2);
    }
    return $value;
}, 10, 3);

La exportación e importación CSV propias de WooCommerce también incluyen una columna Coste de los bienes cuando la funcionalidad está activada, lo que resulta útil para costes que llegan de la hoja de cálculo de un proveedor. Los cambios hechos con BEAR se registran en la pestaña Historial (History) y se pueden revertir ejecución por ejecución; una importación CSV no.

Qué no se puede editar de esta manera

Los Campos meta de BEAR funcionan con datos almacenados como meta de producto. ATUM guarda su precio de compra, el proveedor y el SKU del proveedor en su propia tabla, así que Obtener claves meta de cualquier producto mediante su ID no los lista y ninguna clave meta llega hasta ellos; edítalos con las pantallas propias de ATUM. Lo mismo vale para cualquier plugin que guarde datos de producto en una tabla personalizada.

Del coste al margen

BEAR no tiene una columna de margen integrada, porque un margen depende del precio en el momento de la venta. Hay dos formas de obtenerlo:

  • Un campo de margen almacenado. Añade un campo meta numérico como _margin. Ejecución 1: márcalo, establecer nuevo 0, Campos numéricos seleccionados + PRECIO NORMAL. Ejecución 2: márcalo, aumentar en valor 0, - Coste. El campo contiene entonces el precio menos el coste por unidad, y al ordenar su columna los productos más débiles quedan primero. Es una instantánea: vuelve a ejecutar los dos pasos después de cambios de precio o de coste.
  • Un informe de margen a partir de ventas reales. Con el servidor MCP conectado, un asistente de IA puede informar del margen por producto en un periodo: ingresos menos el Coste de los bienes vendidos de WooCommerce, con el peor margen primero y un recuento de los productos que no tienen coste registrado. Lee el campo de coste propio de WooCommerce y, en las variaciones, el coste guardado en la propia variación, así que fija los costes en las variaciones cuando quieras que aparezcan en ese informe.

Antes de la primera ejecución

  • La clave del coste es conocida y está añadida como campo meta numérico, y su columna está activada.
  • Solo la fila Coste está marcada cuando se usa Campos numéricos seleccionados.
  • Los productos variables se ejecutan con variaciones activado, o el coste del padre se fija a propósito.
  • Los productos sin precio normal se filtran antes de una ejecución con fórmula.
  • Una ejecución de prueba en dos o tres productos se ve bien en el editor de producto.

Si tu plugin de costes guarda su valor en un lugar que no encuentras, publica el nombre del plugin y el ID de un producto en el foro de soporte de BEAR.