Standards · Matter device commissioning

Matter device commissioning QR codes

When you scan the QR on the back of a smart light bulb, smart plug, contact sensor, or door lock that carries the Matter logo, your phone runs through a five-step handshake that adds the device to your home. The QR carries everything your hub needs to find that specific device — vendor, model, a per-device discriminator, and a one-time pairing passcode — plus a list of how the device can be reached on the air (BLE, Wi-Fi, Thread). Here's what's encoded, what it leaks, and why the QR matters in a way Wi-Fi QRs don't.

Inspect a Matter QR → All standards →

What's the standard

Matter is published by the Connectivity Standards Alliance (CSA), formerly the Zigbee Alliance, with founding backing from Apple, Google, Amazon, Samsung, Comcast, and a long list of device makers. Matter 1.0 shipped in October 2022; Matter 1.4 is current as of early 2026, with cameras, energy management, EV chargers, and water-management devices added since 1.0. The specification covers application-layer protocol, security, commissioning, and the QR onboarding format.

The pairing-QR format is part of the Matter Core Specification, "Onboarding Payload" section. There are three forms of the same payload:

All three encode the same fields with the same trust model — they're interchangeable from a commissioning perspective.

What's actually inside the QR

The Base38 payload after the MT: prefix decodes to a packed binary structure. The mandatory fields:

Version (3 bits)

Always 0 for current devices. Reserved for future protocol revisions.

Vendor ID (16 bits)

CSA-assigned identifier for the manufacturer. Every member organization gets a unique vendor ID; 0xFFF10xFFF4 are reserved for test / development. Our scanner resolves the vendor ID against the CSA registry where known.

Product ID (16 bits)

Manufacturer-assigned identifier for the specific model. Combined with the vendor ID, it uniquely identifies a SKU (e.g. "Eve Energy 2nd gen").

Custom flow (2 bits)

0 = standard commissioning (just pair it), 1 = user-action required (e.g. press a button on the device first), 2 = custom flow (manufacturer-specific setup steps). Determines what UI your hub app shows.

Discovery capabilities (8 bits)

A bitmask of how the device can be discovered in its uncommissioned state: BLE (most common), on-network IP (already on your Wi-Fi or Ethernet — rare for consumer kit), Soft-AP (device hosts a temporary Wi-Fi network), Wi-Fi PAF (Public Action Frame discovery, newer).

Discriminator (12 bits)

A short identifier the device advertises during discovery so your hub can pick the right uncommissioned device when several are in BLE range. Not secret — it's the "this is the one I just unboxed" signal.

Passcode (27 bits)

The shared secret used in the PASE handshake. The phone proves to the device that it has this passcode without sending it over the air in plaintext. Once commissioning completes, the passcode is no longer useful. Range: 1 to 99,999,998 (some values forbidden by spec to avoid trivially-guessable codes like 11111111).

TLV extension (optional, variable)

Optional fields can extend the payload with the device serial number, rendezvous info, and other manufacturer-specified attributes. Most consumer devices skip this.

The commissioning handshake (why the passcode design matters)

Matter's commissioning flow is PASE → CASE:

  1. Discovery. Your phone broadcasts BLE scans (or listens on local Wi-Fi); the uncommissioned device is advertising with its discriminator. Your phone matches the discriminator from the QR.
  2. PASE — Password-Authenticated Session Establishment. Phone and device run a SPAKE2+ handshake using the 27-bit passcode. After SPAKE2+ completes, both sides have a shared session key, and the passcode itself never crossed the air.
  3. Attestation. The device presents a Device Attestation Certificate (DAC) signed by a CSA-recognized root. Your hub verifies the device is a genuine certified Matter device with the claimed vendor/product ID.
  4. Network credentials. Your hub passes the device the operational network credentials (Wi-Fi password OR Thread network credentials) needed to actually communicate.
  5. CASE — Certificate-Authenticated Session Establishment. Your fabric issues the device an operational certificate. From here on, every controller in the fabric authenticates to the device via CASE; the QR passcode is dead.

The key property: the QR passcode is short-lived authentication, not long-term identity. Once a device is commissioned, throw the QR sticker in a drawer (or peel and shred). Re-commissioning requires either physical access to factory-reset the device, OR cooperation from the existing fabric to issue an updated commissioning window.

Threat model: photographing an unpaired device's QR

Unique to Matter — the QR is operationally meaningful BEFORE commissioning. Compare to other categories:

Real-world scenarios where this matters:

Defense: commission the device as soon as you unbox it (closes the window), then peel and shred the sticker. For devices already deployed in shared / public spaces, ensure the device is commissioned to a fabric, which prevents fresh pairing without a factory reset.

What our scanner shows you

Drop a Matter QR (image, paste, or camera) into our scanner. The verdict shows:

We do NOT phone home to your hub or attempt commissioning. The decode is local; only the metadata reaches our server for the safety classification.

Before you commission an unfamiliar Matter device

Related

Inspect a Matter onboarding QR

Drop the QR (image, paste, or camera). Verdict shows vendor, product, discriminator, capabilities, and a masked passcode. We don't talk to your hub or attempt to commission — the decode is local and the metadata is the only thing that reaches the safety classifier.

Open scanner →