Scales & Selling by Weight
This page covers everything about selling by weight in VMX: what it looks like at the register, what to buy, how to connect and configure it, and what to do when it isn't working. You can do all of it yourself.
What selling by weight does
If you sell anything by the pound — produce, bulk seed, candy, coffee, cheese, soil, nuts — VMX can read a scale at the register and use the weight as the quantity on the sale.
The item is priced per pound in your inventory. The scale supplies the number of pounds. VMX multiplies the two.
At the register, a sale of 2.4 lb of an item priced at $3.99/lb looks like this:
BULK SUNFLOWER SEED 2.4 @ 3.99 9.58
The cashier never types the weight, and never does the math.
What the cashier does at the register
Day to day, weighing is either two steps or one, depending on how you set the item up.
Two steps — works for any item, no item setup needed:
- Put the item on the scale.
- Press Read Scale Weight on the register. A Waiting for scale ... message appears briefly.
- Scan or key the item. It rings up at the weight that was read.
One step — for items marked as weighed items:
- Put the item on the scale.
- Scan or key the item. VMX reads the scale by itself and rings it up at that weight.
Most stores set up the items they weigh most often as weighed items, and leave the manual Read Scale Weight button available for everything else. You do not have to choose one — both work at the same time on the same register.
If a cashier types a quantity before ringing a weighed item, that typed number wins and the scale is not read. That is the manual override for when a scale is down or a weight needs correcting.
How it works
The scale plugs into the register's computer by serial cable. VMX reads it through the Printer Bridge already running on that computer — the same small program that handles receipt printing. There is no scale driver and no extra VMX software to install.
Two things follow from that, and between them they explain almost every problem you will hit:
- If the Printer Bridge on that computer is not running, the scale cannot be read. A scale that "stopped working" is very often a bridge that is not running.
- The scale must be plugged into the same computer as the Printer Bridge you select in VMX. VMX asks the bridge on that machine to read the port, so the cable has to physically land there.
If that computer has no Printer Bridge yet, install it first — see Printer Bridge.
Two ways to sell by weight — which one do you need?
Now that you know what it does, pick the approach that matches how you sell:
| Weigh at the register | Weigh and label ahead of time | |
|---|---|---|
| How it works | A scale at the lane, wired to the register's computer. The cashier weighs the item at checkout. | A standalone label-printing scale at a back counter. It prints a barcode sticker with the weight in it. The cashier just scans the sticker. |
| Best for | Anything weighed in front of the customer — loose produce, bulk bins, scoop-your-own | Items packed ahead and put on a shelf — pre-bagged seed, wrapped cheese, boxed candy, bakery items needing an ingredient list or sell-by date |
| Needs a scale at every lane? | Yes | No — the lanes need nothing |
| Set up where | Admin → Registers → Scales (the rest of this page) | Barcodes and units of measure — see Weighing and labelling ahead of time |
Plenty of stores do both. The rest of this page is about weighing at the register; the labelling approach has its own short section near the end.
Setting up a scale at the register
Eight steps, start to finish. Steps 1–3 happen at the scale and the computer; steps 4–8 happen in VMX.
There is a Setup checklist at the end of these steps if you'd rather work from a list.
Before you start, you'll need:
- A supported scale (Step 1) and the right cable
- Access to the register's computer, to find the COM port
- The ✏️ Registers admin permission in VMX, for the Scales tab (managed on Admin → Permissions)
- A working Printer Bridge on that computer
Step 1: Choose and buy a scale
VMX reads these four scale models, and only these four. A scale that isn't on this list cannot be read even if it has a serial port, because every brand sends weights in its own format.
| Scale | Data bits | Parity | Baud |
|---|---|---|---|
| Toledo / Mettler-Toledo | 7 | Odd | 9600 |
| Avery Brecknell (67xx) | 7 | Odd | 9600 |
| Avery Weigh-Tronix (ZM405) | 8 | None | 9600 |
| CAS PD-2 | 7 | Even | 9600 |
Write down the row for your model — you'll enter those three values in Step 5. Stop bits are always 1 and are not configurable.
What to confirm before ordering:
- It must have an RS-232 serial output. Also listed as "RS232", "serial port", or "DB9 output". The same scale is often sold in a USB-only or display-only version that VMX cannot read, so check the specific model number you're ordering.
- Order the serial cable the scale manufacturer specifies for connecting to a PC. Serial cables are not interchangeable; the wrong one will look properly connected and never pass any data.
- If the register computer has no serial port — most modern ones don't — add a USB-to-serial adapter. It plugs into a USB socket and Windows treats it as a COM port. Choose one with a well-known chipset (FTDI or Prolific) and install its driver before you start, or Windows won't create a COM port at all.
Selling by weight may be regulated where you are
In the United States, a scale used to decide what a customer pays is generally required to be legal for trade (NTEP-certified) and registered or inspected by your state's weights and measures office. Requirements vary by state and by what you sell. Check with your state agriculture or weights-and-measures department before buying, so you don't end up with a scale you can't legally use at the register. VMX cannot tell whether a scale is certified.
To ask about a model that isn't on this list, contact help@vmxllc.com.
Step 2: Set the scale's own settings
This happens on the scale itself, using its setup menu — its manual will show how to reach it. It is the step most often missed, and a scale with the wrong settings here will look perfectly healthy and still never work.
Set two things:
1. Baud rate, data bits, and parity — to match the row for your model in Step 1.
2. Output mode — how the scale decides when to send a weight:
| Scale | Output mode to select |
|---|---|
| Toledo / Mettler-Toledo | On-demand — the scale answers when asked |
| Avery Brecknell (67xx) | On-demand — the scale answers when asked |
| CAS PD-2 | On-demand — the scale answers when asked |
| Avery Weigh-Tronix (ZM405) | Continuous — the scale streams weights on its own |
For three of the four, VMX sends a request and waits for the answer, so a scale set to stream continuously — or set to send only when its own print button is pressed — will not respond correctly. The Avery Weigh-Tronix is the opposite: VMX sends it nothing and simply listens, so it has to be streaming.
Manufacturers name these differently. On-demand may appear as "demand", "polled", "command", or "host request". Continuous may appear as "stream" or "continuous output".
Step 3: Connect the scale and find its COM port
- Plug the serial cable into the scale and into the register's computer — or into the USB-to-serial adapter, and that into the computer.
- On that computer, open Device Manager: press the Windows key, type
Device Manager, and press Enter. - Expand Ports (COM & LPT).
- Find your scale or adapter in the list. The port number is in its name, for example
USB Serial Port (COM3)orProlific USB-to-Serial Comm Port (COM4).
Write down that number — COM3, COM4, and so on. You'll enter it in Step 5.
Tips:
- Not sure which entry is yours? Unplug the cable and watch which one disappears, then plug it back in.
- Nothing at all under Ports (COM & LPT)? The adapter's driver isn't installed. Install it and look again.
- The port number can change if the adapter is later moved to a different USB socket. Plug it back into the same socket it was set up on, and check here first if a working scale suddenly stops.
Step 4: Find the Printer Bridge on that computer
VMX needs to know which Printer Bridge to ask, and it must be the one running on the computer you just plugged the scale into.
- Go to Admin → Printers.
- Look at the Host/OS column — it shows the computer name each bridge is running on, for example
REGISTER1. - Find the row whose computer name matches that computer. Write down that bridge's name.
To check the computer's own name: on that computer, press the Windows key, type About your PC, press Enter, and read Device name.
Step 5: Add the scale in VMX
- Go to Admin → Registers and click the Scales tab.
- Click + Scale.
- Fill in the fields:
| Field | What to enter |
|---|---|
| Name | Anything that helps you recognize it later, e.g. "Lane 1 Scale" |
| Register | The register the scale is attached to |
| Scale Type | Your model, from the four in Step 1 |
| Printer Bridge | The bridge you wrote down in Step 4 |
| Serial Port | The COM port you wrote down in Step 3, e.g. COM3 |
| Baud, Data Bits, Parity | The row for your model in Step 1 |
| Enabled | Leave on |
- Click Create.
A register can have only one enabled scale. If you're replacing a scale, disable or delete the old row first.
Step 6: Test the scale
Click Test on the row you just created. VMX reads the scale exactly the way the register does, and shows the result next to the button:
- A weight in green — it's working. Put something on the scale and click Test again; the number should change. If it does, the scale is fully connected.
- A red message — the read failed. VMX also shows the raw response from the scale, and that raw part is the useful bit: it tells you whether the scale answered at all. Go to Troubleshooting.
Use Test after any change to these settings, and any time someone reports the scale isn't working. It's the fastest way to tell a hardware problem from a settings problem.
Step 7: Set up the items you sell by weight
A scale on its own doesn't sell anything. Each item you weigh needs three things, set on the item in Inventory:
- Priced per pound. The weight becomes the quantity, so the item's unit price must be the price of one pound. An item priced per bag will ring wildly wrong.
- "No Fractions?" turned off. A weight like 2.4 lb can't ring if the item only accepts whole numbers.
- "Weighed Item?" turned on — optional. This is what makes the scale read automatically when the item is rung up. Without it the item still works; the cashier just presses Read Scale Weight first. See Weighed items.
Step 8: Ring a test sale
Testing the scale proves the wiring. Ringing a sale proves the whole thing.
- Put a known item on the scale.
- Ring it up the way your cashiers will.
- Check the receipt line: the quantity should match the weight on the scale's display, and the price should be the weight times the per-pound price.
- Void the test sale.
If the quantity is wrong rather than missing, see The weight rings up as the wrong quantity.
Setup checklist
- [ ] Scale is one of the four supported models, with an RS-232 serial output
- [ ] Checked local weights-and-measures requirements for selling by weight
- [ ] Serial cable on hand (plus USB-to-serial adapter and its driver, if needed)
- [ ] Scale's own menu set to the right baud, data bits, parity — and output mode
- [ ] COM port noted from Device Manager → Ports (COM & LPT)
- [ ] Printer Bridge running on that same computer, identified by Host/OS in Admin → Printers
- [ ] Scale added on Admin → Registers → Scales
- [ ] Test returns a weight, and the weight changes when you put something on the scale
- [ ] Items priced per pound, No Fractions? off, Weighed Item? on where wanted
- [ ] Test sale rung and voided
Weighed items
Marking an item as a weighed item is what turns the two-step workflow into one step: the cashier puts it on the scale, rings it up, and the weight comes with it.
To mark an item:
- Open the item in Inventory.
- On the Item tab, turn on Weighed Item?.
- Click Update.
The Weighed Item? switch only appears once you have at least one scale set up on Admin → Registers → Scales, because it does nothing without one. Set the scale up first and the switch will be there.
To mark many items at once, use Inventory → Import/Export. The column is Weighed Item?, in the Flags group — 1 for yes, 0 for no.
Rules that apply to weighed items
- Price the item per pound. The weight becomes the quantity, so the unit price must be the price of one pound.
- Leave "No Fractions?" off, or a weight like 2.4 lb cannot ring correctly.
- A typed quantity overrides the scale. If the cashier keys a quantity before ringing the item, VMX uses that number and doesn't read the scale — the manual override for a broken scale or a correction.
- Units of measure are ignored. If the item has a default selling unit such as a case or a bag, VMX does not multiply the scale reading by that unit's size, because the weight is already the amount being sold. Without this, a 2.5 lb reading on an item whose default unit is a 10 lb case would ring as 25.
- A failed read never blocks the sale. If the scale can't be read, the register shows SCALE READ FAILED - ENTER QTY and the cashier keys the quantity by hand and carries on.
- A zero reading is refused. The register shows SCALE READ 0 LB rather than ringing a free item.
Assign Read Scale Weight to a key
Read Scale Weight appears in the right-hand column of the register screen on any register that has a scale. You can also put it on a keyboard key.
Go to Admin → Registers, edit the register, and use Register Key Mapping. The action is listed as Read Scale Weight; it appears in that list as soon as you have at least one scale configured.
Weighing and labelling ahead of time
This is the other way to sell by weight, and it uses none of the setup above — no scale at the lane, nothing on the Scales tab.
A standalone label-printing scale at a back counter weighs the item and prints a barcode sticker. The barcode is tied to a unit of measure on the item in VMX, so scanning the sticker at the register brings the quantity with it.
It suits anything packed ahead of time and put on a shelf: pre-bagged seed, wrapped cheese, boxed candy, bakery items that need an ingredient list or a sell-by date.
To set it up, add the barcode to the item and attach it to the right unit of measure — see Barcodes and Unit of Measure.
If an item is marked Weighed Item? and is scanned by one of these weight-bearing barcodes, the barcode wins: VMX uses the weight in the sticker and does not read the lane scale.
Troubleshooting
Start with Test on Admin → Registers → Scales. Whether it shows a raw response tells you which half of the problem you have, and sends you to the right section below.
"No scale defined for register."
That register has no enabled scale.
- Go to Admin → Registers → Scales and check there's a row whose Register is the right one, with Enabled turned on.
- Confirm the cashier is on the register you think they are — the register number is set per-computer on the Register Configuration page.
Test fails and shows no raw response
Nothing came back from the scale at all. Work through these in order:
- Is the Printer Bridge running on that computer? Check Admin → Printers. This is the most common cause by far.
- Is the right Printer Bridge selected? It must be the one on the same computer the scale is plugged into — check the Host/OS column.
- Is the COM port right? Check Device Manager → Ports (COM & LPT) on that computer, especially if a USB-to-serial adapter has been unplugged and moved since setup — the port number can change.
- Is the scale powered on, and the cable seated at both ends?
- Is the scale's output mode right? See Step 2. A scale set to send only when its own print button is pressed will never answer VMX.
Test shows a raw response but still fails
The scale answered — VMX just couldn't read the answer. That means the settings don't match the scale:
- Check Scale Type first. This is the usual culprit. Each brand sends a different format, so the wrong type can't read a perfectly healthy scale.
- Check Parity and Data Bits against the table in Step 1, and confirm the scale's own menu is set to the same values.
"Scale reported no weight (in motion, or nothing on the scale)."
The scale answered but had no weight to give. Put something on it and test again.
If it happens with something on the scale, the reading isn't settling: check whether the scale is somewhere it gets knocked or shaken — a busy counter, a fan, a doorway — or have whoever services it check the calibration.
"Scale reading is unstable."
The scale was still settling when it was read. Let the item come to rest and try again. If it happens constantly, the same causes as above apply.
The weight rings up as the wrong quantity
- Quantity is a multiple of the weight (2.5 lb ringing as 25) — the item's default unit of measure is being applied. Confirm Weighed Item? is on for that item; check the units on the item's Parent/Child tab.
- Quantity is rounded to a whole number — turn No Fractions? off on the item.
- Price is wrong but the quantity is right — the item isn't priced per pound. Check the unit price.
The scale reads a weight but the item doesn't ring
Check that the item's Allow Selling? is on, and that it has a unit price. A weighed item with no unit price rings at zero.
The scale worked yesterday and doesn't today
In order of likelihood:
- The Printer Bridge on that computer isn't running — check Admin → Printers.
- The USB-to-serial adapter was moved to a different socket and Windows gave it a new COM port — check Device Manager.
- The scale or the computer was swapped and the cable went to a different machine than the one named on the scale's row.