Please add a building block integration component to allow unified user code management for locks.
Paraphrasing based on the idea from this architecture discussion → Native lock code functionality · home-assistant/architecture · Discussion #1000 · GitHub which was started over a year ago by @raman325 who a little time after that also started coding and maintaining a “"Lock Code Manager” (a custom component that currently only works with the Z-Wave JS integration). See forum thread about that custom component here:
The built-in lock
platform (built-in integration building block) natively allows users to control the lock state of a lock (i.e. smart lock control), but it is currently not possible, at least natively, to manage user codes for the lock (i.e. users PIN-codes management). While not all locks have this functionality, many integrations/protocols does support this, including the built-in Z-Wave JS, ZHA (Zigbee Home Automation), and the Matter integrations, as well as some proprietary WiFi/BLE smart locks.
Today, those integrations are forced to more or less handle all lock code management on their own, (as an example, there are zwave_js specific services to manage user codes, but there isn’t a native UI that makes them easily manageable). As a result, there are custom integrations like GitHub - FutureTense/keymaster: Home Assistant integration for managing Z-Wave enabled locks which hack together a solution using a combination of the Home Assistant packages functionality, input helpers, and automations. In addition to generating a lot of artifacts which pollute a user’s instance, the UI that gets created is not optimized for the use case and is quite complex given what it’s trying to accomplish.
PS: Also check out the extended feature request about locks that was posted a few months ago here: