Version: 1.0.2  

Last updated: 2026-09-09

## Legend

| Product Verb | Development Action |
|---|---|
| "MUST" | Mandatory product requirement |
| "SHOULD" | Optional recommendation |
| "MAY" | Nice to have |

## Overview

This specification document outlines the scope and specifications for
multi-function printers with scanning functions and single-function scanner
devices to be ChromeOS compatible. The term "scanner" in this document refers to
either type of device.

## Scanning

The device must be compliant with Mopria's eSCL
[specification](https://mopria.org/mopria-escl-specification) and scanning must
be enabled by default. In addition to the requirements from the eSCL
specification, ChromeOS has some specific expectations that are detailed below.

### Network

The scanner device must support the following network protocols:

- Discovery through mDNS and DNS-SD as described in section 3 of the Mopria eSCL specification.
- HTTPS
  - The device must advertise this by registering a `_uscans` name.
  - TLS 1.2 or 1.3 for HTTPS connections.

The device must also implement the following behaviors with regard to network
connectivity:

- The device must not redirect clients back to HTTP when a request is made over HTTPS.
- If the device uses a self-signed certificate for TLS, it should maintain the same certificate until the certificate expires or the user replaces it.

### USB

The scanner must implement the following protocols and behaviors when using a
USB connection:

- The device must support IPP-over-USB.
- The device must respond to eSCL requests over the IPP-over-USB tunnel by default.
- The device must respond to eSCL requests rooted at `/eSCL` through the IPP-over-USB tunnel regardless of the value of its `rs` field published to DNS-SD.
- The device must accept `localhost` as a valid value for the `Host` field for requests coming through USB.

## Document sources

The scanner must support at least one of the following document sources:

- Platen
- Auto Document Feeder (ADF) (one-sided or duplex)

Other input sources may not work on ChromeOS.

- If the scanner has a duplex ADF, it must return all pages with the correct orientation as specified in the Mopria eSCL specification section 8.1.3.2.

## Resolutions

The scanner must support at least one resolution within the range of 75--600 dpi.

- Resolutions outside this range may be supported in future ChromeOS versions.

## Color Modes

The scanner must support at least one of the following color modes:

- 1-bit black and white (B\&W)
- 8-bit grayscale
- 24-bit RGB (8 bits per pixel)

ChromeOS currently does not support 16-bit grayscale, 36-bit color (12bpp) or
48-bit color (16bpp). Support may be added in future ChromeOS versions.

## Stored Jobs

ChromeOS does not currently support stored jobs / PIN scanning. If the device
advertises this feature, it should clearly indicate "unsupported on ChromeOS".

## Authentication

ChromeOS does not currently support authentication for scanning. If the device
advertises this feature, it should clearly indicate "unsupported on ChromeOS".

## Device-initiated Scanning

Most MFP devices with scanner functionality can initiate or control scanning
from the device front panel. These features largely cannot be directly supported
by ChromeOS. Scanners that offer front-panel or device-configured scanning
features should indicate that they are not usable on ChromeOS unless they can be
used without software running on the host computer. Several specific examples
follow.

### Scan to Computer

A scan is started from the device front panel, and the results are delivered
directly to a computer (sometimes after allowing configuration on the computer
before scanning). This is currently not supported on ChromeOS at all. If the
scan to computer feature is advertised on product packaging, it must clearly
indicate "unsupported on ChromeOS".

> [!NOTE]
> **Note:** As of 2023, There is currently no standard for passing device-initiated scans to a computer. If such a standard is identified or developed in the future, a future revision of this document may require this feature to support said standard.

### Scan to Email

A scan is started on the device and sent via email. This is acceptable as long
as the device can send email itself. SMTP and account information can be entered
at the time of the scan or pre-configured with one of the acceptable
configuration methods described in [MFP spec: Connection Types](https://developers.google.com/chromeos/peripherals/cc-printer-mfp-v1#connection_types).

If the device requires software that is not available on ChromeOS running on the
computer to send the email on its behalf, it should clearly indicate
"unsupported on ChromeOS".

### Scan to Network Share, Google Drive, iCloud, SharePoint, etc.

A scan is started on the device and the results are saved directly to a network
service of some kind. This is acceptable as long as the device can connect to
the relevant service and save files itself. Account credentials can be supplied
at the time of the scan or pre-configured using one of the acceptable
configuration methods described in [MFP spec: Connection Types](https://developers.google.com/chromeos/peripherals/cc-printer-mfp-v1#connection_types).

If the device requires software that is not available on ChromeOS running on the
computer to save the file on its behalf, it should clearly indicate "unsupported
on ChromeOS".

### Scan to USB or memory card

A scan is started on the device and the results are saved directly to a
connected memory card or USB drive. This is acceptable as long as no additional
software is required to complete the scan.

If the device requires software that is not available on ChromeOS running on the
computer to save the file on its behalf, it should clearly indicate "unsupported
on ChromeOS".

### Photocopy

Photocopying is typically done through the device front panel. As long as the
device handles copies itself, the feature and particular capabilities provided
will not prevent certification.

If the device requires software that is not available on ChromeOS running on the
computer to perform copying on its behalf, it should clearly indicate
"unsupported on ChromeOS".

> [!NOTE]
> **Note:** ChromeOS may simulate copying by allowing the user to send a scanned document directly back to the printer. This is separate from any copying capability built into the device.

### Scan to other destinations

Other destinations not described above will be handled on a case-by-case basis,
but the same principle broadly applies: If the device can complete the operation
itself (possibly after initial configuration), then the features do not need to
block certification. If the device requires additional software that is not
available on ChromeOS to complete scans to a specific destination, it cannot be
certified.

If the device requires software that is not available on ChromeOS running on the
computer to support the destination on its behalf, it should clearly indicate
"unsupported on ChromeOS".

<br />

## Revision history

| Date | Version | Notes |
|---|---|---|
| 2026-09-09 | 1.0.2 | Formatting update (no change to contents) |
| 2024-02-02 | 1.0.1 | Fix links to other specs |
| 2024-02-01 | 1.0 | Initial Partner Site Publication |

<br />