Cairos
Invoicing
Invoicing softwareQuotesRecurring invoicesExpenses and suppliersReceipts and cash flow
Accounting and tax
AccountingAEAT tax formsRecord booksFixed assetsIGIC and the Canary Islands
Operations
Inventory and warehousesCRMTime trackingProjectsGrants and funding
Compliance
VeriFactuTicketBAIElectronic invoicingAll the regulationsSecurity and data
By type of business
Self-employedSmall businessesAccountants and tax advisersForeigners in SpainStartupsRetail and shops
By sector
Hospitality and restaurantsConstruction and renovationProfessional servicesE-commerceAll sectors
By legal structure
AssociationsFoundationsCooperativesSports clubsAll legal structures
Switching software
ComparisonsAn alternative to HoldedMigrating your data
Free tools
Invoice templateVAT calculatorIRPF calculatorAll the tools
Learn
GuidesGlossaryTax calendarBlog
Developers
API and documentationGet started in five minutesResource referenceWebhooks
Help
Help centreContact
Pricing
Start for free Log in
Barcodes

A badly worked-out barcode is a thousand labels in the bin

Cairos checks the check digit before saving anything, generates internal codes for whatever does not carry the manufacturer's, prints the label sheet in three paper sizes and reads the code from the search box, from the invoice line and from the phone's camera.

On the Jade planEAN-13, EAN-8 and UPC-ALabels in three sizes
erp.cairos.es
General
Dashboard
Invoices
Quotes
Contacts
Expenses
Products
Accounting
612
References
548
With a barcode
64
With an internal code
0
With the wrong digit
REF-11808412345678905 · EAN-13The manufacturer'sCorrect
REF-11812000000001234 · EAN-13Internal (prefix 20)Correct
REF-118204012345 · EAN-8The manufacturer'sCorrect
REF-1183With no codeGenerate
What it does

Six things that stop the scanner failing at the till

A barcode is not a piece of text: it is a number with rules. Almost every problem with a till that will not read comes from having treated it as if it were a name.

The check digit, verified

EAN-13, EAN-8 and UPC-A are really validated, not just by their length. A code with the wrong check digit is a code no shop scanner is going to accept, and without this check you find out after printing a thousand labels and putting them through the till.

Internal codes for whatever does not come with one

Loose goods, what you prepare yourself, what arrives unlabelled. Cairos generates a valid EAN-13 with the prefixes GS1 leaves free for a shop's internal use, 20 to 29, so it cannot clash with any manufacturer's real code.

The label sheet, on real paper

Three sizes measured in millimetres — 38 × 21, 51 × 25 and 70 × 37 — which are the sheets sold in any stationer's. They are in millimetres and not in pixels because a label is measured with a ruler and has to fit in the gap on the shelf.

They are drawn as vectors, not as an image

The bars are drawn as strokes and not as an enlarged photo. It is the difference between coming out crisp on paper and coming out blurred, which is when the till's scanner stops reading them and everybody blames the scanner.

Scanning with the phone

In the mobile app, the camera reads the code and finds the item, in the middle of a stock count too. With no terminals to buy: the phone the person counting is already carrying.

And with an ordinary scanner

A USB scanner behaves like a keyboard: it types the code and presses Enter. It works in the search box and in the lines of an invoice with nothing to install, because what arrives is cleaned up before the search.

Screenshot of the ERP: Six things that stop the scanner failing at the till

producto-inventario-codigos-de-barras.png · 1400×900 px

The real screen from the program, not a mock-up.
Details that avoid a discrepancy

What happens between the scanner and the database

This is where the hours go, and always for the same reason: the same item saved in two different ways.

  • On saving, all that is kept of the code is what it is: digits. The spaces, the separating hyphens and the scanner's Enter fall away along the way.
  • That is why the same product does not end up saved twice — once with hyphens from a spreadsheet and once without them from the scanner — and scanning always finds it.
  • Two variants of a product cannot share a code: a repeated code at the till brings up two different items.
  • Batch labels use Code128, which takes letters, because a batch is called L2026-04A and that does not fit in an EAN.
  • The preview has a cap on labels: asking for nine hundred of every item in a large catalogue only leaves the browser drawing what nobody is going to look at.
  • The code travels to the importer too, so if you come from another program it arrives with the items.
