A QR-code is a two dimensional barcode. A barcode is the name for a sequence of lines or squares which can be read by a scanner (an electronic reader). The main requirement for the creation of QR-code was that it can be read fast. The QR letters are an abbreviation for Quick Response.
Originally the code was used to identify car parts. Now the code is used to identify all kind of products and to relay different types of information. The QR-code is used for business cards, tickets, boarding passes, magazine articles, forms, invoices, product wrappings and posters.
Many smart devices like smart phones and tablets have cameras build in and have internet access. For these devices QR code scanner applications are readily available. These scanners are in real-time able to read QR-codes from the build in camera or scan it from a created photo.
These applications can do more than just read a QR-code: the applications are capable to analyze the content of the code and are able to use the content within the device. In this fashion the codes can supply web-site locations (URL), email addresses, contact information (vCards), appointments, gps locations, sms messages, phone numbers and texts to the device. With one push of a button the content can be transfered to a web-browser, calendar, navigation application or the creator of the code can be called. This can be done fast and without errors.
QR-codes are used more and more in paper-less environments. An (airline) company sends, after a ticket sales, a QR-code to a customer phone (or other smart device). The customer enters a counter (point of control) and shows the QR-code directly on the phone screen. Next the code is scanned by a (industry) scanner and checked.
The QR-code is made robust by means of an error correction technique. This makes it possible to correctly read the code even when it is damaged.
The code definition allows a number of error correction types (shown from weakest to the strongest): L, M, Q en H. A stronger error correction type is more robust but also results in a larger QR-code.
The code can be in different modes. The modes are used generate an efficient and compact code. The modes are: numeric, alphanumeric, kanji and binary. The binary mode has different sub modi to encode different languages and symbols efficiently. The selection of the mode and sub-modus depend on the type of information.