Barcode scanner control (experimental) in PowerApps

An experimental control with which the user can take photos by using the barcode scanner on the device.


If you add this control, the user can update a data source with one or more photos from wherever the app is running.

Key properties

barcode scanner – On a device that has more than one barcode scanner, the numeric ID of the barcode scanner that the app uses.

Additional properties

AccessibleLabel – Label for screen readers.

BorderColor – The color of a control's border.

BorderStyle – Whether a control's border is Solid, Dashed, Dotted, or None.

BorderThickness – The thickness of a control's border.

Brightness – How much light the user is likely to perceive in an image.

Contrast – How easily the user can distinguish between similar colors in an image.

DisplayMode – Whether the control allows user input (Edit), only displays data (View), or is disabled (Disabled).

Height – The distance between a control's top and bottom edges.

OnSelect – How the app responds when the user clicks or taps a control.

OnStream – How the app responds when the Stream property is updated.

Photo – The image captured when the user takes a picture.

ShowLiveBarcodeDetection – Whether visual cues are shown to indicate the status of barcode detection. Yellow rectangles represent areas that are being examined. A green line across a rectangle indicates successful barcode identification.

Stream – Automatically updated image based on the StreamRate property.

StreamRate – How often to update the image on the Stream property, in milliseconds. This value can range from 100 (1/10th of a second) to 3,600,000 (1 hour).

Text – Value of barcode that was last identified by the scanner.

Tooltip – Explanatory text that appears when the user hovers over a control.

Visible – Whether a control appears or is hidden.

Width – The distance between a control's left and right edges.

X – The distance between the left edge of a control and the left edge of its parent container (screen if no parent container).

Y – The distance between the top edge of a control and the top edge of the parent container (screen if no parent container).

Zoom – The percentage by which an image from a barcode scanner is magnified or the view of a file in a PDF viewer.

Patch( DataSource, BaseRecord, ChangeRecord )


  1. Add a barcode scanner control, name it Mybarcode scanner

    Don't know how to add, name, and configure a control?

  2. Add a Label control and set its output to the Barcode's Text.
  3. Scan a barcode of the type set under BarcodeType property.
  4. The label is going to display the scanned barcode.

Accessibility guidelines

Video alternatives

  • Consider adding a Label with its Text set to the barcode scanner's Text. Since the barcode scanner does not display the identified barcode value, doing the above makes the scanner accessible to everyone, not just those with visual disabilities.

Screen reader support

  • AccessibleLabel must be present.


    Screen readers will annnouce when a new barcode has been found. The value will not be announced. As long as the barcode is in view, screen readers will remind every 5 seconds that the same barcode is still being identified.