erp.cairos.es
General
Dashboard
Invoices
Quotes
Contacts
Expenses
Products
Accounting
51 × 25 mm
Label size
40
Labels per sheet
EAN-13
Format
Done
To print
REF-1180Extra virgin olive oil 5 l841234567890512 labels
REF-1181Strong flour 25 kg84123456789128 labels
L2026-04ABatch · expires 12 September 2026Code12820 labels

Which code belongs to each item

The usual doubt when starting out is whether you have to buy codes. The answer depends on one thing alone: whether your product is going to go through somebody else's till.

If you resell it, the code already exists. It comes printed by the manufacturer and it is the one to type or scan on the record. You do not invent one of your own for a product that already has one: at your customer's till they will read the manufacturer's.

If you prepare the product yourself and it is only sold in your shop — loose goods, your own packaging, the kit you put together — an internal code is more than enough. Cairos generates one with prefixes 20 to 29, which GS1 reserves for exactly this and which no manufacturer can use.

If the product is yours and it is going to be sold in somebody else's shop, then you do need a company prefix, and that is taken out with GS1: it is an annual fee and no program replaces it. We say so because it is worth knowing before you print anything.

Scanning in practice: where each thing is used

There are two ways of reading a code and they do not compete, they share the work.

The USB scanner is what you fix to a counter or a reception desk. There is nothing to configure because the operating system sees it as a keyboard: you point, it beeps, and the code appears typed into the search box or into the line you were filling in. It is faster than any camera and it does not run out of battery.

The phone's camera is what you carry with you when you have to move about: the count along the shelves, taking delivery at the loading bay, checking an order. It is used from the mobile app, with nothing to install from an app store, and it works well exactly where the fixed scanner does not reach.

In a stock count the difference is very noticeable: counting by scanning removes the step of looking the item up in a list, which is where the mistake of writing the quantity on the next row slips in.

What this module does not do yet

  • Buying the company prefix for you. That is taken out with GS1 and it is an annual fee of theirs.
  • Product QR codes or DataMatrix. What is drawn is EAN-13, EAN-8, UPC-A and Code128 for batches.
  • Printing straight to a thermal label printer in its own language. What comes out is a sheet to print on ordinary label paper.
  • Taking payment at the counter. Scanning and invoicing, yes; the point of sale as such is one of the modules that are not open yet.

Print your first sheet of labels

Free plan up to 30 documents a year, no card needed.

Frequently asked questions

On the Jade plan, with the warehouses, the batches, the transfers and the stock counts. It can also be taken on its own: the prices are on pricing.
EAN-13, EAN-8 and UPC-A for items, with their check digit verified, and Code128 for batch labels, because a batch code carries letters and an EAN only takes digits.
Yes. Cairos generates a valid EAN-13 using prefixes 20 to 29, which GS1 leaves free for a shop's internal use. It works for anything sold inside your own business; if the product is going to go through another shop's till, then you need a company prefix taken out with GS1.
No. Any USB scanner of the kind sold for twenty euros works, because the computer sees it as a keyboard. And if you would rather not buy anything, the phone's camera reads the code from the app.
They are printed on sheets of self-adhesive labels in three sizes — 38 × 21, 51 × 25 and 70 × 37 millimetres — which are the ones sold in any stationer's. The bars are drawn as vectors so that they come out crisp and the scanner does not fail.
Yes, and it is where it shows most: counting by scanning removes the step of looking the item up in the list, which is exactly where the quantity gets written on the wrong row.

So that the scanner is not the excuse

With the digit checked, the code clean and the label printed as vectors, the till reads it first time.

No minimum term · VeriFactu included · Native support in Spanish, Catalan, Galician, Basque and English

Support