Ein Barcode-Scanner ist ein Datenerfassungsgerät, das verschiedene Barcodes lesen und weitergeben kann. Die Erkennung dieser Strichcodes erfolgt dabei mit Rot- oder Infrarotlicht. Jeder Barcodescanner besteht aus der eigentlichen Leseeinheit und der Dekodiereinheit. Während dies bei den Lesestiften meistens zwei Geräte sind, ist bei fast allen anderen Gerätetypen die Dekodiereinheit in der Leseeinheit integriert. Beim CCD-Scanner wird ein sehr flacher Zeilenausschnitt des Barcode in seiner kompletten Breite auf einmal erfasst. Hierzu wird der Barcode durch Leuchtdioden angeleuchtet. Der Barcode reflektiert je nach Helligkeit oder Dunkelheit auf eine CCD- oder Fotodiodenzeile. Ein Dekoder entziffert hieraus die Striche und Lücken des Barcodes und somit die darin enthaltene Information. Der Abstand vom Barcode darf je nach LED-Stärke, Optik (Tiefenschärfe), Größe des Barcodes und dem Umgebungslicht wenige Zentimeter bis zu ca. einem halben Meter betragen.Bei Laserscannern werden ein oder mehrere Laserstrahlen auf den Barcode gerichtet und über einen Schwingspiegel oder über ein Spiegelrad linienförmig über den Barcode geführt. Versetzte Spiegel können auf diese Art auch Rasterlinien erzeugen. Dies ist notwendig, wenn die zu lesenden Barcodes nicht immer dieselbe Lage haben (omnidirektional). Wichtig ist dabei, dass der Laserstrahl jeweils über das Start- und Stoppzeichen des Barcodes reicht. Bei den heutigen Scannern ist es nicht mehr notwendig, dass der Scanstrahl in einem Durchgang den Barcode überstreicht. Die Informationen des reflektierten Strahls können im Dekoder auch zusammengesetzt werden und so den kompletten Inhalt des Codes erfassen. Die neuste Generation von Barcodelesegeräten sind die 2D-Barcodescanner, die mit Hilfe einer kleinen Kamera ein Bild vom Barcode aufnehmen. Danach wird das aufgenommene Bild durch digitale Bildverarbeitung aufbereitet und der Barcode digital erfasst. 2D-Bild-Scanner und CCD-Scanner verwenden die gleiche Technik, bis auf den Unterschied, dass in einem 2D-Barcodescanner nicht nur eine, sondern mehrere Zeilen gleichzeitig erfasst werden. Somit ist es möglich, die Information auf einer zweidimensionalen Fläche anzuordnen und in einem Schritt zu erfassen. Mit Hilfe der digitalen Bildverarbeitung ist es möglich, auch Kamera-Handys als Barcodelesegeräte einzusetzen.