Restofy Docs
Productos del menú POST

Actualizar producto del catálogo

POST /api/products/update-product

Descripción

Modifica los datos editables de un producto existente del catálogo.

Detalles

Actualiza nombre, código, categoría, unidad, tiempo de servicio, precio, apariencia y demás atributos editables de un producto identificado por su uuid. Si el código se deja vacío, se genera uno automáticamente a partir de la categoría. Falla si el producto no existe o fue eliminado, si ya existe otro producto con el mismo nombre, si el código ya está en uso por otro producto, o si la categoría, unidad o tiempo de servicio referenciados no existen o no están disponibles.

Permisos requeridos

catalog.module

Request

Nombre Tipo Requerido Reglas
uuid string Sí
min:36 max:36
name string Sí
min:2 max:150
sku string No
max:50
productCategoryUuid string Sí
min:36 max:36
unitId int Sí
min_value:1
defaultCourseId int Sí
min_value:1
internalName string No
max:150
description string No
max:2000
kitchenDefaultNotes string No
max:2000
basePriceCents int No
min_value:0 default:0
consumptionTaxCents int No
min_value:0 default:0
prepTimeMinutes int No
min_value:0 default:0
stockMin string No
decimal min_value:0 default:0
iconFontAwesome string No
max:100 default:fa-solid fa-bowl-food
color string No
min:7 max:7 default:#FF4500
menuCardStyle string No
max:20 default:auto
isActive int No
enum:0,1 default:1
taxRuleIds string No
array_int
revenueAccountId int No
min_value:1

Respuesta

Campos que devuelve dentro de data. Nada fuera de esta lista sale en la respuesta.

Campo Tipo Descripción
product object Producto con los cambios guardados
product.uuid string Identificador del producto
product.name string Nombre del producto
product.sku string Código SKU
product.internalName string Admite vacío Nombre interno para cocina y reportes
product.description string Admite vacío Descripción para la carta
product.kitchenDefaultNotes string Admite vacío Notas sugeridas para cocina
product.basePriceCents int Precio base, en centavos
product.prepTimeMinutes int Tiempo de preparación en minutos
product.stockMin decimal Existencia mínima antes de avisar
product.iconFontAwesome string Ícono de Font Awesome
product.color string Admite vacío Color en hexadecimal
product.isActive bool Si se ofrece para vender
product.productCategoryUuid string Identificador de la categoría
product.productCategoryName string Nombre de la categoría
product.unitId int Unidad en que se vende
product.defaultCourseId int Tiempo de servicio por defecto
product.revenueAccountId int Admite vacío Cuenta de ingresos; vacío si usa la del restaurante
product.consumptionTaxCents int Impuesto al consumo por unidad, en centavos
product.menuCardStyle string Estilo de la tarjeta en la carta
product.taxRuleIds array<int> Reglas de impuesto del producto

Ejemplo de request

curl -X POST https://restofy.pro/api/products/update-product \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <accessToken>" \
  -d '{
    "uuid": "string",
    "name": "string",
    "productCategoryUuid": "string",
    "unitId": 1,
    "defaultCourseId": 1
}'

Los valores son demo: reemplázalos por datos reales del negocio.