Precios del menú
POST /api/pos-catalog/get-menu-prices
Descripción
Devuelve todos los precios configurados para los productos del menú, incluyendo opciones de listas de precio y el valor resuelto de cada uno.
Detalles
Retorna los precios habilitados para cada producto del menú indicado, identificando si son fijos, heredados de la base, porcentuales, listas de precio, gratuitos o de precio abierto. Cuando aplica también devuelve las opciones de cada lista de precio. Falla si el menú no aplica a la orden o el usuario no tiene acceso.
Permisos requeridos
orders.module
orders.integration
El usuario solo necesita uno de los permisos listados.
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| menuId | int | Sí |
min_value:1
|
| orderUuid | string | Sí |
min:36
max:36
|
| productIds | string | No |
array_int
|
Ejemplo de request
curl -X POST https://restofy.pro/api/pos-catalog/get-menu-prices \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-H "X-Tenant-Key: <tenantKey>" \
-d '{
"menuId": 1,
"orderUuid": "string"
}'
Los valores son demo: reemplázalos por datos reales del negocio.
Ejemplo de respuesta
Actualizado: 2026-09-08T16:35:34Z
HTTP 200
Request
{
"orderUuid": "23c322c2-ff78-4395-a157-fac5cbbd1c38",
"menuId": 1
}
Response
{
"success": true,
"message": "Operación realizada correctamente",
"data": {
"prices": [
{
"menuProductId": 4,
"productId": 4,
"productPriceId": 4,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 700000,
"isSelfOrderPrice": false
},
{
"menuProductId": 5,
"productId": 5,
"productPriceId": 46,
"priceName": "Precio normal",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 1100000,
"isSelfOrderPrice": false
},
{
"menuProductId": 5,
"productId": 5,
"productPriceId": 47,
"priceName": "Happy hour",
"priceType": "fixed",
"priceValueCents": 850000,
"priceBasisPoints": 0,
"resolvedPriceCents": 850000,
"isSelfOrderPrice": false
},
{
"menuProductId": 5,
"productId": 5,
"productPriceId": 48,
"priceName": "50% OFF",
"priceType": "percentage",
"priceValueCents": 0,
"priceBasisPoints": 5000,
"resolvedPriceCents": 550000,
"isSelfOrderPrice": false
},
{
"menuProductId": 5,
"productId": 5,
"productPriceId": 49,
"priceName": "Cortesía",
"priceType": "free",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 0,
"isSelfOrderPrice": false
},
{
"menuProductId": 5,
"productId": 5,
"productPriceId": 50,
"priceName": "Por tamaño",
"priceType": "price_list",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": null,
"isSelfOrderPrice": false
},
{
"menuProductId": 5,
"productId": 5,
"productPriceId": 51,
"priceName": "Precio manual",
"priceType": "open_price",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": null,
"isSelfOrderPrice": false
},
{
"menuProductId": 6,
"productId": 6,
"productPriceId": 6,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 1800000,
"isSelfOrderPrice": false
},
{
"menuProductId": 7,
"productId": 7,
"productPriceId": 7,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 2200000,
"isSelfOrderPrice": false
},
{
"menuProductId": 8,
"productId": 8,
"productPriceId": 8,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 2500000,
"isSelfOrderPrice": false
},
{
"menuProductId": 9,
"productId": 9,
"productPriceId": 9,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 2300000,
"isSelfOrderPrice": false
},
{
"menuProductId": 10,
"productId": 10,
"productPriceId": 10,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 1600000,
"isSelfOrderPrice": false
},
{
"menuProductId": 11,
"productId": 11,
"productPriceId": 11,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 1000000,
"isSelfOrderPrice": false
},
{
"menuProductId": 12,
"productId": 12,
"productPriceId": 12,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 1100000,
"isSelfOrderPrice": false
},
{
"menuProductId": 13,
"productId": 13,
"productPriceId": 13,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 900000,
"isSelfOrderPrice": false
},
{
"menuProductId": 14,
"productId": 14,
"productPriceId": 14,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 850000,
"isSelfOrderPrice": false
},
{
"menuProductId": 15,
"productId": 15,
"productPriceId": 15,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 750000,
"isSelfOrderPrice": false
},
{
"menuProductId": 16,
"productId": 16,
"productPriceId": 16,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 500000,
"isSelfOrderPrice": false
},
{
"menuProductId": 17,
"productId": 17,
"productPriceId": 17,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 550000,
"isSelfOrderPrice": false
},
{
"menuProductId": 18,
"productId": 18,
"productPriceId": 18,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 350000,
"isSelfOrderPrice": false
},
{
"menuProductId": 19,
"productId": 19,
"productPriceId": 19,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 400000,
"isSelfOrderPrice": false
},
{
"menuProductId": 20,
"productId": 20,
"productPriceId": 20,
"priceName": "Precio estándar",
"priceType": "inherit",
"priceValueCents": 0,
"priceBasisPoints": 0,
"resolvedPriceCents": 600000,
"isSelfOrderPrice": false
}
],
"priceOptions": [
{
"productPriceId": 50,
"optionId": 14,
"description": "Pequeño",
"priceCents": 800000,
"sortOrder": 1
},
{
"productPriceId": 50,
"optionId": 15,
"description": "Mediano",
"priceCents": 1100000,
"sortOrder": 2
},
{
"productPriceId": 50,
"optionId": 16,
"description": "Grande",
"priceCents": 1400000,
"sortOrder": 3
}
]
}
}