Precios de producto
POST
Actualizar precio de producto
POST /api/product-prices/update-product-price
Descripción
Modifica un precio existente, sus opciones y los menus donde se ofrece.
Detalles
Actualiza los datos de un precio: nombre, modo de precio, valor o porcentaje segun corresponda, opciones y menus asociados. Las opciones nuevas se agregan, las modificadas se actualizan y las retiradas se desactivan. La asociación a menus también se ajusta en base al listado enviado. Falla si el precio no existe, el modo de precio no coincide con los campos, o si una lista de precios queda sin opciones.
Permisos requeridos
catalog.module
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| productPriceId | int | Sí |
min_value:1
|
| name | string | Sí |
min:1
max:150
|
| priceType | string | Sí |
enum:inherit,fixed,percentage,free,price_list,open_price
|
| priceValueCents | int | No |
min_value:0
|
| priceBasisPoints | int | No |
min_value:-10000
max_value:10000
|
| options | array | No | — |
| options[].id | int | No |
min_value:1
|
| options[].description | string | Sí |
min:1
max:150
|
| options[].priceCents | int | Sí |
min_value:0
|
| menuIds | string | No |
array_int
|
Ejemplo de request
curl -X POST https://app.restofy.co/api/product-prices/update-product-price \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-d '{
"productPriceId": 1,
"name": "string",
"priceType": "string"
}'
Los valores son demo: reemplázalos por datos reales del negocio.
Ejemplo de respuesta
Actualizado: 2026-07-15T13:20:48Z
HTTP 200
Request
{
"productPriceId": 52,
"name": "Actualizado 6a57891251ef3",
"priceType": "fixed",
"priceValueCents": 3000,
"menuIds": []
}
Response
{
"success": true,
"message": "Precio actualizado",
"data": {
"productPriceId": 52,
"associatedMenuIds": []
}
}