Scale label barcodes: how PLU codes work

Tomatoes, meat, rice — goods sold by weight. A label-printing scale writes the weight into the barcode itself, and the BuySale till reads that code and drops the item into the basket with its weight. The seller types nothing. This guide covers how the code is built, setting up the scale and what happens at the till.

Try 7 days freeNo payment card needed

The short answer

A scale label barcode is a 13-digit EAN-13: a 22 (weight) or 21 (price) prefix, a five-digit item number (the PLU), a five-digit value and a check digit. BuySale reads it only in shops of the “Grocery” type. You give the item a scale number in the app and enter the same number into the scale — a one-time setup, after which every label is recognised at the till and lands in the basket with its weight.

What the code contains

Example: tomatoes have scale number 00012, cost 18 000 UZS a kilo, and the customer takes 1.25 kg. The two labels below record the same purchase in two formats — the till reads the pictured codes exactly like this.

Sample scale label: weight-format EAN-13, number 2200012012505
2200012012505

Weight label — 22

The code carries the weight in grams: 01250 = 1.25 kg. The till takes the price from the app: 1.25 × 18 000 = 22 500 UZS.

Sample scale label: price-format EAN-13, number 2100012225007
2100012225007

Price label — 21

The code carries the amount in so‘m: 22500. The till works the weight out from it: 22 500 ÷ 18 000 = 1.25 kg — so the price in the scale must match the price in the app.

PartDigitsMeaning
Prefix22Weight label (21 means a price label)
Item number (PLU)00012The five-digit scale number from the app — the scale uses the same one
Value01250Weight in grams: 1 250 g = 1.25 kg (with 21, the amount in UZS)
Check digit5Worked out from the other 12 digits; if it does not match, the code is not read as a scale label

The value has five digits: a weight of at most 99 999 g (about 100 kg), or an amount of at most 99 999 UZS.

22 or 21: which format to choose

Many scales can print either format. BuySale reads both, but the till works them out differently.

22 — weight (grams)Recommended
Where the price comes from
From the selling price in the app
What to watch

When a price changes you change it only in the app — no need to reprogram the scale. One label holds up to 99.999 kg.

21 — price (UZS)
Where the price comes from
From the scale’s price; the weight is worked back from the amount
What to watch

The scale’s price must match the app’s, or the weight at the till comes out wrong. Amounts above 99 999 UZS do not fit in the code.

Our advice: use format 22 where you can. The price lives in one place — the app — while an amount in UZS easily outgrows five digits: a label for a kilo or two of meat can top 99 999 UZS.

Setup: six steps

01

Shop type: grocery

The scale section opens only in the “Grocery” type. In other types a code starting 21 or 22 is looked up as an ordinary barcode.

02

Book the goods in by the kilo

Keep weighed goods in kilograms in the app — the till adds the weight to the basket in kg. Enter the price per kilo or per 100 g and the app does the rest.

03

Create the scale number

On the product card in stock, press the button to create a scale number. The app assigns the first free number from 00001 and draws a sample code for 1 kg.

04

Enter the number into the scale

Set the item up in the scale under the same number and choose the barcode format 22 (or 21) + five-digit item number + five-digit value + check digit. On some scales the PLU and the item code that goes into the barcode are separate fields — the app’s number must end up in the barcode. The scale’s manual has the exact steps.

05

Test it

Weigh something, print a label and scan it at the till: if the item lands in the basket with the right weight, you are set. If not, compare the label’s code with the app’s 1 kg sample code. Clear the test basket without selling.

06

When a price changes

With format 22 you change the price only in the app. With format 21, update the price in the scale at the same time.

What happens at the till and on returns

What BuySale does not do here

Questions about scale labels

What if my scale cannot print labels?

Weigh on an ordinary scale and type the weight into the basket — kilograms take decimals, 0.850 for example. A label-printing scale simply removes that step.

Can I choose the PLU number myself?

The app assigns it — the lowest free number from 00001. If your scale already holds items under other numbers, change the number in the scale to match the app. Each item has one scale number.

The code starts with 22 but the till cannot find the item — why?

There are three likely reasons: the shop type is not “Grocery”; the number inside the code does not match the app’s scale number (the scale holds a different number or a different code format); or the check digit does not match. Compare it with the app’s 1 kg sample code: the five digits after the prefix — the scale number — must match.

Do I need to reprogram the scale when a price changes?

With format 22 (weight), no — the price comes from the app. With format 21 (price), yes — update the scale’s price too, or the weight at the till comes out wrong.

Does it work in other shop types?

No — only in the “Grocery” type. In other shop types a code starting 21 or 22 is looked up as an ordinary barcode, so that a number on a jewellery tag, say, is never mistaken for a scale label.

What if my shop sells both by the piece and by weight?

No problem: only weighed items get a scale number; everything else sells as usual by its factory code or the shop’s own code — see the barcode guide.

Prepared by: the BuySale team · Checked: 04.10.2026 · Spotted a mistake? Tell us on Telegram

Related pages

BuySale

Let the scale do the typing

7 days free, no payment card needed. Then from 6 630 UZS a day, depending on the shop type.

Start for free