Representa a un precio personalizado para un Good en una sucursal. Contiene valores para calcular el precio del producto aplicando una sencilla fórmula:
multiplied_price = branch_good.min_price_e2 * price_multiplier;
rounded_price_e2 = roundUpToNearestInt(multiplied_price, price_multiple_e2);
price_e2 = rounded_price_e2 + price_adjustment_e2;
| Atributo | Tipo | Descripción |
|---|---|---|
id |
int |
|
price_multiplier |
float |
Multiplicador del precio mínimo del producto para esta lista. |
price_multiple_e2 |
int |
Múltiplo (céntimos) al que se redondea hacia arriba el precio resultante. |
price_adjustment_e2 |
int |
Ajuste fijo (céntimos) que se suma tras redondear. |
created_at |
datetime\|null |
Fecha de creación. |
updated_at |
datetime\|null |
Fecha de última modificación. |
branch_id |
int |
Sucursal a la que aplica el precio. |
branch_good_id |
int |
Producto de sucursal ({@link \App\BranchGood}) al que aplica; se elimina en cascada con él. |
branch_price_list_id |
int |
Lista de precios ({@link \App\BranchPriceList}) a la que pertenece este precio personalizado. |
allLogs |
ApiLog> |
Registros de auditoría de la API, incluidos los internos. |
branch |
Branch |
Sucursal a la que aplica el precio. |
branchGood |
BranchGood |
Producto de sucursal al que aplica. |
logs |
ApiLog> |
Registros de auditoría de la API visibles. |
priceList |
BranchPriceList |
Lista de precios a la que pertenece. |
{
"id": 1,
"price_multiplier": 1,
"price_multiple_e2": 1,
"price_adjustment_e2": 0,
"created_at": "2026-09-10 15:08:27",
"updated_at": "2026-09-10 15:08:27",
"branch_id": 37,
"branch_good_id": 127,
"branch_price_list_id": 745,
"price_e2": 2500,
"branch_good": {
"id": 127,
"min_price_e2": 2500,
"rating_e2": 0,
"rating_sum": 0,
"rating_count": 0,
"available": true,
"provider_fee_e2": 0,
"provider_fee_prc": 0,
"created_at": "2020-05-02 00:32:56",
"updated_at": "2026-03-06 16:04:02",
"branch_id": 37,
"good_id": 140,
"branch_group_id": 26,
"eta": "0",
"promo_id": 2529,
"promo_info": null,
"last_sync_id": null,
"quantity_real": null,
"extras_price_e2": 0,
"list_order": 65535,
"featured_good_config": {
"is_enabled": true,
"in_order": 65535,
"blocks": []
},
"good_type_id": null,
"sku": "123",
"type": 0,
"name": "Pulpo Parrillado con Romesco",
"unit": "und",
"presentation": "per_unit",
"max_quantity": 10,
"limit_type": "per_order",
"details": "Pulpo parrillado, papa criolla , salsa romesco y aderezo2",
"short_details": "n/a",
"picture_urls": [
"http://127.0.0.1:8000/storage/static/default/product_category_logo.png"
],
"vertical_picture_urls": [
"http://127.0.0.1:8000/storage/static/default/product_category_logo_portrait.jpg"
],
"notes_enabled": true,
"custom_data": {
"list_price_e2": 2500,
"display_price_e2": 2500,
"price_e2": 2500,
"extras_list_price_e2": 0,
"extras_display_price_e2": 0,
"extras_price_e2": 0,
"client_id": null,
"branch_price_list_id": 425,
"currency": {
"id": 475,
"enabled": true,
"iso": "USD",
"symbol": "$",
"conversion_factor": 1,
"related_iso": "USD",
"decimals_count": 2,
"format": "0.00$",
"decimal_point": ".",
"use_thousands_separator": true,
"thousands_separator": ",",
"is_local": true,
"is_international": true,
"created_at": "2021-07-15 19:16:41",
"updated_at": "2024-02-22 13:34:01",
"company_id": 116,
"is_custom": true,
"branch_id": 37,
"auto_sync": false,
"auto_sync_provider": "legacy",
"use_conversion": false,
"available": true,
"related_iso_expected": "USD",
"related_iso_error": false
},
"conversion": {
"list_price_e2": 2500,
"display_price_e2": 2500,
"price_e2": 2500,
"extras_list_price_e2": 0,
"extras_display_price_e2": 0,
"extras_price_e2": 0,
"currency.id": 475,
"currency.enabled": true,
"currency.iso": "USD",
"currency.symbol": "$",
"currency.conversion_factor": 1,
"currency.related_iso": "USD",
"currency.decimals_count": 2,
"currency.format": "0.00$",
"currency.decimal_point": ".",
"currency.use_thousands_separator": true,
"currency.thousands_separator": ",",
"currency.is_local": true,
"currency.is_international": true,
"currency.created_at": "2021-07-15 19:16:41",
"currency.updated_at": "2024-02-22 13:34:01",
"currency.company_id": 116,
"currency.is_custom": true,
"currency.branch_id": 37,
"currency.auto_sync": false,
"currency.auto_sync_provider": "legacy",
"currency.use_conversion": false,
"currency.available": true,
"currency.related_iso_expected": "USD",
"currency.related_iso_error": false,
"list_price": "25.00$",
"display_price": "25.00$"
},
"real_prices": {
"list_price_e2": 2500,
"display_price_e2": 2500,
"price_e2": 2500,
"extras_list_price_e2": 0,
"extras_display_price_e2": 0,
"extras_price_e2": 0
},
"list_price": "25.00$",
"display_price": "25.00$",
"unit_list_price": "25.00$",
"unit_display_price": "25.00$"
},
"quantity_real_available": null,
"quantity": null,
"unit_config": {
"enabled": false,
"display_mode": "fraction",
"min_quantity": 250,
"step_quantity": 250,
"max_quantity": 1000,
"fraction": 1000,
"unit_name": "kg",
"weight_per_unit": 55
},
"weight_per_unit": "55kg",
"has_stock_for_selling": true,
"available_for_selling": true,
"calculated_eta": null,
"eta_config": null,
"tags": [],
"is_service": false,
"is_combo": false,
"barcodes": [],
"label": null,
"discount_info": null,
"featured_in_order": 65535
}
}
Crea una BranchGoodPrice para el producto dentro de una lista de precios
(price_multiplier, price_multiple_e2, price_adjustment_e2).
| Método | URI | Cabeceras |
|---|---|---|
| POST | /companies/{companyId}/price-lists/{priceListId}/goods/{goodId}/good-prices |
Authorization |
{
"price_multiplier": "numeric|min:0.00001",
"price_multiple_e2": "integer|min:1",
"price_adjustment_e2": "integer"
}
{info} Soporta: Filters
Devuelve las BranchGoodPrice del producto en la sucursal indicada (una por lista de precios).
| Método | URI | Cabeceras |
|---|---|---|
| GET | /companies/{companyId}/branches/{branchId}/goods/{goodId}/good-prices |
Authorization |
Devuelve la BranchGoodPrice indicada.
| Método | URI | Cabeceras |
|---|---|---|
| GET | /companies/{companyId}/good-prices/{goodPriceId} |
Authorization |
Modifica la fórmula de la BranchGoodPrice indicada.
| Método | URI | Cabeceras |
|---|---|---|
| PATCH | /companies/{companyId}/good-prices/{goodPriceId} |
Authorization |
{
"price_multiplier": "numeric|min:0.00001",
"price_multiple_e2": "integer|min:1",
"price_adjustment_e2": "integer"
}
Borra la BranchGoodPrice indicada; el producto vuelve al precio calculado por la lista.
| Método | URI | Cabeceras |
|---|---|---|
| DELETE | /companies/{companyId}/good-prices/{goodPriceId} |
Authorization |
allLogs HasMany ApiLogbranch BelongsTo BranchbranchGood BelongsTo BranchGoodlogs HasMany ApiLogpriceList BelongsTo BranchPriceList