Description
Zigbee 3.0 device secure provisioning via QR code scanning for ZHA integration in Home Assistant's frontend is needed to make the ZHA integration in Home Assistant have feature-parity with the Z-Wave JS integration.
The problem is that QR code secure provisioning via the companion apps is not yet supported for the ZHA integration for the Zigbee 3.0 devices that require it, however a matching QR code secure device commisioning feature is now available for the Z-Wave integration.
ZHA integration component in Home Assistant core already have support this on the backend side, so it is possible to manually enter the QR-code / install code via the UI but that has to be done via Actions (service calls), which is not user-friendly.
Please add support for QR code scanning via camera for the ZHA integration to the Home Assistant Companion app for Android to enable Zigbee 3.0 device secure provisioning (to match the as QR code scan support via cameera that was added for Z-Wave Smart Start in Home Assistant 2025.5 release).
As I understand, zha integration component in Home Assistant core already should have all the needed backend code for this, so what is missing is the frontend parts, or?
For reference and more detailed information about Zigbee device QR code provisioning please see this related frontend feature request discussions:
and
Initially brought up here related discussion:
Also indirectly related to issue that ZHA integration end-user documentation for how to do this manually is not easy to understand:
So the backlog request for Home Assistant's frontend UI to enable QR code scanning Zigbee devices that requires install code that can be added via QR code for commisioning via ZHA integration UI.
Again, this is currently something have to be done manually via Actions (service calls), which is something that is not a user-friendly procedure today.
Action zha.permit
To add new devices to the network, call the permit
action on the zha
domain. Do this by clicking the Actions tab in Developer tools and typing zha.permit
in the Action dropdown box. Next, follow the device instructions for adding, scanning or factory reset.
This action opens network for joining new devices.
Data | Optional | Description |
---|---|---|
duration |
yes | For how long to allow new devices to join, default 60s |
ieee |
yes | The IEEE address of an existing device via which the new device is to be added |
To join a new device using an install code (ZB3 devices) use the following data attributes (must use parameters only
from the same group:
Data | Parameter Group | Description |
---|---|---|
src_ieee |
install_code | The IEEE address of the joining ZB3 device. Use with install_code |
install_code |
install_code | Install Code of the joining device. Use with src_ieee |
qr_code |
qr_code | QR code containing IEEE and Install Code of the joining ZB3 device |
Note
Currently qr_code
supports QR Install Codes from:
- Aqara
- Bosch
- Consciot
- Embrighten
Describe alternatives you've considered, if any
Alternative is to type in the QR code / install code manually,
Additional context
Comparable feature with Z-Wave Smart Start
FYI, the latest Home Assistant 2025.5 release improved frontend support for QR code scanning for Z-Wave Smart Start:
You can see Paulus's demo the function in the release video starting at around the 16:10 timestamp:
"This release, we improved the whole experience in setting up new Z-Wave devices, including improved support for setting up new Z-Wave devices by scanning the Smart Start QR code."
Z-Wave Smart Start QR scanning now works natively in our mobile companion apps, removing browser limitations. Added devices are immediately visible in Home Assistant, even if the device is not yet powered on. Once powered on or rebooted, the device will automatically be added to your Z-Wave network."