The two things Bettr tracks — the products in your catalog and the physical lots behind them — and why every receipt, count, and shipment is recorded instead of typed over.
On this page
Was this helpful?
Real help from real food people
Chef Diego runs a real food plant. If this page didn't get you there, tell us — a person reads every message.
A retail buyer emails on a Thursday afternoon: the case of teriyaki bowls you
shipped has a lot code stamped on the box, and they want to know which rice went
into that batch and which supplier it came from — today. On a spreadsheet, that's
an afternoon of cross-referencing tabs that stopped matching the floor months
ago. In Bettr Manager it's a lookup, and this page explains the model underneath
that makes it one. Open Products
next to this page and you'll see the pieces as they come up.
Products and stock items are two different things
The first thing to hold separate is the catalog from the shelf.
A is the idea of an item. It carries a code, a category, how it's
stored (Dry, Frozen, or Refrigerated), its allergens, and whether it's Goods, a
Service, or a Combo. The products list shows every product in your active company,
each with its on-hand total at a glance.
A is
the actual inventory in the building. One product, Jasmine Rice, can stand behind
a dozen stock items: one per delivery, each its own lot with its own quantity and
expiry. The product tells you what it is; the stock item tells you which
batch, how much, and where. Everything Bettr does with traceability rides on
that difference — you recall a lot, not a product.
A lot has a location, a quantity, and an expiry
Open any stock item
and it reads like the label on the box:
Lot number — the code that identifies this exact batch, with room for an
alternative lot number when a supplier stamps their own.
Quantity — how much is left, shown against the quantity you started with, so
you can see what's been drawn down.
Manufacture and expiration dates — when it was made, and when it's no longer
good to use or ship.
Location — the bins or rooms it's placed in, with the amount in each. A
single lot can sit in more than one place.
Expiry isn't decoration. Because every lot carries one, Bettr can work
, which is what keeps short-dated stock from dying on a shelf
while fresher cases ship first.
Every movement is recorded, never overwritten
On-hand isn't a number someone edits. It's the sum of a history.
Every time stock changes hands, Bettr writes a , and never erases the one before it.
The Stock movements
feed is that ledger. It splits into Inbound and Outbound, and every row is
tagged with where it came from — Purchase Order, Production, Kitchen Return, Sales
Order, Picking, Supplier Return, and Waste. A row names the product, the lot, who
moved it, when, and how many cases, plus or minus.
Your current on-hand is simply what's left after you add every inbound and
subtract every outbound. Nothing is written over, so the question "how did we get
to this number?" always has its answer sitting right there in the feed.
Moving a lot between locations isn't a movement
Relocating a lot from one bin to another doesn't change how much you own, so a
location-to-location transfer doesn't post to the stock movements ledger. The
ledger tracks quantity coming into and leaving the building, not stock shuffling
inside it.
Correcting stock is an event, too
Real shelves drift from any system. When they do, you don't reach in and retype
the number — you record the correction as its own event, so both the before and
the after survive.
The everyday way to do that is an
inventory count: you count location by
location, review the variance per lot between what you counted and what Bettr
expected, and apply it. Applying records the correction against the count itself —
an adjustment stamped with who counted and when. The count is a paper trail, not an
eraser.
If your catalog is connected to Odoo, a product also has a
Sync stock with Odoo check that
compares Bettr's on-hand against Odoo's and applies the difference the same way —
as recorded movements, tagged Odoo Sync. Either path leaves the history
intact.
Why this makes traceability a lookup
Put the three ideas together — products standing behind physical lots, lots that
carry their own expiry and location, and a ledger that's only ever added to — and
the buyer's Thursday email stops being a scramble.
Because the whole chain is kept, you can follow a lot's
in
both directions — forward to every shipment a lot went into, and backward to the
supplier it came from. A
mock recall
or an audit becomes something you run before the auditor reaches the door, instead
of an afternoon lost in a binder.