← Back to support

Daily ops

The container model: kegs, bottles and spirits

Updated: 2026-10-01

The container model

Also known as: envase, kegs and bottles, per-pour cost, coste por ración, container cost, yield calculation.

For products that come in a container and are poured in portions — a 30L keg sold as half-pints and pints, a 750 ml wine bottle sold by the glass, a 700 ml spirit bottle sold as singles and doubles — brasio's container model auto-derives the per-pour cost from the container cost. You set the container size and cost once; each size on the product gets its cost calculated from there.

When to enable it

Enable the container model on any product where:

  • The product comes in a fixed-size unit (a 30L keg, a 750 ml wine bottle, a 700 ml spirit bottle).
  • You pour from that unit into a smaller serving size (a pint = 568 ml, a copa = 150 ml, a single = 35 ml).
  • You want the per-pour cost calculated automatically rather than typed in by hand for each size.

Good fits:

  • Kegged beer (35L / 30L / 20L kegs, poured as caña / tercio / pinta).
  • Wines by the glass (750 ml bottles, poured as 150 ml glasses).
  • Spirits (700 ml bottles, poured as 35 ml singles or 50 ml doubles).
  • Packs, boxes and crates you buy as one and sell one at a time — a box of 6 frozen pizzas, a crate of 24 bottles, a case of 12 cans. Here the container size is a count of items, not ml. See Packs, boxes and crates below.

Not the right fit:

  • Things you both buy and sell singly with no pack (one bottle in, one bottle out) — just count items.
  • Coffee, soft drinks from a post-mix tap, dishes made from a recipe (use a recipe instead).

Set it up

  1. On the till, Admin → Catálogo, open the product.
  2. Tick Viene en un envase que dividimos en raciones (Comes in a container we divide into portions).
  3. Two fields appear:
    • Tamaño del envase (ml o unidades) — e.g. 750 for a wine bottle, 30000 for a 30L keg.
    • Coste neto del envase (€) — the supplier price for one container, net of VAT. E.g. €4.50 for a bottle of house wine, €120.00 for a 30L keg.
  4. Save.

What changes for each size

In the Tamaños section, each size now shows Calculado del envase: {value}€ as the cost row. The formula is:

coste por ración = (ml de la ración / ml del envase) × coste del envase

So a 150 ml glass from a €4.50 / 750 ml bottle costs (150/750) × 4.50 = €0.90 per glass. brasio writes this into the size's coste neto € automatically.

You can still override any size's cost by typing into the field. The override sticks until you remove it.

Packs, boxes and crates

The same model handles anything bought by the pack and sold by the item. The "ml" field simply becomes a count:

| Product | Container size | Container net cost | Size you sell | Cost per item (automatic) | |---|---|---|---|---| | Frozen pizza, box of 6 | 6 | €20.76 | unit = 1 | 20.76 ÷ 6 = €3.46 | | Bottled beer, crate of 24 | 24 | €18.00 | bottle = 1 | 18.00 ÷ 24 = €0.75 |

Set the stock Unit to the name of the pack (choose Other… and type Box or Crate), because the stock line counts packs, not items: 2 boxes in storage = 12 pizzas you can sell.

On Goods In, enter the number of packs received and the cost of one pack — 2 boxes at 20.76, not 12 pizzas. Each item sold takes one out of the open pack, and brasio opens the next pack automatically. See Goods in.

How it feeds the GP margin

With the per-pour cost in place, the margin tooltip on each size shows the live gross-profit percentage: Margen {amount} · {gp}% GP. This is what owner/manager users see when editing or auditing prices. See Cost prices and GP margins.

Inventory: cascading containers

For wine sold by the glass and by the bottle, the container model pairs with bottle tracking: brasio knows how many bottles are in stock, how many glasses are left in the currently open bottle, and how many glasses come from a full bottle. When the open bottle's last glass is sold, brasio automatically opens the next sealed bottle. See Inventory tracking.

For kegs, the same cascade works: a 30L keg starts full, drops with each pint sold, and the fill bar on the till tracks the remaining percentage in real time.

Not working?

  • The size's cost still shows the old hand-typed value: you overrode it once. Clear the coste neto € field on the size row and save — brasio re-derives from the container.
  • The container ml is wrong (e.g. 30 instead of 30000 for a keg): mind your units — the field is ml or units, so a 30L keg is 30000 ml.
  • GP margin tooltip is missing: check the size has both a precio € and a derived cost. With no cost, no margin.
  • Goods-in of 2 boxes shows 2, not 12: that's by design — stock counts boxes. 2 boxes × 6 = 12 sellable. Name the stock unit Box so it reads clearly.
  • Margin shows 0 or looks wrong: the product needs a selling price as well as a cost.
  • I want a size whose cost isn't proportional (e.g. a 'shot tasting flight'): override the size's cost field manually; the container model is a default, not a constraint.

More in Daily ops

Still stuck?

Talk to our 24/7 agent in your language. If it can't answer, we'll pass you to a human.